天天看點

Vsftpd的安全性

Vsftpd的安全性

企業基本要求:

安裝一塊40G的新硬碟,并挂在到/ftp下。匿名使用者隻能下載下傳,本地使用者可以下載下傳和上傳,匿名的使用者主目錄為/ftp/public 

将本地FTP使用者的目錄改為為/ftp/home/下,每個本地使用者的最大空間為100M,本地使用者的最大速率為10MB/S   匿名使用者的最大速率為1M/S, 最大連接配接數位1000

每個ip最大連接配接3次。

安全要求

通過tcp_wrapper來禁止一些惡意的ip來通路

本地使用者必須使用FTPS 來加密傳輸,

使用iptables來限制隻有在工作時間才能通路FTP伺服器(擱淺)

寫的不是很詳細,不懂的哪可以留言

1、添加一塊40G的硬碟并分區、格式化。

<a href="http://blog.51cto.com/attachment/201212/221254437.png" target="_blank"></a>

格式化後

<a href="http://blog.51cto.com/attachment/201212/221303627.png" target="_blank"></a>

檢視分區表

<a href="http://blog.51cto.com/attachment/201212/221323655.png" target="_blank"></a>

如果沒識别,可以用 partprobe  /dev/sdb 指令

挂載

mkdir /ftp

mount /dev/sdb1 /ftp

Vim /etc/fstab

mount -o remount /dev/sdb1 或 mount -a  重新挂載

如下圖所示,已經可以磁盤配額了。。。

<a href="http://blog.51cto.com/attachment/201212/221402331.png" target="_blank"></a>

2、轉移使用者家目錄

mkdir  /ftp/public 匿名的根目錄

mkdir  /ftp/home  使用者的家目錄

<a href="http://blog.51cto.com/attachment/201212/221425751.png" target="_blank"></a>

預設的本地建立的使用者的家目錄在/home 下;

可以用useradd -D -b /ftp/home  更改預設值。

<a href="http://blog.51cto.com/attachment/201212/221452140.png" target="_blank"></a>

建立使用者user1和user2

[root@localhost /]# useradd user1

[root@localhost /]# echo "123" |passwd --stdin user1

3、對使用者user1和user2作磁盤配額

quotacheck  -auvg  

quotaon /dev/sdb1   開啟磁盤配額

edquota -u user1    編輯user1為100M 如下:

<a href="http://blog.51cto.com/attachment/201212/221506138.png" target="_blank"></a>

edquota -p user1 user2   user2和user1相同

4、安裝vsftpd服務,并啟動

rpm -ivh vsftpd-2.0.5-10.el5.i386.rpm

service vsftpd start

chkconfig vsftpd on

5、編輯vsftpd.conf 如下:

開啟 ftpd_banner=Welcome to wsm  FTP service.

     chroot_list_enable=YES

     chroot_list_file=/etc/vsftpd/chroot_list

 vim chroot_list 并且添加 user1和user2 (一行一個賬号)

再添加如下設定:

<a href="http://blog.51cto.com/attachment/201212/221536479.png" target="_blank"></a>

重新開機vsftpd服務

A  利用tcp_wrapper (簡易防火牆)來禁止ip位址為192.168.101.251的主機通路vsftpd服務

tcp_wrappers=YES 確定開啟

<a href="http://blog.51cto.com/attachment/201212/221558910.png" target="_blank"></a>

/etc/hosts.allow  允許的來源ip

/erc/hosts.deny  拒絕的來源    (預設先看hosts.allow檔案在看hosts.deny檔案,預設允許)

vim  /etc/hosts.allow  添加如下:

Vsftpd:192.168.101.251:deny

禁止2.0網段的來源ip登入

Vsftpd: 192.168.2.0/255.255.255.0 :deny      (服務:來源:動作)

Vsftpd: all :allow  (可以不寫。預設allow all)

B FTPS的實作資料的加密

首先,搭建CA認證中心

(關于CA 搭建可以參考http://abc16810.blog.51cto.com/3177586/1034802)

其次:建立自己的私鑰,請求,最後頒發自己的證書

mkdir /etc/vsftpd/certs 

openssl  genrsa 1024 &gt; vsftpd.key

openssl req -new -key vsftpd.key -out vsftpd.crq

openssl ca -in vsftpd.crq -out vsftpd.cert

chmod 600 vsftpd.key

 編輯vsftpd.conf 添加如下内容

<a href="http://blog.51cto.com/attachment/201212/221615463.png" target="_blank"></a>

重新開機 vsftpd服務

用第三方軟體 (如:cuteftp 進行 SSL — FTP連接配接)并用wireshark 進行抓包如下:

<a href="http://blog.51cto.com/attachment/201212/221630407.png" target="_blank"></a>

<a href="http://blog.51cto.com/attachment/201212/221653197.png" target="_blank"></a>

已經基本符合要求了。。

本文轉自 abc16810 51CTO部落格,原文連結:http://blog.51cto.com/abc16810/1092521

繼續閱讀