当前位置:首页 > 系统 > CentOS7安装PureFTP和vsFTP使用加密连接

CentOS7安装PureFTP和vsFTP使用加密连接

系统5年前 (2018-01-14)

CentOS7安装PureFTP和vsFTP使用加密连接

LNMP环境搭建好后,日后需要管理webroot路径下的文件,采用加密方式的FTP方式比较简单也安全


安装PureFTP

yum install pure-ftpd


配置PureFTP

vi /etc/pure-ftpd/pure-ftpd.conf
更改参数		
  VerboseLog no改为yes   #记录客户端日志
  NoAnonymous no改为yes   #拒绝匿名用户登录
添加注释
  #PAMAuthentication yes
删除注释
  PureDB /etc/pure-ftpd/pureftpd.pdb   #指定用户数据库文件路径
  UnixAuthentication yes   #启用unix认证
  CreateHomeDir yes
  IPV4Only yes   #只使用ipv4连接

设置自启

systemctl enable pure-ftpd
systemctl start pure-ftpd

在系统中添加相应的用户和组

groupadd ftpgroup
useradd ftpuser -g ftpgroup -d /usr/share/nginx/html/ -s /sbin/nologin 
pure-pw useradd ftptest -u ftpuser -g ftpgroup -d /usr/share/nginx/html/

回车后提示输入两次密码

pure-pw mkdb   #保存用户数据库


配置PureFTP加密

yum install openssl
vi /etc/pure-ftpd/pure-ftpd.conf
 删除注释
  TLS  1
  TLSCipherSuite HIGH

 创建证书目录

mkdir -p /etc/ssl/private/

创建证书

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

根据提示输入相关信息

Country Name (2 letter code) [XX]:    #输入国家名称
State or Province Name (full name) []:    #输入州或省名称
Locality Name (eg, city) [Default City]:   #输入城市名称
Organization Name (eg, company) [Default Company Ltd]:   #输入组织或公司名称
Organizational Unit Name (eg, section) []:    #输入部门名称
Common Name (eg, your name or your server's hostname) []:    #输入系统名称
Email Address []:   #输入邮件地址

更改证书权限

chmod 600 /etc/ssl/private/pure-ftpd.pem

重启ftp服务

systemctl restart pure-ftpd

客户端连接选择Require Explicit FTP over TLS

CentOS7安装PureFTP和vsFTP使用加密连接


安装vsftpd

yum -y install vsftpd


配置vsftpd

vi /etc/vsftpd/vsftpd.conf
更改注释
  anonymous_enable=NO   #拒绝匿名用户登录
  local_enable=YES               #默认开启允许本地用户登录vsftpd
  write_enable=YES              #默认开启启用对本地用户的写访问
  listen=YES                           #开启监听ipv4的21端口
添加注释
#listen_ipv6=YES                 #关闭ipv6监听
Job for vsftpd.service failed because the control process exited with error code. See "systemctl status vsftpd.service" and "journalctl -xe" for details.
(centos7默认未注释掉ipv6,若当前网络环境不支持ipv6,从而导致出现服务无法启动的错误)
删除注释
  chroot_local_user=NO    #将用户限制在本目录
  chroot_list_enable=YES   #允许使用用户清单文件
  chroot_list_file=/etc/vsftpd/chroot_list    #只允许chroot_list里面的user可以切换文件夹
添加配置
  allow_writeable_chroot=YES    #允许用户写目录

新建配置文件

vi /etc/vsftpd/chroot_list  
加入登陆用户名ftpuser

设置自启

systemctl start vsftpd.service
systemctl enable vsftpd.service

系统中添加用户

useradd -g root -M -d /usr/share/nginx/html/ -s /sbin/nologin ftpuser
passwd ftpuser

加目录权限

chown -R ftpuser.root /usr/share/nginx/html/


配置vsftpd加密

mkdir -p /etc/ssl/private/ 
openssl req -x509 -nodes -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem -days 365 -newkey rsa:2048
chmod 600 /etc/ssl/private/vsftpd.pem


增加配置

vi /etc/vsftpd/vsftpd.conf
ssl_enable=YES		                        #开启SSL	
ssl_tlsv1=YES		                        #使用TLS加密	
strict_ssl_read_eof=YES                     #上传数据使用SSL
strict_ssl_write_shutdown=YES        #下载数据使用SSL
force_local_data_ssl=YES                  #所有非匿名用户强制使用SSL发送和接受数据
force_local_logins_ssl=YES               #所有非匿名用户强制使用SSL进行登陆
rsa_cert_file=/etc/ssl/private/vsftpd.pem                  #证书路径
rsa_private_key_file=/etc/ssl/private/vsftpd.pem     #私钥路径
require_ssl_reuse=NO                      #要求所有SSL连接都会重用SSL会话
ssl_ciphers=HIGH                              #发现使用存在缺陷的特定算法的攻击者
debug_ssl=YES                                  #允许SSL调试日志
pasv_min_port=40000
pasv_max_port=41000
hide_file=.*


更改默认端口号

vim /etc/vsftpd/vsftpd.conf
添加
listen_port=2121

vim /etc/services
改为
ftp          2121/tcp

CentOS7安装PureFTP和vsFTP使用加密连接

重启服务

systemctl restart vsftpd

设置防火墙

firewall-cmd --zone=public --add-port=2121/tcp --permanent
firewall-cmd --zone=public --add-port=40000-41000/tcp --permanent
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload


本站所有文章均可随意转载,转载时请保留原文链接及作者。

本文链接:https://www.vos.cn/os/184.html

相关文章

解压出现gzip: stdin: not in gzip format

解压出现gzip: stdin: not in gzip format

今天解压quagga的tar包的时候一直提示gzip: stdin: not in gzip format的错误查看文件也是tar文件没问题最后试了下去掉z参数就好了tar -xvf&nbs...

利用LVM特性对EVE-NG硬盘分区扩容

利用LVM特性对EVE-NG硬盘分区扩容

下载的EVE-NG镜像中,存放模拟器镜像的分区太小了,上传几个cisco和juniper的模拟器就快满了,所以需要使用lvm特性对ubuntu server的硬盘分区进行扩容,首先先将eve-ng虚拟...

CentOS7 Postfix配置

CentOS7 Postfix配置

使用Postfix+Dovecot配置简单的邮件服务器安装Bindyum install bind-chroot配置Bind  编辑主配置文件,里面的各种参数用...

CentOS7 安装Oracle12cR2

CentOS7 安装Oracle12cR2

在CentOS7.8 Minimal版本下安装Oracle Database 12c Release 2一键安装oracle-single-install.zip系统环境准备sed -i&n...

CentOS6 安装Oracle11gR2

CentOS6 安装Oracle11gR2

使用oracle-rdbms-server-11gR2-preinstall工具,自动安装oracle所需的RPM包,自动创建oracle用户和dba、oinstall组,自动配置/etc/sysct...

Redhat 6.5网卡聚合绑定

Redhat 6.5网卡聚合绑定

linux下网卡bonding配置是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术,常用聚合模式为0,1,60(balance-rr)轮循(RR)...