linux ftp 安装笔记

配置Vsftpd

安装完之后我们要对它进行配置,才能正常使用。编辑vsftpd的配置文件vi /etc/vsftpd/vsftpd.conf

vi编辑器中的搜索使命是斜杠“/”,然后输入要查找的内容,回车确定。以下是要更改的选项

anonymous_enable=NO  #禁止匿名访问

ascii_upload_enable #允许使用ascii码上传

ascii_download_enable #允许使用ascii码下载

userlist_deny=NO #(这条需手动添加到最后)使用FTP用户表,表里没有的用户需要添加才能登录

设置完毕之后,ESC,冒号wq回车。启动vsftpd服务/etc/init.d/vsftpd start,看到[确定]即为启动成功。

只启动完还不行,还要给它添加开机自动启动,chkconfig vsftpd on

登录FTP后被限制在家目录下的用户列表文件

chroot_list_file=/etc/vsftpd.chroot_list

在/etc目录下新建一个vsftpd.chroot_list文件,内容加入要限制用户的用户名

            没加入限制用户可以访问其目录

在linux中添加ftp用,并设置相应的权限,操作步骤如下:

1、环境:ftp为vsftp。被限制用户名为test。被限制路径为/home/test。

2、建用户:在root用户下:

       useradd -d /home/test test     //增加用户test,并制定test用户的主目录为/home/test

       passwd  test    //为test设置密码

3、更改用户相应的权限设置:

       限定用户不能telnet,只能ftp: usermod -s /sbin/nologin test  

       usermod -s /sbin/bash test    //用户恢复正常

        更改用户的主目录:  usermod -d /test test          

4、限制用户只能访问/home/test,不能访问其他路径

      修改/etc/vsftpd/vsftpd.conf如下:  

      chroot_list_enable=YES             //限制访问自身目录

       # (default follows)

        chroot_list_file=/etc/vsftpd/vsftpd.chroot_list 

        编辑 vsftpd.chroot_list文件,将受限制的用户添加进去。

5、如果需要允许用户修改密码,但是又没有telnet登录系统的权限:

      usermod  -s /usr/bin/passwd test   //用户telnet后将直接进入改密界面

vsftpd启动后,连接服务器之后,创建上传文件的时候提示如下错误:
550 create directory operation failed
selinux已经关闭了
#cat /etc/selinux/config
SELINUX=disabled
#setenforce 0
#getenforce //查看状态

setenforce: SELinux is disabled

PS: 关闭SELinux方法
# vi /etc/selinux/config
将 SELINUX=XXX -->XXX 代表级别
改为
SELINUX=disabled
 
传输模式为默认的时候:
响应:227 Entering Passive Mode (10,27,91,22,215,148).
错误:读取目录列表失败
该错误是由iptables的配置引起的,临时的解决方法是执行如下命令:

[root@localhost soft]# modprobe ip_nat_ftp

再次登陆列表正常啦!
但当你重新启动服务器则iptables规则失效,又会出现相同的情况,所以我们需要修改/etc/sysconfig/iptables-config文件,

[root@localhost soft]# vi /etc/sysconfig/iptables-config
我们需要把

IPTABLES_MODULES=""

修改为:

IPTABLES_MODULES="ip_nat_ftp"

这样重启服务器之后就不必再每次都执行mobprobe啦。

相关推荐