首页 > 系统相关 >Linux下搭建FTP

Linux下搭建FTP

时间:2023-05-12 14:12:32浏览次数:36  
标签:FTP chroot etc vsftpd conf Linux YES 搭建

  1. 安装vsftpd
yum install -y vsftpd
  1. 开机自启动
systemctl enable vsftpd.service
systemctl start vsftpd.service
netstat -antup | grep ftp
  1. 配置vsftpd

vsftpd(very secure FTP daemon)是一款在Linux发行版中最受推崇的FTP服务器。vsftpd支持匿名访问和本地用户模式两种访问方式。匿名访问方式任何用户都可以访问搭建的FTP服务;本地用户模式只支持添加的本地用户访问搭建的FTP服务。

说明: 匿名用户模式和本地用户模式只可同时配置一种。

  1. 运行以下命令为FTP服务创建一个Linux用户。用户名为ftptest。
adduser ftptest
  1. 运行以下命令修改ftptest用户的密码。运行命令后,根据命令行提示完成FTP用户的密码修改。
passwd ftptest
  1. 运行以下命令创建一个供FTP服务使用的文件目录。
mkdir /var/ftp/test
  1. 运行以下命令,创建测试文件。
    该测试文件用于FTP客户端访问FTP服务器时使用。
touch /var/ftp/test/testfile.txt
  1. 运行以下命令更改/var/ftp/test目录的拥有者为ftptest。
chown -R ftptest:ftptest /var/ftp/test
  1. 依次运行以下命令,修改vsftpd.conf配置文件,配置FTP为被动模式。

注意:您需要将echo "pasv_address=<FTP服务器公网IP地址>" >> /etc/vsftpd/vsftpd.conf命令中的<FTP服务器公网IP地址>替换为本实验ECS服务器的公网IP或弹性IP。

sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 
sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets 
sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets 
sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录 
sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单 
sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录 
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录 

echo "pasv_enable=YES" >> /etc/vsftpd/vsftpd.conf #开启被动模式 
echo "pasv_address=<FTP服务器公网IP地址>" >> /etc/vsftpd/vsftpd.conf #本教程中为ECS服务器弹性IP 
echo "pasv_min_port=20" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最小值 
echo "pasv_max_port=21" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最大值
  1. 创建chroot_list文件,并在文件中写入例外用户名单。

10.1 运行以下命令,创建chroot_list文件。

vim /etc/vsftpd/chroot_list

10.2 按i进入编辑模式。

10.3 输入例外用户名单。此名单中的用户不会被锁定在主目录,可以访问其他目录。本示例中,没有例外用户,可以不输入例外用户名单。

10.4按ECS退出编辑模式,然后输入:wq并回车以保存并关闭文件.

说明: 没有例外用户时,也必须创建chroot_list文件,内容可为空。

  1. 运行以下命令重启vsftpd服务。
systemctl restart vsftpd.service
  1. 配置安全组

  2. 客户端测试
    FTP客户端、Windows命令行工具或浏览器均可用来测试FTP服务器。(此步骤仅适用于本地用户,匿名模式无需进行测试操作)

说明:使用浏览器访问FTP服务器出错时,建议您清除浏览器缓存后再尝试。
image

解决方法:

打开本地电脑的控制面板,找到Internet选项-高级-去掉【使用被动FTP(用于防火墙和DSL调制解调器的兼容)】前面的对勾,点击右下角应用。在访问就好了。

image

image

标签:FTP,chroot,etc,vsftpd,conf,Linux,YES,搭建
From: https://www.cnblogs.com/xjzyy/p/17393944.html

