安装 Proftpd:目前Unix或类Unix平台上 FTP Server十分有限,最常使用的恐怕就是wu-ftpd了。虽然wu-ftpd有着极佳的效能同时也是一套很好的软件,然而它却欠缺了许多Win32平台上FTP Server的一些特色,同时wu-ftpd过去也有不少的安全漏洞陆续被发现。
ProFTPD的原创者本身就曾经花非常多的时间寻找wu-ftpd 的漏洞加以改进并且增加许多功能。然而十分不幸的是,他很快地发现显然wu-ftpd需要全部重新的改写才能补足欠缺的设定能力以及缺乏的一些功能。
ProFTPD不是从其它FTP Server的既有原始码修改而产生的,相反的,它是完全独立而完整、重新改写的FTP Server。
tar zxvf proftpd-1.3.1.tar.gz 进行解压
cd proftpd-1.3.1 进入文件夹
- ./configure --prefix=/usr/local/proftpd --with-modules=mod_quotatab:mod_quotatab_file --enable-ctrls --enable-nls --enable-shadow --enable-dso --enable-autoshadow --enable-auth-pam
- make && make install
- # 编辑一个启动脚本,
cd proftpd-1.3.2 进入proftpd-1.3.2的解压文件夹中
cp contrib/dist/rpm/proftpd.init.d /etc/rc.d/init.d/proftpd 拷贝 proftpd.init.d 到 /etc/rc.d/init.d 文件夹中,并改名为proftpd
vim /etc/rc.d/init.d/proftpd 编辑这个文件,找到文件中有一行是PATH行,将它改成你所安装proftpd所在的目录。
PATH="$PATH:/usr/local/proftpd/sbin:/usr/local/proftpd/bin" 我是安装在 /usr/local/proftpd 文件下,保存退出
- # 把/etc/rc.d/init.d/proftpd设成可执行文件
- chmod +x /etc/rc.d/init.d/proftpd
- # 用 service proftpd start 和 service proftpd stop 和 service proftpd restart 来分别执行开启服务,停止服务与重启服务
- chkconfig --level 35 proftpd on
- chkconfig --add proftpd
- # 修改配置文件 proftpd.conf
- vim /usr/local/proftpd/etc/proftpd.conf
#p#
常用参数列:
User apache #以系统自带用户 apache 运行,建立用户时指定 uid 为该用户的ID
Group apache #以系统自带的组 apache 运行,建立组时指定 gid 为该级的ID
DirFakeUser on ftp #不显示真实的用户名
DirFakeGroup on ftp #不显示真实的组名
DefaultServer on
UseReverseDNS off #客户端链接速度,否则链接时会很慢
IdentLookups off #客户端链接速度,否则链接时会很慢
DefaultRoot ~ #设置DefaultRoot不允许用户访问父目录
AuthUserFile /etc/proftpd/ftpd.passwd #虚拟用户配置文件
AuthGroupFile /etc/proftpd/ftpd.group #虚拟用户组配置文件
UseEncoding UTF-8 GBK #解决中文乱码问题
# 建立虚拟用户,提高安全和方便管理
复制配置权限的文件到 /usr/bin 下并设置为可执行
- cp ftpasswd /usr/bin
- chmod +x /usr/bin/ftpasswd
创建路径和权限文件
mkdir -p /etc/proftpd
ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=ftpadmin --uid=48 --home=/home/ftpdata --shell=/sbin/nologin
ftpasswd --group --file=/etc/proftpd/ftpd.group --name=admin --gid=48
ftpasswd --group --name=admin --gid=48 --member=ftpadmin
--uid, --gid 为配置文件 proftpd.conf 中定义的用户和组的ID
要修改用户的 --home 可以 vim /etc/proftpd/ftpd.passwd,然后加强制写稿操作 :w! 即可
# 设置下权限
chown -R apache:apache /var/www 或者 chmod –R 775 /var/ftp
# 注意事项:
1)如果连接不上,请检查LINUX防火墙设置,要开通FTP端口可访问
2)ftpasswd执行文件在安装目录contrib下,chmod +x ftpasswd 后,如果发现还不是不能执行命令,可将它复制到/usr/bin目录下
3)安装时加 --enable-ctrls ,然后在配置文件 proftpd.conf 中加 UseEncoding UTF-8 GBK 解决中文乱码问题
4)加快FTP链接速度
- UseReverseDNS off
- IdentLookups off
【编辑推荐】