VSFTPd+ssl配置node
測試環境:bash
Centos 6.5 X64位tcp
ftp軟件爲filezillaide
1、查看是否有安裝vsftpd工具
[root@nfsclient~]# rpm -qa vsftpd
若是有能夠刪除測試
[root@nfsclient~]# rpm -e nodeps vsftpd
安裝vsftpdui
root@nfsclient~]# yum install -y vsftpd
2、啓動測試spa
[root@nfsclient ~]# service vsftpd start Starting vsftpd for vsftpd: [ OK ] [root@nfsclient ~]# service vsftpd status vsftpd (pid 3558) is running... [root@nfsclient ~]# service vsftpd stop Shutting down vsftpd: [ OK ]
3、配置vsftpdrest
a,查找安裝位置blog
[root@nfsclient ~]# whereis vsftpd vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
b,進入目錄
[root@nfsclient vsftpd]#cd /e tc/vsftpd [root@nfsclient vsftpd]# ls ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
c、修改以前先備份
[root@nfsclient vsftpd]# cp vsftpd.confvsftpd.conf.bak [root@nfsclient vsftpd]# ls ftpusers user_list vsftpd.conf vsftpd.conf.bak vsftpd_conf_migrate.sh
d、修改默認配置文件
anonymous_enable=NO chroot_local_user=NO chroot_list_enable=YES userlist_enable=NO user_config_dir=/etc/vsftpd/upload_user_config
重要配置說明:
1.#是否能夠瀏覽非主目錄的內容,NO表示不能夠
chroot_local_user=NO
#這行必需要有, 不然文件vsftpd.chroot_list不會起做用
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
2.當建立虛擬賬戶時,須要給每一個賬號都配置好權限,所以這些配置文件與賬號同名,生成在user_config_dir=/etc/vsftpd/upload_user_config(vsftpd.conf中)這個目錄下。
四、配置pam.d
[root@nfsclient vsftpd]# cp /etc/pam.d/vsftpd/etc/pam.d/vsftpd.bak [root@nfsclient vsftpd]# vi /etc/pam.d/vsftpd
對pam.d進行配置,註釋掉裏面所有內容,並添加
#%PAM-1.0 # 32-bit #authrequired /lib/security/pam_userdb.so db=/etc/vsftpd/login #accountrequired /lib/security/pam_userdb.so db=/etc/vsftpd/login # 64-bit authsufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login
5、建立用戶
[root@nfsclient vsftpd]# mkdir-p /etc/vsftpd/upload/gxl [root@nfsclient vsftpd]# useradd -d /etc/vsftpd/upload/gxl/ -g ftp-s /sbin/nologin gxl useradd: warning: the home directory already exists. Not copying any file from skel directory into it. [root@nfsclient vsftpd]# chown -R gxl:ftp /etc/vsftpd/upload/gxl/ [root@nfsclient vsftpd]# chmod -R 700 /etc/vsftpd/upload/gxl
6、對沒有配置ssl的進行抓包測試
安裝抓包工具:
[root@nfsser vsftpd]# yum install wireshark–y
進行抓包
[root@nfsser vsftpd]# tshark -ni eth0 -R"tcp.dstport eq 21"
FTP軟件顯示鏈接狀態
開啓抓包進行抓包:
顯示賬號和密碼均爲ywgxl
7、關於ssl的配置
A、查看是否支持ssl
[root@nfsser vsftpd]# ldd `which vsftpd`|grep ssl libssl.so.10=> /usr/lib64/libssl.so.10 (0x00007f1b5d1c5000)
若是有出現 libssl.so 的字樣,就是有支持!這樣纔可以繼續下一步
B、 生成ssl密鑰並複製到/etc/ssl/certs目錄下(密鑰有效期爲一個月)
[root@nfsser vsftpd]openssl req -new-x509 -nodes -out vsftpd.pem -keyout vsftpd.pem [root@nfsser vsftpd]cp vsftpd.pem/etc/ssl/certs/vsftpd.pem [root@nfsser vsftpd]chmod 400/etc/ssl/certs/vsftpd.pem
C、修改可支持ssl的vsftpd配置文件,追加到vsftpd.conf結尾
# ssl config
ssl_enable=YES allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES force_anon_logins_ssl=YES force_anon_data_ssl=YES ssl_tlsv1=YES ssl_sslv2=NO ssl_sslv3=NO require_ssl_reuse=NO ssl_ciphers=HIGH rsa_cert_file=/etc/ssl/certs/vsftpd.pem rsa_private_key_file=/etc/ssl/certs/vsftpd.pem pasv_max_port=65535 pasv_min_port=64000
8、重啓vsftpd服務
[root@nfsser vsftpd]# service vsftpd restart Shutting down vsftpd: [ OK ] Starting vsftpd for vsftpd: [ OK ]
在重啓vsftpd服務後,FTP軟件鏈接第一次會出現以下提示。
8、驗證配置ssl後登陸並抓包
抓包數據:
抓包顯示用戶名和密碼爲數字
測試賬號和密碼爲ywgxl