相关文章

  • Windows Server 2016 MDT批量部署服务搭建
    一.介绍MDT是自动执行桌面和服务器部署的工具、流程和指南的统一集合。你可以使用它创建引用映像,或将其用作完整的部署解决方案。MDT现在是IT专业人员可用的最重要的工具之一。除了减少部署时间和标准化桌面和服务器映像以外,MDT还可以使你更轻松地管理安全配置和正在进行的......
  • NetCore项目部署到Linux之后,登录界面验证码不显示问题
    NetCore项目部署到Linux之后,登录界面验证码不显示问题1.在centos下安装libgdiplus-devel; 命令: yuminstalllibgdiplus-devel2.重启.netcore服务(supervisorctlrestart服务名称)我是用的supervisor做的守护进程或者supervisorctlreload......
  • Acunetix 15.6 (Linux, Windows) 发布 - Web 应用程序安全测试
    Acunetix15.6(Linux,Windows)-Web应用程序安全测试请访问原文链接:https://sysin.org/blog/acunetix-15/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgAcunetix漏洞扫描器,管理您的网络安全。使用Acunetix提高您的Web应用程序安全性Acunetix不仅仅是一......
  • CentOS7 中 semanage命令的安装(SELinux安全子系统)
    SELinux安全子系统SELinux(Security-EnhancedLinux)是美国国家安全局在Linux开源社区的帮助下开发的一个强制访问控制(MAC,MandatoryAccessControl)的安全子系统。RHEL7系统使用SELinux技术的目的是为了让各个服务进程都受到约束,使其仅获取到本应获取的资源。SELinux服务有三种配......
  • AMD Xilinx SoC: 定制PetaLinux中的FSBL
    需求客户为AMDXilinxSoC创建了PetaLinux工程。需要定制PetaLinux中的FSBL。PetaLinux默认从内部指定的源取代码。取出FSBL代码使用命令“petalinux-devtoolmodifyfsbl-firmware”,可以取出FSBL代码到目录“components/yocto/workspace/sources/fsbl-firmware/”。FSBL的主......
  • Linux驱动开发笔记(三):基于ubuntu的helloworld驱动源码编写、makefile编写以及驱动编译
    前言  前面学习了驱动的基础框架,上一篇编译了gcc7.3.0,那么为了方便很好的熟悉流程,本篇,将使用ubuntu18.04,直接编译ubuntu18.04的驱动,然后做好本篇文章的相关实战测试。 Ubuntu虚拟机准备步骤一:安装虚拟机  本次使用之前rk3568的ubuntu18.04,笔者没有重新弄了,安装......
  • Linux多进程工具(自编,适用于编程语言调用)
    linux的多进程工具parallel不好用编写了一个脚本,为了搭配编程语言,方便使用多进程。对手工使用不太友好参数参数名含义无参数名要并行运行的命令,用单/双引号包围,空格分隔-p在每个并行命令运行前执行的命令-h显示帮助信息并退出 用法见下方示例脚本#!/......
  • Linux环境配置
    无线网卡的驱动经常因为版本或内核问题,或是网卡太新导致系统里的旧版无线网卡驱动不兼容一、编译无线网卡驱动方案下载源码(确保有Git)sudoaptinstallgitgitclonehttps://gitee.com/tangyang/backport-iwlwifi.git#或直接从原始位置获取#gitclonehttps://git.kern......
  • Linux环境下查看以及杀死僵尸进程
    杀死僵尸进程,方法三比较好用,推荐使用1、查看所有的僵尸进程 ps-A-ostat,pid,ppid|grep-e'[zZ]'例:Z110101这列出了僵尸进程STAT列,进程ID、父进程ID2、杀死所有僵尸进程方法一:通过向父进程发送信号方式杀死,这种方法适用用父进程可以处理信号的情况kill-sSIGCHL......
  • linux 中 export命令
     export命令扩大了变量的作用范围。001、root@DESKTOP-IDT9S0E:/home/test#lsa.txtrecord.shroot@DESKTOP-IDT9S0E:/home/test#cata.txt##测试文件010203040506070809101112root@DESKTOP-IDT9S0E:/home/test#catrecord.sh##测试命令#!/b......