Ubuntu 安装 vsftpd FTP详细步骤
vsftpd是一个对UNIX系统遵循GPL协议的FTP服务器,包括Linux。它安全而且速度非常快。
本教程将告诉你如何在Linux系统中搭建自己的FTP服务器。
1.安装vsftpd。
sudoapt-getinstallvsftpd
2.替换配置文件。
用文本编辑器打开vsftpd.conf配置文件,一般在/etc目录下。
[sudojoe/etc/vsftpd.conf
可以做如下修改:
把 anonymous_enable=YES
改成
anonymous_enable=NO
这将禁止用户匿名访问你的FTP服务器,除非你有非常好的理由允许匿名访问。而且在做网络安全方面,我建议不允许匿名访问,尤其是你的FTP服务器位于Internet上时。
当然,设置了禁止匿名访问后,你需要允许本地用户登录,修改如下:
把#local_enable=YES
改成
local_enable=YES
3.添加一个“fake”shell脚本。
编辑/etc/shells文件,并添加一个不存在的shell名称如/bin/false。这个假shell将会限制FTP用户访问系统。
sudojoe/etc/shells
#/etc/shells:validloginshells /bin/sh /bin/bash /bin/false
/bin/false是我们添加的一个不存在的shell。就像红帽子Linux系统上的一个特殊的设备/dev/null一样。
4.创建一个FTP用户账户。
在Linux系统上的不存在的shell上创建严格的FTP用户账户是非常重要的。在这种方式下,如果因为任何原因有人能成功脱离FTP的chroot环境,他都不会有可能去执行任何用户任务因为这个shell是不存在的。首先,创建新的用户。
这个必须和没有限制访问的正常的用户账户分开,因为chroot环境工作的方式。Chroot是得它从用户的角度出发,似乎你已经将它们防止在文件系统的顶层一样。
使用下面的命令在/etc/passwd文件中创建用户,在你每添加一个允许访问你的FTP服务器的新的用户时都必须执行这一步。
sudomkdir-p/home/ftp/ftpuser sudouseraddftpuser-d/home/ftp/ftpuser/-s/bin/false sudopasswdftpuser
-mkdir命令将在/home目录下创建ftp/ftpuser目录来处理所有的FTP用户。
-useradd命令将在你的Linux服务器上添加一个名为ftpuser新的用户。
-最后,passwd命令将设置用户ftpuser的密码。
一旦你完成了这些,用下面的命令来重启vsftpd服务:
sudo/etc/init.d/vsftpdrestart
5.在每个用户的基础上改写用户手册中指定的配置项(可选)。
如果你想在每个用户的基础上改变ftp服务器的行为习惯,你应用知道vsftpd有一个强大的选项,允许你这么做。
如果你设置了user_config_dir为/etc/vsftpd_user_conf并且以“chris”用户登录,那么vsftpd在会话持续的时间内将会在/etc/vsftpd_user_conf/chris文件中应用这些设置,文件的格式详见用户手册!
请注意,并非是所有的设置都会对每个用户生效,例如,许多设置只对之前的已经启动的用户会话生效。这些不会影响每个用户的任何行为的设置,包括listen_address,banner_file,max_per_ip,max_clients,xferlog_file等。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!