vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。在开源操作系统中常用的FTPD套件主要还有ProFTPD、PureFTPd和wuftpd等,而vsftpd支持很多其他的 FTP 服务器所不支持的特征。比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。
vsftpd特点①vsftpd 是以一般身份启动服务,所以对于 Linux 系统的使用权限较低,对于Linux 系统的危害就相对的减低了。此外, vsftpd 亦利用 chroot() 这个函式进行改换根目录的动作,使得系统工具不会被vsftpd 这支服务所误用;②任何需要具有较高执行权限的 vsftpd 指令均以一支特殊的上层程序( parent process ) 所控制 ,该上层程序享有的较高执行权限功能已经被限制的相当的低,并以不影响Linux 本身的系统为准;③所有来自 clients 端,想要使用这支上层程序所提供的较高执行权限之vsftpd 指令的需求,均被视为『不可信任的要求』来处理,必需要经过相当程度的身份确认后,方可利用该上层程序的功能。例如chown(), Login 的要求等等动作;④此外,上面提到的上层程序中,依然使用 chroot() 的功能来限制使用者的执行权限。
序列号 | CPU | RAM | HDD | 带宽 | 售价(美元) | 免费试用 |
---|---|---|---|---|---|---|
香港服务器1 | E5-2620 | 32G | 1T HDD | 50M/无限流量 | $196.00 | 立即申请 |
香港服务器2 | E5-2650 | 32G | 1T HDD | 50M/无限流量 | $256.00 | 立即申请 |
香港服务器3 | E5-2680 | 32G | 1T HDD | 50M/无限流量 | $316.00 | 立即申请 |
香港服务器4 | E5-2690 | 32G | 1T HDD | 50M/无限流量 | $336.00 | 立即申请 |
香港服务器5 | E5-2697 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器6 | E5-2620*2 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器7 | E5-2650*2 | 32G | 1T HDD | 50M/无限流量 | $436.00 | 立即申请 |
香港服务器8 | E5-2680*2 | 32G | 1T HDD | 50M/无限流量 | $476.00 | 立即申请 |
香港服务器9 | E5-2690*2 | 32G | 1T HDD | 50M/无限流量 | $556.00 | 立即申请 |
香港服务器10 | E5-2697*2 | 32G | 1T HDD | 50M/无限流量 | $596.00 | 立即申请 |
香港服务器11 | E5-2680v4*2 | 32G | 1T HDD | 50M/无限流量 | $696.00 | 立即申请 |
香港服务器12 | E5-2698v4*2 | 32G | 1T HDD | 50M/无限流量 | $796.00 | 立即申请 |
安装步骤编译安装
复制代码代码如下:# mkdir -p /usr/local/man/man8# mkdir -p /usr/local/man/man5# yum -y install tcp_wrappers*# yum -y install pam*# yum -y install db4*# yum -y install libcap*# wget -c http://down1.chinaunix.net/distfiles/vsftpd-2.3.4.tar.gz# tar -xvzf vsftpd-2.3.4.tar.gz# cd vsftpd-2.3.4支持的认证类型复制代码代码如下:# vim builddefs.h#define VSF_BUILD_TCPWRAPPERS#define VSF_BUILD_PAM#define VSF_BUILD_SSL# make# make install# mkdir /etc/vsftpd# cp vsftpd.conf /etc/vsftpd启动脚本复制代码代码如下:# vim /etc/init.d/vsftpd# chmod +x /etc/init.d/vsftpd# chkconfig --level 235 vsftpd on日志目录# mkdir -p /data3/ftp_logs# vi /etc/vsftpd/vsftpd.conf# touch /data3/ftp_logs/vsftpd.log# touch /etc/vsftpd/chroot_list# touch /etc/vsftpd.user_list# mkdir /etc/vsftpd/vconf[/code]创建用户列表【第一行为用户名,第二行为密码】复制代码代码如下:# vi /etc/vsftpd/virtusersblaze123456789创建用户数据库文件复制代码代码如下:# db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db# chmod 600 /etc/vsftpd/virtusers.db创建PAM认证文件复制代码代码如下:# vim /etc/pam.d/vsftpd[注:x64环境下,路径不一样]
创建针对 blaze 用户的配置文件
复制代码代码如下:# vim /etc/vsftpd/vconf/blazelocal_root=/data1/wwwanonymous_enable=NOwrite_enable=YESlocal_umask=022anon_upload_enable=NOanon_mkdir_write_enable=NOidle_session_timeout=600data_connection_timeout=120max_clients=10max_per_ip=5local_max_rate=50000防火墙设置复制代码代码如下:# iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT# iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT# iptables -I INPUT -p tcp --dport 21 -j ACCEPT# iptables -I OUTPUT -p tcp --dport 21 -j ACCEPT# modprobe ip_conntrack_ftp# modprobe ip_nat_ftp
# vi /etc/sysconfig/iptables-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT-I INPUT -p tcp --dport 21 -j ACCEPT-I OUTPUT -p tcp --dport 21 -j ACCEPT
# vi /etc/sysconfig/iptables-configIPTABLES_MODULES="ip_conntrack_ftp"IPTABLES_MODULES="ip_nat_ftp"