Ubuntu搭建vsftpd(以及使用TLS/SSL证书加密)

Ubuntu搭建vsftp(以及使用TLS/SSL证书加密


帮同学解决个ftp使用加密搭建的问题,发现网上全是复制粘贴的重复帖子,按照步骤复现搭建完全不可行。hehe~

搭建FTP服务

本此搭建环境为ubuntu环境

首先更新下源文件,然后安装下vsftp,这里默认root权限(或者使用sudo也可以的)

apt-get update
apt-get install vsftpd

记得在云服务器上的安全组把端口开放,并在ubuntu开启ftp服务的端口

ufw allow 20/tcp
ufw allow 21/tcp
ufw status

安装了vsftp,其中默认配置文件地址为/etc/vsftpd.conf
我们首先来备份下配置文件

cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

创建ftp的目录,创建utfp用户,以及分配相应的权限(否则不能上传文件)

mkdir /home/uftp

useradd -d /home/uftp -s /bin/bash uftp

chmod 777 /home/utfp

新增allowed_users文件(运行使用的用户),内容为utfp

touch /etc/allowed_users
vi /etc/allowed_users

接下来编辑配置文件,在最后面新增内容

 vi /etc/vsftpd.conf
userlist_deny=NO
userlist_enable=YES
#允许登录的用户
userlist_file=/etc/allowed_users
seccomp_sandbox=NO
#默认ftp下载目录
local_root=/home/uftp/

local_enable=YES
#设置文件上传
write_enable=YES
#使用utf8
utf8_filesystem=YES

启动vsftpd服务

sudo /etc/init.d/vsftpd start 或者 systemctl start vsftpd

查看vsftpd状态

systemctl status vsftpd

在这里插入图片描述
此时ftp通信抓取ftp数据包,其中都是明文。接下来我们来改造这个ftp服务器,使其使用ssl/tls证书加密

使用 SSL/TLS 证书进行加密

先生成个证书

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

会提示你配置相关信息,提供参考

Country Name (2 letter code) [XX]:IN
State or Province Name (full name) []:Lower Parel
Locality Name (eg, city) [Default City]:Mumbai
Organization Name (eg, company) [Default Company Ltd]: mi-di.cn
Organizational Unit Name (eg, section) []:midi
Common Name (eg, your name or your server's hostname) []:midi
Email Address []:1076735024@qq.com

接下来开启TLS连接证书的通信

sudo ufw allow 990/tcp
sudo ufw allow 40000:50000/tcp
sudo ufw status

打开vsftpd配置文件

vi /etc/vsftpd.conf

进行下面的配置


rsa_cert_file=/etc/ssl/private/vsftpd.pem 
rsa_private_key_file=/etc/ssl/private/vsftpd.key 

ssl_enable=YES 
ssl_tlsv1=YES 
ssl_sslv2=NO 
ssl_sslv3=NO

allow_anon_ssl=NO 
force_local_data_ssl=YES 
force_local_logins_ssl=YES 

require_ssl_reuse=NO 
ssl_ciphers=HIGH 
pasv_min_port=40000 
pasv_max_port=50000 
debug_ssl=YES 

开启了DEBUG,其中出了什么问题可以去/var/log/vsftpd.log下进行查看

重启VSFTPD

systemctl restart vsftpd 

记得使用支持SSL/TLS加密的FTP软件哦,有一些是不支持的,所以连不上该服务器,推荐使用FileZilla

这样ftp传输的数据都加密了,也不怕中间人攻击了

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值