vsftpd的ssl配置

简介:

1.安装vsftpd

使用yum 安装vsftpd

[root@vps] yum install vsftpd
或者采用
rpm安装

[root@vps] rpm -Uvh http://centos.mirror.vpslink.com/centos-4/4.3/os/i386/CentOS/RPMS/vsftpd-2.0.1-5.EL4.3.i386.rpm

 

我们来确认一下安装的vsftpd是否支持ssl加密

 

[root@vps] ldd /usr/sbin/vsftpd | grep libssl
 libssl.so.4 => /lib/libssl.so.4 (0x4001e000)
 

如果能看到类似上边的输出,则说明此vsftpd编译的时候加入了libssl支持。否则,你需要重新安装支持sslvsftpd或者自己编译vsftpd,加入 ssl支持。

 

如果自己从源码编译vsftpd,则需要修改源码中的builddefs.h文件使vsftpd支持SSL

# vi  builddefs.h

原始设置为:

#undef VSF_BUILD_TCPWRAPPERS

#define VSF_BUILD_PAM

#undef VSF_BUILD_SSL

修改为:

#define VSF_BUILD_TCPWRAPPERS

#define VSF_BUILD_PAM

#define VSF_BUILD_SSL

 

2.利用OpenSSL生成证书

[root@vps] openssl req -x509 -nodes -days 365 -newkey rsa:1024 \
 -keyout /etc/vsftpd/vsftpd.pem \
 -out /etc/vsftpd/vsftpd.pem
 

其中"-days 365"声明证书的有效期是一年。

接下来的过程需要你输入一些相关的国家,地区,位置,组织名称,common name等信息。

回答这些信息以后系统会将生成完的证书vsftpd.pem文件保存在/etc/vsftpd目录下。

 

3.修改/etc/vsftpd/vsftpd.conf文件

增加下面这些内容,这些参数是与ssl有关的。

 ssl_enable=YES
 allow_anon_ssl=NO
 force_local_data_ssl=NO
 force_local_logins_ssl=NO
 ssl_tlsv1=YES
 ssl_sslv2=NO
 ssl_sslv3=NO
 rsa_cert_file=/etc/vsftpd/vsftpd.pem


 

如果设置force_local_logins_ssl=YES,那么会强制用户登录时采用支持TLS/SSL认证的ftp客户端。如果设置为NO的话,则用户可以选择使用ssl加密或者不加密。


 

4.重新启动vsftpd服务

[root@vps] /etc/rc.d/init.d/vsftpd restart

 
 

flashfxp等ftp客户端设置ssl选项,如下图:

 


 


 

 
 

附记:我们公司出口有个ISA2006做NAT,刚装好vsftpd的时候总是不能upload,检查了各种权限设置都正常,无奈一google发现原来是Mircosoft ISA搞得鬼。解决方法很简单,右键单击相应的rule,然后选择"Configure FTP",将"Read Only"前面的钩去掉,然后点OK,然后Apply即可。

 


 

另外ISA 2006不支持FTPS协议,要解决这个问题请参考这片文档:

Enabling Secure FTP Access Through ISA 2006 Firewalls




本文转自holy2009 51CTO博客,原文链接:http://blog.51cto.com/holy2010/511696
相关文章
|
1月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
1月前
|
Linux 应用服务中间件 Shell
利用 ACME 实现SSL证书自动化配置更新
【10月更文挑战第11天】多项式承诺原理是密码学中的重要工具,允许证明者向验证者承诺一个多项式并证明其某些性质。Kate多项式承诺是一种知名方案,基于有限域上的多项式表示,通过生成和验证简洁的证明来确保多项式的正确性和隐私。其安全性基于离散对数假设。应用场景包括区块链中的零知识证明和可验证计算,以及多方计算和身份认证协议。在区块链中,Kate多项式承诺可用于保护隐私币和智能合约中的敏感信息。
|
21天前
|
弹性计算 应用服务中间件 网络安全
ECS服务器使用:SSL证书安装、配置和问题定位指南
本文简要介绍了SSL证书的生成与部署方法,包括使用OpenSSL生成自签名证书和从CA获取证书的步骤,以及在Apache和Nginx服务器上的配置方法。此外,还提供了测试证书是否生效的方法和常见问题的解决策略,帮助确保证书正确安装并解决调试过程中可能遇到的问题。
111 0
|
3月前
|
jenkins 应用服务中间件 持续交付
如何配置 Nginx 作为 Jenkins 的反向代理并启用 SSL 加密
如何配置 Nginx 作为 Jenkins 的反向代理并启用 SSL 加密
167 8
|
3月前
|
负载均衡 前端开发 应用服务中间件
使用Nginx配置SSL以及部署前端项目
本文介绍了如何使用Nginx配置SSL证书以启用HTTPS,并展示了如何通过Nginx部署前端项目,包括配置SSL证书、设置代理和负载均衡的示例。
110 2
|
3月前
|
存储 网络安全 Windows
【Azure 云服务】为Azure云服务配置上自签名的SSL证书步骤
【Azure 云服务】为Azure云服务配置上自签名的SSL证书步骤
|
4月前
|
应用服务中间件 网络安全 nginx
使用Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书
本文引导如何用Nginx Proxy Manager (NPM)配置Halo的反向代理与SSL证书。NPM简化了Nginx的配置流程,适合无Nginx基础的用户。安装NPM无需额外安装Nginx,避免端口冲突。通过`docker-compose.yaml`启动NPM服务,并映射必要的端口。配置Halo反向代理需登录NPM面板,添加代理主机,设置域名、转发IP等参数。NPM支持自动申请与续期SSL证书,确保网站安全访问。更多Halo安装细节,请参考[如何在Linux云服务器上通过Docker Compose部署安装Halo](https://zhangfeidezhu.com/?p=631).
232 0
使用Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书
|
3月前
|
缓存 Ubuntu 应用服务中间件
如何在 Ubuntu 14.04 上配置 Varnish Cache 4.0 实现 SSL 终止
如何在 Ubuntu 14.04 上配置 Varnish Cache 4.0 实现 SSL 终止
47 0
|
3月前
|
存储 安全 Linux
如何在 CentOS VPS 上配置 vsftpd 使用 SSL/TLS
如何在 CentOS VPS 上配置 vsftpd 使用 SSL/TLS
62 0
|
3月前
|
应用服务中间件 Linux API
Linux 利用 Cloudflare API 配置 acme.sh 自动续签 SSL (Apache、Nginx适用)
安装acme.sh工具,命令为`curl https://get.acme.sh | sh -s email=你的邮箱`。接着配置Cloudflare API,创建并记录API令牌及Zone ID。最后通过`acme.sh --issue -d 你的域名 --dns dns_cf`签发SSL证书,对于Nginx可使用`acme.sh --install-cert`命令安装证书,并设置自动重载Nginx服务。