[root@localhost Desktop]# cat /etc/yum.repos.d/rhel_dvd.repo #配置yum源
Created by cloud-init on Thu, 10 Jul 2014 22:19:11 +0000
[rhel_dvd]
gpgcheck = 0
enabled = 1
baseurl = http://172.25.254.66/rhel7.2
name = Remote classroom copy of dvd
[root@localhost Desktop]# yum clean all #清空缓存
Loaded plugins: langpacks
Cleaning repos: rhel_dvd
Cleaning up everything
[root@localhost Desktop]# cd /var/ftp #ftp访问目录
-bash: cd: /var/ftp: No such file or directory
[root@localhost Desktop]# yum install vsftpd.x86_64 -y
[root@localhost ftp]# systemctl start vsftpd
[root@localhost ftp]# systemctl status vsftpd.service
vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled)
Active: active (running) since Wed 2017-03-08 10:17:53 EST; 9s ago
Process: 2216 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS)
Main PID: 2217 (vsftpd)
CGroup: /system.slice/vsftpd.service
└─2217 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
Mar 08 10:17:53 localhost systemd[1]: Started Vsftpd ftp daemon.
[root@localhost Desktop]# cd /var/ftp/ #ftp服务访问目录
[root@localhost ftp]# ls
pub
[root@localhost ftp]# mkdir linux
[root@localhost ftp]# touch westos
[root@localhost ftp]# ls
linux pub westos
测试:
1.客户端:
浏览器中访问:ftp://172.25.254.200
2.客户端:
安装 lftp
[kiosk@foundation66 Desktop] yuminstalllftp.x8664[kiosk@foundation66Desktop] lftp 172.25.254.200
[kiosk@foundation66 Desktop]$ lftp 172.25.254.200
lftp 172.25.254.200:~> ls
drwxr-xr-x 2 0 0 6 Mar 08 15:17 linux
drwxr-xr-x 2 0 0 6 Aug 03 2015 pub
-rw-r–r– 1 0 0 0 Mar 08 15:17 westos
lftp 172.25.254.200:/> exit
[kiosk@foundation66 Desktop]$
每次修改完配置文件之后,都需要重启服务
[root@localhost Desktop]# getenforce #查看 selinux 状态
Enforcing #开启
disabled #关闭
[root@localhost Desktop]# vim /etc/sysconfig/selinux #内核文件
SELINUX=enforcing ——disabled
[root@localhost Desktop]# reboot #从内核重启
[root@localhost Desktop]# vim /etc/vsftpd/vsftpd.conf
……
anonymous_enable=YES #匿名账户允许登陆(ftp用户)
local_enable=YES #本地账户允许登陆
write_enable=YES #本地账户可以写入
……
测试:
客户端: lftp IP (-u username)
所访问的位置是 username 的家目录ftp配置文件相关参数:
write_enable=YES #本地用户可以写入
anon_upload_enable=YES #匿名用户写入权限
anon_upload_enable=YES|NO #匿名用户上传
anon_world_readable_only=NO #匿名用下载,NO表示匿名用户可以下载
anon_other_write_enable=YES #匿名用户可以删除
anon_mkdir_write_anables=YES 允许创建目录
anon_root=/westos(需要指定成为的家目录) #匿名用户的家目录
local_root=/linux #本地用户的家目录
local_umask=011 #本地用户umask
anon_umask=055 #匿名用户umask
anon_max_rate=102400(最大传输速率) #默认单位是字节
max_clients=2 #最多只能允许两个设备连接
chroot_local_user=YES #是否允许在用户家目录之外的目录中去
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list#制作黑白名单
[root@localhost Desktop]# cd /etc/vsftpd/ #ftp服务配置文件
[root@localhost vsftpd]# ls
ftpusers(永久黑名单) user_list(临时黑名单) vsftpd.conf vsftpd_conf_migrate.sh
*白名单:
1.修改主配置文件
2.将需要限制的用户放入名单中
[root@localhost vsftpd]# vim vsftpd.conf
……
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=NO
tcp_wrappers=YES
……
[root@dchxmj vsftpd]# echo student > /etc/vsftpd/user_list
黑名单:
[root@localhost vsftpd]# vim vsftpd.conf
……
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
……
[root@dchxmj vsftpd]# echo student > ftpusers
测试:
客户端:
lftp IP -u username
白名单或黑名单里面所指定的username
[root@localhost vsftpd]# cd /etc/vsftpd/
[root@localhost vsftpd]# touch linux #创建家目录
[root@localhost vsftpd]# vim linux
[root@localhost vsftpd]# cat linux
linux1 #虚拟账户名
123 #虚拟账户名所对应的密码
linux2
123
[root@localhost vsftpd]# db_load -T -t hash -f /etc/vsftpd/linux linux.db #加密
[root@localhost vsftpd]# cd /etc/pam.d/
account required pam_userdb.so db=/etc/vsftpd/linux
auth required pam_userdb.so db=/etc/vsftpd/linux
[root@localhost pam.d]# vim /etc/vsftpd/vsftpd.conf
……
pam_service_name=yanzheng #/etc/pam.d/下的验证文件
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
guest_username=student #虚拟用户以student的身份访问
……
[root@localhost pam.d]# systemctl restart vsftpd
测试:
客户端:lftp IP -u 虚拟账户
1.mkdir -p /linux/linux1 创建家目录
2.mkdir -p /linux/linux2
3.touch /linux/linux1/linux1file1
4.touch /linux/linux2/linux2file2
5.vim /etc/vsftpd/vsftpd.conf
# Make sure, that one of the listen options is commented !!
listen_ipv6=YES
pam_service_name=linux
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
guest_username=student
local_root=/linux/ USER指定登陆用户的家目录usersubtoken= USER 关联shell和ftp
:wq
测试:
客户端:lftp IP -u username