Linux下搭建FTP服务器(Ubuntu 18.04.1)
步骤:
1.安装vsftpd软件包
1 | sudo apt-get install vsftpd |
2.打开配置文件
1 | vim /etc/vsftpd.conf |
3.修改参数
一些参数可以去掉注释激活,为了方便,默认设置我全不管,然后添加下面的设置
1 | #这些设置系统默认是开启的,可以不管 |
重启vsftpd
1 | sudo /etc/init.d/vsftpd restart |
4.添加ftp用户
顺便将将用户目录设置为我们上面的ftp根目录
1 | sudo useradd -d /var/myftp xxxuser |
设置用户密码
1 | sudo passwd xxxpwd |
5.创建需要的文件,设置文件夹权限
上面我们指定了两个文件,userlist文件和list文件,系统不会自动创建,你要自己创建
1 | vim /etc/vsftpd.user_list |
然后添加ftpuser进去作为白名单的一员
1 | vim /etc/vsftpd.chroot_list |
设为空即可
创建用户文件夹,设置权限
1 | mkdir /var/myftp |
权限设置可以根据你的使用场景来设置,我这里在根目录下禁止此用户写,然后下面建两个文件夹,一个download只允许读取,upload允许写和读
1 | chmod 555 /var/myftp |
最后检查一下文件所有者,都改为xxxuser,命令chown xxxuser download/upload
6.使用ftp,解决各种问题
linux访问输入ftp 加 你的IP
1 | ftp xxx.xxx.xxx.xxx |
输入用户名xxxuser和密码
如果登录出现530错误:
1 | vim /etc/pam.d/vsftpd |
注释掉#auth required pam_shells.so
然后ls一下,如果失败了,切换到被动模式即可
1 | passive mode |
然后mkdir一下发现无法创建文件夹 550 create directory operation failed
输入以下指令即可
1 | setsebool -P ftpd_disable_trans on |