0
点赞
收藏
分享

微信扫一扫

Linux系统(十三):FTP文件传输服务

实验目的:

掌握linux的ftp服务并配置;

实验需求:

-采用ftp虚拟用户的方式,添加三个用户:devadm、sales、salesadm

-用户访问及文件权限控制

*开放匿名访问,任何用户均可下载服务器/var/ftp/soft目录中的软件资料

*用户devadm可以对服务器的/var/ftp/soft/目录进行上传、删除等操作

*用户salesadm可以对服务器/var/market/目录中的市场活动、销售方案等资料。

*所有同ftp上传的文件,均去除非属主位的写权限(即掩码为022)

*对服务器中没有明确授权的其他目录,禁止任何用户访问

-传输速率和并发连接控制

*最多允许150个并发用户连接,每个ip并发连接数不超过5个

*匿名用户及sales用户的下载带宽限制为100KB/s

*salesadm用户的下载,上传带宽限制为200KB/s

实验步骤:

①安装vsftp服务;

[root@localhost ~]# rpm -ivh /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm 
准备中... ################################# [100%]
正在升级/安装...
1:vsftpd-3.0.2-28.el7 ################################# [100%]
[root@localhost ~]# rpm -q vsftpd
vsftpd-3.0.2-28.el7.x86_64

Linux系统(十三):FTP文件传输服务_配置文件

②建立虚拟用户基础文件;

[root@localhost ~]# vim /etc/vsftpd/ftpusers.txt
devadm
123
sales
123
saleadm
123

Linux系统(十三):FTP文件传输服务_配置文件_02

③使用yum下载yum -y install pam* libdb-utils*--skip-broken;

[root@localhost ~]# yum -y install pam* libdb-utils*--skip-broken

Linux系统(十三):FTP文件传输服务_配置文件_03

④使用db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db创建数据库文件

[root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db
[root@localhost ~]# ls /etc/vsftpd/vsftpd_login.db
/etc/vsftpd/vsftpd_login.db

Linux系统(十三):FTP文件传输服务_配置文件_04

⑤修改/etc/pam.d/vsftpd文件,在第一行添加

auth       sufficient   /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account    sufficient   /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

两行。

[root@localhost ~]# vim /etc/pam.d/vsftpd 
#%PAM-1.0
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
session optional pam_keyinit.so force revoke
auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth required pam_shells.so
auth include password-auth
account include password-auth
session required pam_loginuid.so
session include password-auth

Linux系统(十三):FTP文件传输服务_配置文件_05

⑥创建nologin的用户;

[root@localhost ~]# useradd -s /sbin/nologin ftpuser

Linux系统(十三):FTP文件传输服务_服务器_06

⑦先备份配置文件,编辑ftp的配置文件;

[root@localhost ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
ascii_upload_enable=YES
ascii_download_enable=YES
listen=YES
guest_enable=YES
guest_username=ftpuser
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/vsftpd_user_conf
virtual_use_local_privs=YES

⑧创建一个虚拟用户文件夹/etc/vsftpd/vsftpd_user_conf,在目录下创建一个配置文件devadm,添加

⑧重启ftp服务;

[root@localhost ~]# systemctl restart vsftpd

Linux系统(十三):FTP文件传输服务_vim_07


举报

相关推荐

0 条评论