如何實(shí)現(xiàn)FTP的安全
實(shí)現(xiàn)安全的ftp訪(fǎng)問(wèn):
方法一:利用vsftp主配置文件中的tcp_wrappers (簡(jiǎn)易的防火墻)實(shí)現(xiàn);
方法二:利用CA認(rèn)證實(shí)現(xiàn)安全的ftp訪(fǎng)問(wèn)。
方法一的實(shí)現(xiàn)步驟:
1.主要修改的文件是/etc/hosts.allow /etc/hosts.deny
[root@mail ~]# ldd `which vsftpd`
2.控制實(shí)現(xiàn)的效果是只有192.168.1.0網(wǎng)絡(luò)的能訪(fǎng)問(wèn),其他的無(wú)法訪(fǎng)問(wèn)
[root@mail ~]# man 5 hosts.allow
[root@mail ~]# vim /etc/hosts.allow
vsftpd:192.168.1.0/255.255.255.0:allow (改寫(xiě)的東西)
[root@mail ~]# vim /etc/hosts.deny
vsftpd:all:deny
3.要實(shí)現(xiàn)針對(duì)于1.1的這個(gè)主機(jī)不能ftp。其他的都能。
[root@mail ~]# vim /etc/hosts.allow
vsftpd:192.168.1.1:deny
vsftpd:all:allow (添加的東西)
這樣就可以實(shí)現(xiàn)效果了。這里只改寫(xiě)了allow文件,那個(gè)deny文件已經(jīng)不起作用了,主要是系統(tǒng)先看allow的才看deny的
CA實(shí)現(xiàn)ftp的安全
[root@mail Server]# ll wir*
-r--r--r-- 328 root root 94405 2007-01-19 wireless-tools-28-2.el5.i386.rpm
-r--r--r-- 327 root root 24200 2007-01-19 wireless-tools-devel-28-2.el5.i386.rpm
-r--r--r-- 220 root root 11130359 2009-06-11 wireshark-1.0.8-1.el5_3.1.i386.rpm
-r--r--r-- 220 root root 686650 2009-06-11 wireshark-gnome-1.0.8-1.el5_3.1.i386.rpm
[root@mail Server]# yum install wireshark-1.0.8-1.el5_3.1.i386.rpm
[root@mail Server]# tshark -ni eth0 -R "tcp.dstport eq 21" (用于抓包通過(guò)這個(gè)端口的流量)
[root@mail ftproot]# cd /etc/pki/CA/
[root@mail pki]# vim ./tls/openssl.cnf
[root@mail CA]# touch index.txt serial
[root@mail CA]# mkdir certs newcerts crl
[root@mail pki]# echo "01" >serial
[root@mail CA]# openssl genrsa 1024 >private/cakey.pem
[root@mail CA]# chmod 600 private/*
[root@mail CA]# openssl req -new -key private/cakey.pem -x509 -out cacert.pem
[root@mail pki]# mkdir -pv /etc/vsftpd/certs
[root@mail pki]# mkdir -pv /etc/vsftpd/certs
mkdir: 已創(chuàng)建目錄 “/etc/vsftpd/certs”
[root@mail pki]# cd /etc/vsftpd/certs/
[root@mail certs]# openssl genrsa 1024 >vsftpd.key
[root@mail certs]# openssl req -new -key vsftpd.key -out vsftpd.crq
[root@mail certs]# openssl ca -in vsftpd.crq -out vsftpd.cert
[root@mail certs]# ll
總計(jì) 12
-rw-r--r-- 1 root root 3061 12-19 03:11 vsftpd.cert
-rw-r--r-- 1 root root 647 12-19 03:10 vsftpd.crq
-rw-r--r-- 1 root root 887 12-19 03:09 vsftpd.key
[root@mail certs]# chmod 600 /etc/pki/CA/certs/*
[root@mail certs]# ll
總計(jì) 12
-rw------- 1 root root 3061 12-19 03:11 vsftpd.cert
-rw------- 1 root root 647 12-19 03:10 vsftpd.crq
-rw------- 1 root root 887 12-19 03:09 vsftpd.key
實(shí)現(xiàn)服務(wù)器與CA的連接
[root@mail certs]# vim /etc/vsftpd/vsftpd.conf
force_local_data_ssl=YES #指定vsftpd強(qiáng)制非匿名用戶(hù)使用加密的數(shù)據(jù)傳輸
force_local_logins_ssl=YES #指定vsftpd強(qiáng)制非匿名用戶(hù)使用加密登錄
ssl_enable=YES #指定vsftpd支持加密協(xié)議
ssl_sslv2=YES #指定vsftpd支持安全套接字層v2
ssl_sslv3=YES #指定vsftpd支持安全套接字層v3
ssl_tlsv1=YES #指定vsftpd支持tls加密方式v1
rsa_cert_file=/etc/vsftpd/certs/vsftpd.cert #指定ftp-server的證書(shū)路徑
rsa_private_key_file=/etc/vsftpd/.sslkey/vsftpd.key #指定ftp-server的私路徑
6)只有l(wèi)ftp命令和第三方工具才支持訪(fǎng)問(wèn)ftps。下面以FlashFXP為例講述如何連接到ftps。
a.打開(kāi)FlashFXP后,選擇"站點(diǎn)"-->"站點(diǎn)管理器",新建一個(gè)站點(diǎn),如下圖: