VSFTPD 服务器部署
一. 安装vsftpd服务的软件。
二. 在配置文件中进行配置。
三. 启动相关服务。
四. 通过ftp命令登录ftp服务器进行测试。
五. vsftpd支持三种用户类型,匿名用户,本地用户,虚拟用户。
具体操作步骤如下:
1. 使用rpm命令安装vsftpd软件包。如下图所示:
挂载光盘:
安装rpm软件包:
2. 创建两个本地帐户。如下图所示:
3. 在服务的主配置文件中进行配置(vsftpd.conf) 如下图所示:
4. 下面是对vsftpd.ftpusers文件进行设置。
注:此文件用于保存不允许进行ftp登录的本地用户帐号。默认情况下新建的本地用户是
没有在此文件中的。若要限制需自已添加进来。
5. 下面是对vsftpd.user_list文件进行设置。
注:(1) 此文件是对vsftpd服务器更灵活的用户访问控制。
(2) 使用此文件vsftpd.user_list 需要在主配置文件(/etc/vsftpd/vsftpd.conf)中进行设置。
(3) 设置禁止vsftpd.user_list文件中的用户登录
[ userlist_enable=YES ] [userlist_deny=YES]
(4) 设置只允许vsftpd.user_list文件中的用户登录
[userlist_enable=YES] [userlist_deny=NO]
如下图所示:
注:此文件中默认设置是没有其它本地用户的。只有root用户。上图中我加了三个本地用户。
6. vsftpd服务需要设置在运行级别3和5自动启动。如下图所示:
7. 启动服务。如下图所示:
8. 使用ftp命令登录ftp服务器。如下图所示:
注:上面是使用匿名用户登录成功了。(192.168.0.44 是我的ftp服务器IP)
注:上面是用了本地用户lht登录不了。(因为前面的主配置文件中,设置成userlist_deny=YES)
9.下面是把此配置进行修改。如下图所示:
注:修改完配置文件后,一定要记得重启服务!
下面是进行更改设置。从上图中可看出本地新建用户能登录,而root用户登录不了。
完成设置后,重启服务。
重新登录:
SSS 这个新建的本地用户,前面没有加#。所以,此用户被禁止了。
而CCC没有添加到这个文件中,则可以访问。
注:匿名用户和本地用户,不能同时,登录FTP服务器。也就是说,当userlist_deny=YES时只能匿名用户可以登录。当userlist_deny_NO时,只能本地用户可以登录。
如下图:
更改主配置文件后,又能登录了。如下图所示:
10. 所有匿名用户都登录到相同的目录中。(/var/ftp)
下面介绍将FTP本地用户禁锢在宿主目录中。因为本地用户登录FTP目录后,可以从宿主目录转换到其它目录,不是很安全。
在匿名用户宿主目录中,新建两个文件。如下图:
匿名用户登录查看宿主目录中的文件:
在本地用户SSS和CCC的宿主目录中各自新建两个文件。如下图所示:
注:本地新建用户的宿主目录就是在/home目录下,与自己用户名同名的目录。
下面是在没有禁锢前的情况。如下图所示:
下面是在主配置文件中进行配置,禁锢后的情况。如下图所示:
注:禁锢后,本地用户登录FTP服务器后宿主目录将作为(/)目录。
11. 下面是vsftpd虚拟用户帐号的设置步骤:
1.建立虚拟用户口令库文件
2.生成vsftpd的认证文件
3.建立虚拟用户所需的PAM配置文件
4.建立虚拟用户所要访问的目录并设置相应权限
5.设置vsftpd.conf配置文件
下面是具体的操作过程:
第一步,建立虚拟用户口令库文件。如下图所示:
这里创建了aaa和bbb两个用户。用户下面的数字密码。
第二步,接着就是生成vsftpd的认证文件,设置此文件对用户可读可写。如下图所示:
第三步,下面是建立虚拟用户所需的PAM配置文件。如下图:
第四步,下面是建立所有FTP虚拟用户帐号使用的系统用户帐号,并设置该帐号宿主目录的权限。如下图:
第五步,下面是在FTP主配置文件中添加虚拟用户的配置内容。如下图:
第六步,重启VSFTPD服务器服务。如下图:
对虚拟用户设置不同的权限。
第七步,在vsftpd.conf文件中添加用户配置文件目录设置:如下图:
第八步,建立用户配置文件目录。如下图:
第九步,为虚拟用户建立单独的配置文件。如下图所示:
有上传和下载的权限。
没有上传的权限。
第十步,前面的九步都是在服务上配置的,下面是在客户机上进行测试。如下图:
从上图可以看出aaa用户可下载可上传。
从上图可以看出可下载,但不能上传。
创建虚拟用户,是比较安全。因为虚拟用户只能访问home目录下的ftpsite目录中的内容。
而不能转换的其它目录。如下图: