找回密码
 注册
查看: 1874|回复: 21

vsftpd--骨灰级管理员,开发者进!!!!!!!!!!!

[复制链接]
发表于 2004-10-20 16:27:51 | 显示全部楼层 |阅读模式
请问有没有人做过vsftpd+ssl???我在国外的一个网站上看到有人正在开发,不知道国内有没有人写完了代码?能否实现??如果要采用口令加密的话,那么有什么好的方法?
vsftpd的log日志默认只是一个文件,能不能有办法进行按天记录???用什么软件?
vsftpd的日志默认路径是/var/log,能不能更改???怎么改???(不 用ln做软连接)
谢谢!
发表于 2004-10-20 17:12:12 | 显示全部楼层
vsftpd+ssl???我不清楚!
vsftpd的log日志默认只是一个文件,能不能有办法进行按天记录?可以每天打包嘛!
vsftpd的日志默认路径是/var/log,能不能更改?可以更改!!!修改vsftpd的配置文件即可!xferlog_file=/var/log/vsftpd.log  将“=”后改为你需要的路径。
回复

使用道具 举报

发表于 2004-10-20 21:50:16 | 显示全部楼层
vsftpd 2.0.1及以后版本就已经支持这个了ssl了。
先建立key:

/usr/bin/openssl genrsa -des3 4096 > /etc/vsftpd/ssl.key
/usr/bin/openssl req -new -key ./ssl.key -x509 -out ./server.crt

   上面红色的两行命令用来建立证书,第一行生成一个CA密钥,加密强度为des3级别,用的4096bit的加密方案,用默认的试试,4096的好像vsftpd还不认。
   本来得到一个.crt的证书文件是先要做一个证书签署请求,也就是.csr的文件,然后将此文件发送到verisign等地方由它验证后得到一个.crt文件。这里把它简化了一下,直接自己签了个证书。
   第二行实现的就是用一开始做好的CA密钥生成一个签名格式为X509的自签名的CA证书。

openssl req -new -x509 -nodes -out vsftpd.pem -keyout vsftpd.pem

蓝色的这行是另一种做证书的方法。
然后编辑vsftpd.conf

具体选项如下 :

ssl_enable=YES

# Only applies if ssl_enable is activated. If enabled, this option will
# permit SSL v2 protocol connections. TLS v1 connections are preferred.
ssl_sslv2=YES

# Only applies if ssl_enable is activated. If enabled, this option will
# permit SSL v3 protocol connections. TLS v1 connections are preferred.
ssl_sslv3=YES

# Only applies if ssl_enable is activated. If enabled, this option will
# permit TLS v1 protocol connections. TLS v1 connections are preferred.
ssl_tlsv1=YES
注:好像gmail用的就是这个,如果在不支持它的浏览器上登入gmail会报出一个警告。

# This option specifies the location of the RSA certificate to use for SSL encrypted connections.
# Default: /usr/share/ssl/certs/vsftpd.pem
#rsa_cert_file=/etc/vsftpd/server.crt
rsa_cert_file=/etc/vsftpd/ssl.key

# This option can be used to select which SSL ciphers vsftpd will allow
# for encrpyted SSL connections. See the ciphers man page for further details. Note that
# restricting ciphers can be a useful security precaution as it prevents malicious remote
# parties forcing a cipher which they have found problems with.
ssl_ciphers=des3 :这是允许多大加的密强度

# Only applies if ssl_enable is activated. If activated, all non-anonymous
# logins are forced to use a secure SSL connection in order to send the password.
force_local_logins_ssl=NO

# Only applies if ssl_enable is activated. If activated, all non-anonymous
# logins are forced to use a secure SSL connection in order to send and
# receive data on data connections.
force_local_data_ssl=NO
然后重启vsftpd 试试,good luck!
回复

使用道具 举报

 楼主| 发表于 2004-10-21 09:01:12 | 显示全部楼层
首先谢谢斑竹的大力支持,我马上做实验,不过有个帖子希望你能看看
http://lists.debian.org/debian-user-french/2004/09/msg00192.html


2楼的朋友,你可以把xferlog_file=  后面的路径改了,看看是否好用!
回复

使用道具 举报

 楼主| 发表于 2004-10-21 11:35:34 | 显示全部楼层
最新的vsftpd-2.0.1-5.i386.rpm包,我已经装上去了。并且配置好了vsftpd.conf文件,然后service vsftpd start,提示OK,但是“netstat -tunl”却看不到本地的21端口被开启!用“ps -aux | grep ftp”没有信息返回?(除了grep ftp外)为什么??实在是没有搞明白。
回复

使用道具 举报

 楼主| 发表于 2004-10-21 11:58:01 | 显示全部楼层
在vsftpd.conf里把ssl_enable=YES打开,然后在重起服务,报错FAILED。晕
进去把ssl_enable=NO,然后保存。service vsftpd restart OK。狂晕?!
难道vsftpd-2.0.1-5不支持openssl???但是vsftpd.beasts.org上说支持呀!这是vsftpd的开发网站呀,但是他的所有EXAMPLE都没有ssl的例子,怀疑!
回复

