vsftpd服务的安装及使用
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled)
Active: active (running) since Sat 2016-10-15 04:40:26 EDT; 6min ago
Main PID: 2749 (firewalld)
CGroup: /system.slice/firewalld.service
└─2749 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
Oct 15 04:40:26 server7.example.com systemd[1]: Started firewalld - dynamic firewall daemon.
[root@server7 ~]# firewall-cmd --permanent --zone=public --add-service=ftp
success
[root@server7 ~]# firewall-cmd --reload
success
[root@server7 ~]# firewall-cmd --list-all
public (default, active)
interfaces: eth0
sources:
services: dhcpv6-client ftp ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
Disabled
[root@server7 ~]# ll /var/ftp/pub/
total 0
[root@server7 ~]# lftp localhost
lftp localhost:~> ls
Interrupt
lftp localhost:~>
lftp localhost:~> exit
[root@server7 ~]# ls -ldZ /var/ftp/pub/
drwxr-xr-x root root ? /var/ftp/pub/
#############################若开启SElinux############################################
[root@server7 ~]# semanage fcontext -l | grep /var/ftp
/var/ftp(/.*)? all files system_u:object_r:public_content_t:s0
/var/ftp/bin(/.*)? all files system_u:object_r:bin_t:s0
/var/ftp/etc(/.*)? all files system_u:object_r:etc_t:s0
/var/ftp/lib(/.*)? all files system_u:object_r:lib_t:s0
/var/ftp/lib/ld[^/]*\.so(\.[^/]*)* regular file system_u:object_r:ld_so_t:s0
[root@server7 ~]semanage fcontext -a -t public_content_t '/var/ftp/pub(/.*)?'
[root@server7 ~]restorecon -FvvR /var/ftp/pub
[root@server7 ~]getsebool -a | grep ftp
[root@server7 ~]setsebool -P ftpd_anon_write on
进行安全上下文操作
####################################################################################
[root@server7 ~]# cp /etc/passwd /var/ftp/pub/
[root@server7 ~]# ls -ldZ /var/ftp/pub/
drwxr-xr-x root root ? /var/ftp/pub/
[root@server7 ~]# systemctl restart vsftpd
[root@server7 ~]# lftp localhost
lftp localhost:~> ls
drwxr-xr-x 2 0 0 19 Oct 15 09:08 pub
lftp localhost:/> cd pub/
lftp localhost:/pub> ls
-rw-r--r-- 1 0 0 1083 Oct 15 09:08 passwd
lftp localhost:/pub> get passwd
1083 bytes transferred
lftp localhost:/pub> exit
配置成功
4.vsftpd文件信息
/var/ftp ##默认发布目录
/etc/vsftpd ##配置目录
[root@server7 ~]# vim /etc/vsftpd/
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
anonymous_enable=YES|NO ##匿名用户登陆限制
#<匿名用户上传>
vim /etc/vsftpd/vsftpd.conf
write_enable=YES
anon_upload_enable=YES
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub
#<匿名用户家目录修改>
anon_root=/direcotry
#<匿名用户上传文件默认权限修改>
anon_umask=xxx
#<匿名用户建立目录>
anon_mkdir_write_enable=YES|NO
#<匿名用户下载>
anon_world_readable_only=YES|NO ##设定参数值为no表示匿名用户可以下载
#<匿名用户删除>
anon_other_write_enable=YES|NO
#<匿名用户使用的用户身份修改>
chown_uploads=YES
chown_username=student
#<最大上传速率>
anon_max_rate=102400
#<最大链接数>
max_clients=2
2)本地用户设定
local_enable=YES|NO ##本地用户登陆限制
write_enable=YES|NO ##本地用户写权限限制
#<本地用户家目录修改>
local_root=/directory
#<本地用户上传文件权限>
local_umask=xxx
#<限制本地用户浏览/目录>
所有用户被锁定到自己的家目录中
chroot_local_user=YES
chmod u-w /home/*
用户黑名单建立
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
用户白名单建立
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#<限制本地用户登陆>
vim /etc/vsftpd/ftpusers ##用户黑名单
vim /etc/vsftpd/user_list ##用户临时黑名单
用户白名单设定
userlist_deny=NO
/etc/vsftpd/user_list ##参数设定,此文件变成用户白名单,只在名单中出现的用户可以登陆ftp
注:更改配置文件后一定需要重启服务
1.vsftpd服务的安装
2.关于火墙的操作
[root@server7 ~]# systemctl status firewalld
firewalld.service - firewalld - dynamic firewall daemonLoaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled)
Active: active (running) since Sat 2016-10-15 04:40:26 EDT; 6min ago
Main PID: 2749 (firewalld)
CGroup: /system.slice/firewalld.service
└─2749 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
Oct 15 04:40:26 server7.example.com systemd[1]: Started firewalld - dynamic firewall daemon.
[root@server7 ~]# firewall-cmd --get-services
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https[root@server7 ~]# firewall-cmd --permanent --zone=public --add-service=ftp
success
[root@server7 ~]# firewall-cmd --reload
success
[root@server7 ~]# firewall-cmd --list-all
public (default, active)
interfaces: eth0
sources:
services: dhcpv6-client ftp ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
/////将策略写入
3.关于安全上下文SElinux(本次实验室是是关闭的)
Disabled
[root@server7 ~]# ll /var/ftp/pub/
total 0
[root@server7 ~]# lftp localhost
lftp localhost:~> ls
Interrupt
lftp localhost:~>
lftp localhost:~> exit
[root@server7 ~]# ls -ldZ /var/ftp/pub/
drwxr-xr-x root root ? /var/ftp/pub/
#############################若开启SElinux############################################
[root@server7 ~]# semanage fcontext -l | grep /var/ftp
/var/ftp(/.*)? all files system_u:object_r:public_content_t:s0
/var/ftp/bin(/.*)? all files system_u:object_r:bin_t:s0
/var/ftp/etc(/.*)? all files system_u:object_r:etc_t:s0
/var/ftp/lib(/.*)? all files system_u:object_r:lib_t:s0
/var/ftp/lib/ld[^/]*\.so(\.[^/]*)* regular file system_u:object_r:ld_so_t:s0
[root@server7 ~]semanage fcontext -a -t public_content_t '/var/ftp/pub(/.*)?'
[root@server7 ~]restorecon -FvvR /var/ftp/pub
[root@server7 ~]getsebool -a | grep ftp
[root@server7 ~]setsebool -P ftpd_anon_write on
进行安全上下文操作
####################################################################################
[root@server7 ~]# cp /etc/passwd /var/ftp/pub/
[root@server7 ~]# ls -ldZ /var/ftp/pub/
drwxr-xr-x root root ? /var/ftp/pub/
[root@server7 ~]# systemctl restart vsftpd
[root@server7 ~]# lftp localhost
lftp localhost:~> ls
drwxr-xr-x 2 0 0 19 Oct 15 09:08 pub
lftp localhost:/> cd pub/
lftp localhost:/pub> ls
-rw-r--r-- 1 0 0 1083 Oct 15 09:08 passwd
lftp localhost:/pub> get passwd
1083 bytes transferred
lftp localhost:/pub> exit
配置成功
4.vsftpd文件信息
/var/ftp ##默认发布目录
/etc/vsftpd ##配置目录
[root@server7 ~]# vim /etc/vsftpd/
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
root@server7 ~]# vim /etc/vsftpd/vsftpd.conf
1)匿名用户设定anonymous_enable=YES|NO ##匿名用户登陆限制
#<匿名用户上传>
vim /etc/vsftpd/vsftpd.conf
write_enable=YES
anon_upload_enable=YES
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub
#<匿名用户家目录修改>
anon_root=/direcotry
#<匿名用户上传文件默认权限修改>
anon_umask=xxx
#<匿名用户建立目录>
anon_mkdir_write_enable=YES|NO
#<匿名用户下载>
anon_world_readable_only=YES|NO ##设定参数值为no表示匿名用户可以下载
#<匿名用户删除>
anon_other_write_enable=YES|NO
#<匿名用户使用的用户身份修改>
chown_uploads=YES
chown_username=student
#<最大上传速率>
anon_max_rate=102400
#<最大链接数>
max_clients=2
2)本地用户设定
local_enable=YES|NO ##本地用户登陆限制
write_enable=YES|NO ##本地用户写权限限制
#<本地用户家目录修改>
local_root=/directory
#<本地用户上传文件权限>
local_umask=xxx
#<限制本地用户浏览/目录>
所有用户被锁定到自己的家目录中
chroot_local_user=YES
chmod u-w /home/*
用户黑名单建立
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
用户白名单建立
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#<限制本地用户登陆>
vim /etc/vsftpd/ftpusers ##用户黑名单
vim /etc/vsftpd/user_list ##用户临时黑名单
用户白名单设定
userlist_deny=NO
/etc/vsftpd/user_list ##参数设定,此文件变成用户白名单,只在名单中出现的用户可以登陆ftp
注:更改配置文件后一定需要重启服务