Centos7搭建给予虚拟用户的FTP服务

在这里插入图片描述
1.安装vsftpd服务

yum -y install vsftpd

2.配置虚拟用户
2.1)创建虚拟账号数据库文件

[root@node1 vsftpd]# cat /etc/vsftpd/vusers.list
bob
pwd@123
tom
pwd@123
[root@node1 vsftpd]#

2.2)生成虚拟账户数据库文件

[root@node1 vsftpd]# db_load -T -t hash -f /etc/vsftpd/vusers.list /etc/vsftpd/vusers.db

2.3)添加虚拟账户映射创建FTP根目录

[root@node1 vsftpd]# mkdir -p /mnt/mfs/ftp
[root@node1 vsftpd]# useradd -d /mnt/mfs/ftp/ -s /sbin/nologin virtua

2.4)设置FTP根目录的权限

[root@node1 vsftpd]# chmod 755 /mnt/mfs/ftp/

3.配置PAM身份验证和创建虚拟账户权限目录
3.1)配置PAM验证

[root@node1 vsftpd]# vim /etc/pam.d/vsftpd.vu
#%PAM-1.0
auth    required        pam_userdb.so db=/etc/vsftpd/vusers
account required        pam_userdb.so db=/etc/vsftpd/vusers

3.2 创建虚拟账户权限目录

[root@node1 vsftpd]# mkdir /etc/vsftpd/vusers_dir

4.修改VSFTP主配置文件配置虚拟账户FTP
4.1)修改vsftpd.conf配置文件

[root@node1 vsftpd]# cat /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
chroot_local_user=YES
allow_writeable_chroot=YES
guest_enable=YES
guest_username=virtual
user_config_dir=/etc/vsftpd/vusers_dir/
pam_service_name=vsftpd.vu
userlist_enable=YES
tcp_wrappers=YES
[root@node1 vsftpd]#

4.2)创建虚拟账户权限文件

[root@node1 vsftpd]# touch /etc/vsftpd/vusers_dir/bob
[root@node1 vsftpd]# touch /etc/vsftpd/vusers_dir/tom

4.3)权限划分给bob用户设置访问FTP完全控制权限

[root@node1 vsftpd]# cat /etc/vsftpd/vusers_dir/bob
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
[root@node1 vsftpd]#

4.4)权限划分给tom用户设置只有上传权限

[root@node1 vsftpd]# cat /etc/vsftpd/vusers_dir/tom
anon_upload_enable=YES #改成NO权限变为只能下载
[root@node1 vsftpd]#

4.5)修改FTP根目录的所有者

[root@node1 vsftpd]# chown virtual:virtual /mnt/mfs/ftp/

4.6)启动FTP服务

[root@node1 vsftpd]# systemctl restart vsftpd

ps:遇到的问题 user_list

解决方法:touch /etc/vsftpd/user_list

FileZilla连接FTP提示:不安全的服务器,不支持 FTP over TLS
1.检查vsftpd师范支持ssl模块

[root@node1 vusers_dir]# ldd $(which vsftpd)|grep ssl
        libssl.so.10 => /lib64/libssl.so.10 (0x00007f1d5e682000)

2.生成ssl证书

[root@node1 vusers_dir]# openssl req -new -x509 -nodes -out vsftpd.pem -keyout vsftpd.pem

证书配置解析:

Generating a 2048 bit RSA private key
.............................................................+++
..........................................................................+++
writing new private key to 'vsftpd.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN  #国家名称(2个字母代码)[XX]:CN
State or Province Name (full name) []:CHINA   #国家或省名(全称)[]:中国
Locality Name (eg, city) [Default City]:CHINA #地名(如城市)[默认城市]:中国
Organization Name (eg, company) [Default Company Ltd]:ORG #组织名称(如公司)[默认公司有限公司]:ORG
Organizational Unit Name (eg, section) []:ORG   #组织单元名称(例如,节)[]:ORG
Common Name (eg, your name or your server's hostname) []:   #常用名称(例如,您的名称或服务器的主机名)[]:Name
Email Address []:  #电子邮件地址[]:EMAIL@163.com

移动证书文件

[root@node1 vusers_dir]# mv vsftpd.pem /etc/ssl/certs/
[root@node1 vusers_dir]# chmod 400 /etc/ssl/certs/vsftpd.pem

3.修改vsftpd.conf配置文件
在最后面天添加下列配置

ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
force_anon_logins_ssl=YES
force_anon_data_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
rsa_private_key_file=/etc/ssl/certs/vsftpd.pem

4.重启vsftpd服务

[root@node1 vsftpd]# systemctl restart vsftpd
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值