使用道具 举报

发表于 2004-10-21 12:22:00 | 显示全部楼层
ftp://vsftpd.beasts.org/users/cevans/untar/vsftpd-2.0.1/README.ssl
回复

使用道具 举报

 楼主| 发表于 2004-10-21 13:08:15 | 显示全部楼层
我看了,但是帮助不是很大呀,“builddefs.h”这个文件我的系统里没有。
不知道楼上的做过实验没有。
回复

使用道具 举报

发表于 2004-10-21 13:29:41 | 显示全部楼层
你要用开启了 SSL 支持的vsftpd ,基本上只能自己从源代码重新编译。
RH 的 RPM 包是不会给你 SSL 支持的。
“By default, SSL support is disabled both at compile time and at runtime.”

“vsftpd built with OpenSSL support. This is a decision your vsftpd packager made...”
回复

使用道具 举报

发表于 2004-10-21 18:13:42 | 显示全部楼层
首先谢谢斑竹的大力支持,我马上做实验,不过有个帖子希望你能看看
http://lists.debian.org/debian-user-french/2004/09/msg00192.html


2楼的朋友,你可以把xferlog_file= 后面的路径改了,看看是否好用!

这个帖子我看过,最后就是因为4096的问题所以vsftpd没起来,换成1024或者直接用蓝色的那行就可以了。
回复

使用道具 举报

 楼主| 发表于 2004-10-22 08:56:08 | 显示全部楼层
link_fan,你在vsftpd.conf里把ssl打开了吗???ssl_enable=YES
然后你重起service vsftpd restart,然后在netstat -tunl 本地监听21端口吗??我的不监听呀,把ssl_enable=YES注释掉就ok了。怎么会这样呢?
dannycat给我的解释是要编译代码的,晕。我现在可能还没有到那个深度。
link_fan,你的实验做过吗???做成功了吗??如果成功的,你把你的环境告诉我好吗???谢谢
回复

使用道具 举报

 楼主| 发表于 2004-10-22 09:04:40 | 显示全部楼层
我的系统是redhat AS3,装的是vsftpd-2.0.1-5.i386.rpm
回复

使用道具 举报

发表于 2004-10-22 19:27:55 | 显示全部楼层
我用的也是AS3,rpm包确实不行,必须手工编译。
1, 下载源代码,解压并进入解压后的目录。
2,  修改builddefs.h(这个文件在源代码目录里有),按照README.ssl修改就可以了。
3,  接下来在INSTALL里写的是直接“make”就可以了,但是在redhat as3中还不行。原因在于
     这个kerberos,redhat把kerberos的库文件和头文件不是放在标准的/usr/include和/usr/lib中的,
     而是放在/usr/kerberos/include和/usr/kerberos/lib中的。我的解决办法比较简单,直接拷贝头
     文件到/usr/include中,并把几个需要的库文件在/usr/lib中做好链接,具体是libcom_err.so.3.0
     和libdes425.so.3.0,然后“make”就应该没问题了。
4,  修改配置文件,加入ssl的支持,我用的是xinetd的方式(因为make完后在源代码目录里就会
     有一个xinetd.d的目录),拷贝里面的vsftpd到/etc/xinetd.d中就可以了。
5,  deamon方式启动没有成功,报错为没有配置以deamon方式启动。不知何故
回复

使用道具 举报

 楼主| 发表于 2004-10-25 09:16:13 | 显示全部楼层
谢谢斑竹,我在redhat AS3中碰到的make错误和你的一样,谢谢你给我指点.我先做实验了.
回复

使用道具 举报

 楼主| 发表于 2004-10-25 13:26:19 | 显示全部楼层
在斑竹的指点下,make和make install都成功了,但是新问题又出现了,首先是证书的问题,/usr/bin/openssl genrsa -des3 4096 > /etc/vsftpd/ssl.key
512,1024,2048,4096我都试了,不行!一直报500 OOPS:SSL:cannot load RSA key
/usr/bin/openssl req -new -key ./ssl.key -x509 -out ./server.crt 也不行,也是报同样的错。
openssl genrsa -out vsftpd_key.pem 1024
openssl req -new -x509 -key vsftpd_key.pem -out vsftpd_cert.pem
cat vsftpd_key.pem >> vsftpd_cert.pem
可以,提示如下
504 Unknown AUTH type
KERBEROS_V4 rejected as an authentication type
Name:XXXXXX
password:XXXXXX
ok可以进入ftp的目录,但是用commview抓包,明文!username:test
password:test。靠!郁闷
随后在vsftpd.conf里设置force_local_logins_ssl=YES
保存退出,重新启动xinetd服务,ftp 192.168.1.1
504 Unknown AUTH type
KERBEROS_V4 rejected as an authentication type
Name:XXXXXX
Non-anonymous sessions must use encryption
快疯了,HELP!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2025-2-25 01:05 , Processed in 0.034334 second(s), 15 queries .

© 2001-2025 Discuz! Team. Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表