免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1437 | 回复: 4
打印 上一主题 下一主题

为vsftpd加上ssl支持。(zt)-并求助 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-01-20 01:06 |只看该作者 |倒序浏览
转自:http://www.javaeye.com/post/166136
对于一些重要的/机密的文件的传输,
采用普通的ftp明文传输,有可能造成信息
泄漏,所以采用ssl加密传输不失是一种较好的
解决方案.
案例:
freebsd+vsftpd 2.03+ssl
先前已经安装了vsftpd2.03,现在要加入ssl支持。
切换到root权限下:
1 安装openssl,

root#cd /usr/ports/security/openssl
root#make install clean

2 重新安装vsftpd2.03,加入ssl支持。

root#/cd /usr/ports/ftp/vsftpd/
root#make deinstall
不知道 ssl的编译参数是多少?
查看Makefile文件。
root#more Makefile
看到有一行
.if !defined(WITHOUT_SSL) && defined(WITH_VSFTPD_SSL)

现在知道了
root#make WITH_VSFTPD_SSL=yes install clean

3 完成之后,创建证书:
openssl req -new -x509 -nodes -out vsftpd.pem -keyout vsftpd.pem
填写相关内容后,生成vsftpd.pem证书
将次证书放在。/usr/share/ssl/目录下

4 修改vsftpd.conf文件
root#ee /usr/local/etc/vsftpd.conf
加入一些内容:
ssl_enable=YES
ssl_sslv2=YES
force_local_data_ssl=YES
force_local_logins_ssl=YES
rsa_cert_file=/usr/share/ssl/vsftpd.pem

ssl_enable=YES 支持加密协议。
ssl_sslv2=YES 支持安全套接字层 v2
force_local_data_ssl=YES
force_local_logins_ssl=YES
这两行强制非匿名用户使用加密登陆和数据传输,如果设定为NO,则用户可以选择加密,也可以不加密。
rsa_cert_file=/usr/share/ssl/vsftpd.pem
指明证书的路径
默认为:=/usr/share/ssl/certs/vsftpd.pem
5 重起vsftpd,
使用客户端测试。
以FileZilla为例 Servertype 由ftp修改为FTP over SSL(explicit encryption),
同时修改传输模式 Edit->Settings->Firewall settings,选中Passive Mode(如果ftp在防火墙内部)
FileZilla是一个开源的ftp client,很好用的。哈哈。


另外一个:
http://bbs.chinaunix.net/viewthread.php?tid=543255
FTP client authenticated against username/passwords in LDAP database. Tested in Debian sarge

VSFTPD

1)enable SSL/PAM on  on building vsftpd.
2)/etc/vsftpd.conf

        listen=YES
        anonymous_enable=NO
        write_enable=YES
        local_enable=YES
        ssl_enable=YES
        force_local_logins_ssl=YES
        force_local_data_ssl=NO
        pam_service_name=vsftpd
        rsa_cert_file=/etc/ssl/certs/vsftpd.pem
        #following useful values for ftp server behind firewall
        pasv_enable=YES
        pasv_min_port=50005
        pasv_max_port=50010

SSL

Generate selfsinged certificates
openssl req -x509 -new  -nodes -out vsftpd.pem -keyout vsftpd.pem -days 365
#copy vsftpd.pem  /etc/ssl/certs/

LDAP

1)/etc/ldap/slapd.conf
        suffix "dc=sarge,dc=local"
other default value should work
2)/etc/ldap/ldap.conf
        host 127.0.0.1
        base dc=sarge,dc=local
other default values should work

3)/etc/pam_ldap.conf
        host 127.0.0.1
        base dc=sarge,dc=local
other default values should work

4)/etc/pam.d/vsftpd
        auth       required     /lib/security/pam_listfile.so item=user         sense=deny file=/etc/ftpusers onerr=succeed
        auth       sufficient   /lib/security/pam_ldap.so
        account    sufficient   /lib/security/pam_ldap.so

5)create test user
#vi importuser

dn: cn=war,dc=sarge, dc=local
cn: war
sn: war
objectclass: top
objectclass: person
objectclass: posixAccount
uid:war
userpassword:pass123
uidnumber:110
gidnumber:110
loginShell:/bin/sh
homeDirectory: /home/war

dn: cn=ldap,dc=sarge, dc=local
objectclass: top
objectclass: posixGroup
cn: ldap
gidnumber: 110
memberuid: war

#ldapadd -x -D "cn=admin,dc=sarge,dc=local" -f importuser -W

Or use ldapbrower/editor GUI tool to edit ldap database

[ 本帖最后由 上岸的鱼 于 2007-1-20 01:48 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2007-01-20 01:48 |只看该作者
我按照第一个配置,但是登录不上,不知道什么原因,我设置的是本地用户登录

论坛徽章:
0
3 [报告]
发表于 2007-01-20 02:06 |只看该作者
已经可以了,我从新下载了一个ftp客户端,原来是我的客户端版本比较老,或者是安装的不完全,对ssl支持不完整

论坛徽章:
0
4 [报告]
发表于 2007-01-20 08:48 |只看该作者
ssl_sslv2=YES 支持安全套接字层 v2


为什么不用 TLSv1 和 SSLv3 呢?SSLv2 已经因为安全问题而不被推荐使用了。

====

论坛徽章:
0
5 [报告]
发表于 2007-01-20 19:03 |只看该作者
原帖由 langue 于 2007-1-20 08:48 发表


为什么不用 TLSv1 和 SSLv3 呢?SSLv2 已经因为安全问题而不被推荐使用了。

====



画龙点睛
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP