ftp

    xiaoxiao2021-03-25  154

    1.环境配置

    [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]$

    2.ftp配置

    每次修改完配置文件之后,都需要重启服务

    [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#制作黑白名单

    3.登陆黑白名单设置

    [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

    4.ftp虚拟用户的设定

    [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 虚拟账户

    5.设定虚拟用户的家目录

    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/ USERusersubtoken= USER 关联shell和ftp :wq

    测试: 客户端:lftp IP -u username

    转载请注明原文地址: https://ju.6miu.com/read-12705.html

    最新回复(0)