FTP配置的一些笔记

时间:2022-09-22 03:26:01

1、必须关闭防火墙

  iptables -F

  iptables -X

  iptables -Z

  vi /etc/selinux/config          SELINUX=disabled

  setenforce 0

2、配置vsftpd的配置文件,实行匿名用户的上传下载删除创建等操作,记录一些关键的

  anonymous_enable=YES/NO(YES)控制是否允许匿名用户登入

  anon_upload_enable=YES        可上传

  anon_mkdir_write_enable=YES   可新建

  write_enable=YES/NO(YES)#是否允许登陆用户有写权限。

  anon_mkdir_write_enable=YES/NO(NO)#如果设为YES,则允许匿名登入者有新增目录的权限,只有在write_enable=YES时,此项才有效。当然,匿名用户必须要有对上层目录的写入权。默认值为NO。

  anon_other_write_enable=YES/NO(NO)#如 果设为YES,则允许匿名登入者更多于上传或者建立目录之外的权限,譬如删除或者重命名。

  anon_umask=022 #设置匿名登入者新增或上传档案时的umask 值。默认值为022,000最大值

3、匿名用户的目录(/var/ftp/pub)没有写权限,需要将其设置为具有写权限。

首先转到/var/ftp

然后在终端中输入:chmod 777 pub。

4、开启目录消息的功能

dirmessage_enable=YES

vim /var/ftp/.message --匿名用户消息

echo "welcomt to cw01" > /home/cw01/.message  普通用户 CW01

5、指定匿名上传文件的拥有人

chown_uploads=YES

chown_username=cw02

6、 本地用户登录,锁定在自己的家目录 --禁锢家目录

chroot_local_user=YES

允许rs01可以切换根目录

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

echo "rs01" >> /etc/vsftpd/chroot_list

1)允许某一个用户切换到根目录

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

echo "rs01" >> /etc/vsftpd/chroot_list

2)只拒绝某一个用户切换到根目录

#chroot_local_user=YES

chroot_list_file=/etc/vsftpd/chroot_list

echo "rs02" >> /etc/vsftpd/chroot_list

3> 所有用户不能切换到根目录

chroot_local_user=YES

7、 ftp自身的访问控制

拒绝用户登录ftp

1)  默认

/etc/vsftpd/ftpusers  永远都是黑名单

2) 当 userlist_deny=YES (default)

/etc/vsftpd/user_list    拒绝名单

3) 当 userlist_deny=no

/etc/vsftpd/user_list    只允许

4) /etc/vsftpd/ftpusers 与 /etc/vsftpd/user_list

拒绝u01,只允许u01 结果冲突  冲突之后以ftpusers为准

<1> 拒绝cw01登录

echo cw01 >> /etc/vsftpd/ftpusers    --Login failed.

echo cw02 >> /etc/vsftpd/user_list   --没有输入密码机会 Permission denied

<2> 只允许rs02登录

userlist_enable=YES

userlist_deny=NO

<3> 只允许rs02登录|拒绝rs02登录---冲突 ftpusers 为准

8、 指定匿名用户和认证用户上传文件到不同的目录

默认 本地用户ftp家   $HOME  /home/cw01

匿名用户ftp家   /var/ftp

改变

所有本地用户ftp家  /rhome/local

匿名用户ftp家      /rhome/anon

1. 新建目录

mkdir -p /rhome/{local,anon}

mkdir /rhome/local/local_home

mkdir /rhome/anon/anon_home

2.定义配置文件

#userlist_deny=NO

local_root=/rhome/local

anon_root=/rhome/anon

3重启

service vsftpd restart

这篇更详细  http://www.cnblogs.com/acpp/archive/2010/02/08/1666054.html