Redhat AS4下配置FTP(vsftpd-2.0.1-5)服务笔记
用ssh远程登陆后下完成这次测验。共享一次安装经验,也作为笔记以便以后查阅。
vsftpd默认为安装系统装好,ftp服务并没有随机器启动而启动,须要手动启动服务,执行service vsftpd start 即可,如果想要一些服务随机器一起启动。最简便的办法,运行ntsysv命令后,选取须要自启动的服务即可。好了,ftp服务起来,默认是匿名用户有访问权限的,如查我们想去掉匿名的访问权限。修改
anonymous_enable=yes 将值改为no,重启服务即可。
现在我想Ftp用户只通限制在登陆ftp,并只能限制在自家的目录。
执行如下后命令
mkdir /var/ftp/test *添加目录
useradd -G ftp -d /var/ftp/test -s /dev/null -M test
*(在ftp组中 添加test用户,主目录为/var/ftp/test)
chown test.ftp /var/ftp/test
chmod 750 /var/ftp/test
passwd test
用test却无法登陆,查一了下原来是那个别-S的参数的值应为 /sbin/nologin 意思是限制了此用户只能用于ftp登陆。好了,在passwd文件修改后。可以登陆了。
登陆后,命令下输入cd / 呵呵,那想一下就切换到了系统的根目录下,够恐怖吧。幸好是用来做测试的。
为啥会这样了呢。原来还有工作得去做再行,
首先我们要自己建一个文件,在/etc目录中
#touch /etc/vsftpd.chroot_list
以test个用户限制在他们所在的家目录中,而其它的FTP用户不做此限制。
在vsftpd.chroot_list这个文件中,把test添上去就行,注意,每个用户占一行。
test
然后改/etc/vsftpd/vsftpd.conf文件,找如下的两行
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
把前面的#号去掉,也就是这样的
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
如果没有这样的两行,就可以自己添加上去也是一样的。
设置好后,重新vsFTPD服务器。
如何把系统内所有的FTP用户都限制在家目录中呢?我找了一下,证明这个选项是一刀切的解决所有的用户都能
限制在家目录中,我们可以通过更改vsftpd.conf文件,加入如下的一行即可。
chroot_local_user=YES
再接着是打开ftp访问的日志功能
vi /etc/vsftpd/vsftpd.conf
去掉
#xferlog_file=/var/log/vsftpd.log
这一行头的#
基本上配置算完。其它的设置还多着,慢慢去实践吧。 |