为了保证传输中的安全,我把这个最后一个需要加密的地方做完。

首先,先下载解压 pureftpd 最新版的源码,我这里直接顺带升级了~

哦,对,记得自己安装好 openssl- -方法这里不说了,之前的博文搞 Nginx 的时候也有。

wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.gz
tar xvzf pure-ftpd-1.0.42.tar.gz
cd pure-ftpd-1.0.42

然后是开始编译,我这里直接贴出我用的参数了,

./configure --prefix=/www/wdlinux/pureftpd-1.0.42 --with-mysql=/www/wdlinux/mysql --with-quotas --with-cookie --with-virtualhosts --with-virtualchroot --with-diraliases --with-sysquotas --with-ratios --with-altlog --with-paranoidmsg --with-shadow --with-welcomemsg --with-throttling --with-uploadscript --with-language=english --with-tls
make
make install

然后,进入源码目录下的 configuration-file 目录,将其下的两个文件拷贝至安装目标目录的 sbin ,记得按 y 覆盖。

cp configuration-file/pure-config.pl /www/wdlinux/pure-ftpd-1.0.42/sbin/
cp configuration-file/pure-config.py /www/wdlinux/pure-ftpd-1.0.42/sbin/

把 pureftpd 的旧版本链接换成新版本的,

rm -f /www/wdlinux/pureftpd
ln -s /www/wdlinux/pureftpd-1.0.42 /www/wdlinux/pureftpd

然后,就来申请证书。

到这里

https://buy.wosign.com/free/

申请一个你域名的证书,

为什么要这样做呢=- -=增加辨识程度- -增强安全性。

申请完了之后,下载下来,解压,选到给 nginx 的证书那里,

然后,在服务器上的 /etc/ssl/private 目录(没有就创建一个) 新建一个 pure-ftpd.pem,

先把 key 里面的东西复制进去,也就是私钥,然后是把 Crt 的粘在后面,证书

结构类似于这样

—–BEGIN RSA PRIVATE KEY—–
base64
—–END RSA PRIVATE KEY—–
—–BEGIN CERTIFICATE—–

base64
—–END CERTIFICATE—–
—–BEGIN CERTIFICATE—–

base64
—–END CERTIFICATE—–
—–BEGIN CERTIFICATE—–

base64
—–END CERTIFICATE—–

然后,保存,

然后编辑 /www/wdlinux/etc/pure-ftpd.conf

最后添加

TLS 3

然后,重启吧,就可以试试加密了,Filezilla 会要求信任证书,看好了就信任就行。

service pureftpd restart