最近须要在一台阿里云的云服务器上搭建FTP服务器,在这篇博文中分享一下咱们根据实际需求进行的一些配置。html
ftp软件用的是vsftpd。安全
vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特色是小巧轻快,安全易用。服务器
vsftpd 的名字表明”very secure FTP daemon”,安全是它的开发者 Chris Evans 考虑的首要问题之一。在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标。app
准备工做tcp
安装vsftpdthis
yum install vsftpd
设置开机启动vsftpd ftp服务阿里云
chkconfig vsftpd on
打开vsftpd配置文件spa
vi /etc/vsftpd/vsftpd.conf
需求及配置设计
1. 不容许匿名访问code
anonymous_enable=NO
2. 使用本地账户进行FTP用户登陆验证
2.1 容许使用本地账户进行FTP用户登陆验证
local_enable=YES
2.2 建立用于FTP登陆的本地账户
增长用户ftpuser,主目录为/home/ftp,禁止登陆SSH权限。
useradd -d /home/ftp -g ftp -s /sbin/nologin ftpuser -p password
该命令参考自:CentOS 6.2 ftp 配置。
useradd命令参考文档:Linux的useradd
2.3 只容许刚建立的ftpuser登陆FTP
vi /etc/vsftpd/vsftpd.conf
userlist_enable=YES userlist_deny=NO
vi /etc/vsftpd/user_list
注释全部账户,添加ftpuser
# vsftpd userlist # If userlist_deny=NO, only allow users in this file # If userlist_deny=YES (default), never allow users in this file, and # do not even prompt for a password. # Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers # for users that are denied. #root #bin #daemon #adm #lp #sync #shutdown #halt #mail #news #uucp #operator #games #nobody ftpuser
配置到这里,就能够远程用FTP客户端登陆并上传文件,文件会保存在ftpuser的主目录,也就是/home/ftp。
3. 不容许FTP下载
vi /etc/vsftpd/vsftpd.conf
download_enable=NO
4. 只容许指定的IP才能链接
4.1 安装tcp_wrappers
yum -y install tcp_wrappers
4.2 检查tcp_wrappers是否被设置为YES
vi /etc/vsftpd/vsftpd.conf
tcp_wrappers=YES
4.3 添回容许的IP
vi /etc/hosts.allow
vsftpd:容许的IP地址
4.4 拒绝全部其余的IP
vi /etc/hosts.deny
vsftpd:ALL