基于SSL的VSFTP

基于SSL的VSFTP安装配置
 
升级SSL:升级SSL
 
 
1.下载安装vsftpd

      到官方下载最新版本的vsftpd源码包 http://vsftpd.beasts.org/

# tar zxvf vsftpd-2.3.2.tar.gz
# cd vsftpd-2.3.2
# vi  builddefs.h

修改builddefs.h文件,使VSFTPD支持SSL:

#undef VSF_BUILD_TCPWRAPPERS
#define VSF_BUILD_PAM
#undef VSF_BUILD_SSL

修改为:

#undef VSF_BUILD_TCPWRAPPERS
#define VSF_BUILD_PAM
#define VSF_BUILD_SSL

开始编译安装:
# make
# make install

mkdir /etc/vsftpd

mkdir /etc/vsftpd/ssl

cp vsftpd.conf /etc/vsftpd

cp RedHat/vsftpd.pam /etc/pam.d/vsftpd

 

2.创建SSL证书:

# /usr/local/openssl/bin/openssl req -new -x509 -nodes -out vsftpd.pem -keyout vsftpd.pem
# cp vsftpd.pem /etc/vsftpd/ssl/vsftpd.pem          //默认vsftpd的配置文件中的证书路径# vi  /etc/vsftpd/vsftpd.userlist     //加入允许本地登录的用户名
# vi  /etc/vsftpd.conf

3.以下是配置文件中的几个关键参数

listen=YES
listen_port=21
# 禁止anonymous登录
anonymous_enable=NO
anon_world_readable_only=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
chroot_local_user=YES
# 仅有vsftpd.user_list中制定的用户可登录vsftpd
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.userlist
local_enable=YES
write_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ls_recurse_enable=NO

pam_service_name=vsftpd //这里一定要加上,不然连接的时候会报:

                                  //[R] USER kevin
                                  //[R] 331 Please specify the password.
                                  //[R] PASS (hidden)
                                  //[R] 530 Login incorrect.
                                  //[R] 连接失败

 

ssl_enable=YES              //SSL开关,开启ssl_enable,否则以下选项均无效
ssl_tlsv1=YES                //另外几个选择 ssl_sslv2 ssl_sslv3
allow_anon_ssl=NO      //是否让匿名用户使用ssl
force_local_data_ssl=YES     //强制使用openssl加密数据
force_local_logins_ssl=YES   //强制使用ssl登录
rsa_cert_file=/etc/vsftpd/ssl/vsftpd.pem  //指定证书文件的路径

具体配置参数可以参考:http://vsftpd.beasts.org/vsftpd_conf.html 

其中 /etc/vsftpd/vsftpd.userlist 目录上一定要把允许连接服务器的用记加上不然报错:

[R] USER kevin
[R] 530 Permission denied.
[R] 连接失败

vsftpd.userlist内容如下

kevin
dengxb
kevindeng

 

配置 基本完成

 

4.启动VSFTPD

/usr/local/sbin/vsftpd /etc/vsftpd/vsftpd.conf &

5.客户端使用Flashfxp连接

配置

 
 
 
 
 
第一次连接的时候会弹出如下图
 
 
 
选择 接受并保存 以后就不会再弹出来了
 
连接成功如下图:
 
 
 
 

作者: kevinadmin   发布时间: 2010-09-07