重新整理搭建步骤
1网上下载ftp的安装包: vsftpd-3.0.2.tar.gz
2生成认证文件需要的依赖包:yuminstall db4 db4-utils
3创建文件夹,放置配置及相关文件
mkdir /etc/vsftpd/
cd /etc/vsftpd/
4编辑映射用户名及密码并生成pam文件
vim login.txt
login.txt内容为:
ftppersonal
personal
ftppublic
public
5.生成pam文件
db_load -T -t hash -f login.txt./vsftpd_login.db
6设置生成的pam文件权限
chmod 600 /etc/vsftpd/vsftpd_login.db
7设置pam依赖文件
vim /etc/pam.d/vsftpd
vsftpd内容:
[root@ps-15i-84 vsftpd]#cat /etc/pam.d/vsftpd
auth required/lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required/lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
8添加服务器用户virtual并创建ftp用户根目录
useradd -d /var/ftp/ virtual
9.配置ftp的vsftpd.conf配置文件
cp /home/admin/vsftpd-3.0.2/vsftpd.conf ./
vim vsftpd.conf
增加及修改内容为(列出的是全部配置内容):
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
dirmessage_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
listen=YES
guest_enable=YES
guest_username=virtual
pam_service_name=vsftpd
allow_writeable_chroot=YES
user_config_dir=/etc/vsftpd/vsftpduser_conf/
10创建个人用户配置目录并创建用户配置
mkdir vsftpduser_conf
cd vsftpduser_conf/
vim ftppersonal
ftppersonal虚拟用户权限配置内容:
local_root=/var/ftp/public/
anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
vim ftppublic
ftppublic虚拟用户权限配置内容
local_root=/var/ftp/public/
anon_world_readable_only=NO
write_enable=NO
anon_upload_enable=YES
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
11创建共同目录并且配置virtual权限,virtual的映射子用户在virtual的权限的基础上各自配置(ftppersonal为拥有与virtual相同的大全限,public只有读的权限)
mkdir /var/ftp/public
chown virtual:virtual /var/ftp/public/
12启动ftp服务器
/usr/local/sbin/vsftpd/etc/vsftpd/vsftpd.conf &
13登录ftp服务器
命令行输入:ftp10.9.31.181
14windows登录ftp服务器
15.限制client的连接数、限制上传下载速度
max_clients=50 #clients最大连接数
#max_per_ip=5 #每个客户端的最大连接数
anon_max_rate=500000#限制虚拟用户的最大下载上传速度
#local_max_rate=200000#限制本地主机用户的上传下载速度
ftp虚拟模式(参考前面的操作步骤,此步骤为探索中的笔记)
1. 生成虚拟用户口令库文件
Cd /etc/vsftpd/
vi login.txt
login.txt文件内容:
ftppersonal
personal@byd
ftppublic
public@byd
2. 配置生成vsftpd的认证文件
db_load -T -t hash -flogin.txt ./vsftpd_login.db
chmod 600 /etc/vsftpd/vsftpd_login.db
mv/etc/pam.d/vsftpd.pam /etc/pam.d/vsftpd
vsftpd的文件内容:
auth required/lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib64/security/pam_userdb.sodb=/etc/vsftpd/vsftpd_login
3. 建立虚拟用户访问所需要的目录并且设定相应的访问权限
userdelvirtual
973 useradd -d /var/ftp/ virtual
974 userdel virtual
975 cd /var/
976 ls
977 rm -rf ftp //创建/var/ftp/目录不可以mkdir创建,使用useradd -d /var/ftp/ virtual可以创建
978 ls
979 ls
980 useradd -d /var/ftp/ virtual //添加一个virtual用户,而login.txt里的用户映射的就是virutal用户
981 ls ftp/
982 ls
983 chmod 700 /var/ftp/
4. 对vsftpd的主配置文件进行配置
cp /home/admin/vsftpd-3.0.2/vsftpd.conf ./
vim vsftpd.conf
修改内容:
listen=YES
tcp_wrappers=YES //支持tcp_wrappers,限制访问/etc/hosts.allow,/etc/hosts.deny
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
chroot_local_user=YES
guest_enable=YES
guest_username=virtual //映射的virtual用户
启动服务器报错:
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
解决:
Chmoda-w /var/ftp
配置添加:allow_writeable_chroot=YES
5. 为虚拟用户创建单独配置文件
mkdir /etc/vsftpd/vsftpduser_conf/
mkdir /var/ftp/personal/
chown virtual:virtual /var/ftp/personal/
vim /etc/vsftpd/vsftpduser_conf/ftppersonal
添加:
local_root=/var/ftp/personal/
anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
mkdir /var/ftp/public/
chown virtual:virtual /var/ftp/public/
vim /etc/vsftpd/vsftpduser_conf/ftp/personal
添加:
local_root=/var/ftp/public/
anon_world_readable_only=NO
write_enable=NO
anon_upload_enable=YES
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chown virtual:virtual/var/ftp/public/

662

被折叠的 条评论
为什么被折叠?



