返回列表 发帖

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

这一行头的#

基本上配置算完。其它的设置还多着,慢慢去实践吧。
让中国Python发展的更快 ,更好.

ftp>; ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
Desktop
dead.letter
ou
vsftp-1.txt
vsftp-2.txt
vsftpd.conf
226 Directory send OK.
ftp>; put d:/fcitx/fcitx-3.1.1.tar.tar
200 PORT command successful. Consider using PASV.
553 Could not create file.
ftp>; get vsftpd.conf
200 PORT command successful. Consider using PASV.
550 Failed to open file.


lc0 回复于:2005-08-08 13:51:37

搞定了,最重要的是man ftpd_selinux,解决这个问题只要:
1. setsebool -P ftpd_disable_trans 1
2. service vsftpd restart
就行了。
谢谢老大!


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/csucxcc/archive/2007/09/03/1770598.aspx
让中国Python发展的更快 ,更好.

TOP

返回列表