亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 901 | 回復: 0
打印 上一主題 下一主題

如何建立安全的ProFTPD應用經驗談(全) [復制鏈接]

論壇徽章:
0
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2009-02-03 01:16 |只看該作者 |倒序瀏覽
ProFTPD是針對Wu-FTP的弱項而開發(fā)的,除了改進的安全性,還具備許多Wu-FTP沒有的特點,能
以Stand-alone、xinetd模式運行等。ProFTP已經成為繼Wu-FTP之后最為流行的FTP服務器軟件,越來越多的站點選用它構筑安全
高效的FTP站點,ProFTP配置方便,并有MySQL和Quota模塊可供選擇,利用它們的完美結合可以實現(xiàn)非系統(tǒng)賬號的管理和用戶磁盤的限制。
一、 ProFTPD服務面臨的安全隱患
ProFTPD服務面臨的安全隱患主要包括:緩沖區(qū)溢出攻擊(Buffer Overflow)、數據嗅探和匿名訪問缺陷。
1、緩沖區(qū)溢出攻擊

期以來,緩沖區(qū)溢出已經成為計算機系統(tǒng)的一個問題。利用計算機緩沖區(qū)溢出漏洞進行攻擊的最著名的案例是莫里斯蠕蟲,發(fā)生在1988年11月。但即使其危害
人所共知,緩沖區(qū)溢出仍然是現(xiàn)在入侵的一個重要手段。緩沖區(qū)溢出的概念:緩沖區(qū)溢出好比是將一百公斤貨物放進一個只能裝十公斤的容器里。
緩沖區(qū)溢出漏洞是一個困擾了安全專家30多年的難題。簡單來說,它是由于編程機制而導致的、在軟件中出現(xiàn)的內存錯誤。這樣的內存錯誤使得黑客可以運行一段惡意代碼來破壞系統(tǒng)正常地運行,甚至獲得整個系統(tǒng)的控制權。
2、數據嗅探
FTP
是傳統(tǒng)的網絡服務程序,在本質上是不安全的,因為它們在網絡上用明文傳送口令和數據,別有用心的人非常容易就可以截獲這些口令和數據。而且,這些服務程序
的安全驗證方式也是有其弱點的,就是很容易受到"中間人"(man-in-the-middle)這種方式的攻擊。
所謂"中間人"的
攻擊方式,就是"中間人"冒充真正的服務器接收你傳給服務器的數據,然后再冒充你把數據傳給真正的服務器。服務器和你之間的數據傳送被"中間人"轉手后做
了手腳之后,就會出現(xiàn)很嚴重的問題。
截獲這些口令的方式主要為暴力破解。另外使用sniffer程序監(jiān)視網絡封包捕捉FTP開始的會話信息,便可順手截獲root密碼。
3. 匿名訪問缺陷
匿名訪問方式在FTP服務當中被廣泛的支持,但是由于匿名FTP不需要真正的身份驗證,因此很容易為入侵者提供一個訪問通道,配合緩沖區(qū)溢出攻擊,會造成很嚴重的后果。
4. 拒絕服務攻擊

絕服務是一種技術含量低,但攻擊效果明顯的攻擊方式,受到這種攻擊時,服務器或網絡設備長時間不能正常提供服務,并且由于某些網絡通訊協(xié)議本身固有的缺
陷,難以提出一個行之有效的解決辦法。防范拒絕服務攻擊需要我們從全局去部署防御拒絕服務攻擊策略,多種策略聯(lián)動防范,將拒絕服務攻擊的危害降至最低。
二、 加固ProFTPD服務端
1.升級版本
升級陳舊的ProFTPD版本,因為早期的ProFTPD版本存在的安全漏洞。對于一個新配置的ProFTPD服務器來說使用最新穩(wěn)定版本是最明智的選擇,可以在其官方網站下載其源代碼進行編譯。ProFTPD最新版本是1.2.10,官方網址:
http://www.ProFTPD.org

2.使用xinetd方式運行ProFTPD
ProFTPD能以Stand-alone、xinetd兩種模式運行,當用戶賬號比較少又經常需要連接到ProFTPD服務器時推薦使用xinetd模式運行。使用xinetd方式運行ProFTPD可以有效防范DoS攻擊。
從傳統(tǒng)的守護進程的概念可以看出,對于系統(tǒng)所要通過的每一種服務,都必須運行一個監(jiān)聽某個端口連接所發(fā)生的守護進程,這通常意味著資源浪費。為了解決這個問題,一些Linux引進了"網絡守護進程服務程序"的概念。
Redhat
Linux 8.0以后的版本使用的網絡守護進程是xinted(eXtended InterNET
daemon)。和stand-alone模式相比xinted模式也稱 Internet
Super-Server(超級服務器)。xinetd能夠同時監(jiān)聽多個指定的端口,在接受用戶請求時,他能夠根據用戶請求的端口不同,啟動不同的網絡服
務進程來處理這些用戶請求。
可以把xinetd看做一個管理啟動服務的管理服務器,它決定把一個客戶請求交給那個程序處理,然后啟動相應的守護進程。xinetd模式工作原理見圖1。
img: http://tech.ccidnet.com/col/attachment/2006/1/562935.jpg
圖1 xinetd模式網絡服務
和stand
-alone工作模式相比,系統(tǒng)不想要每一個網絡服務進程都監(jiān)聽其服務端口。運行單個xinetd就可以同時監(jiān)聽所有服務端口,這樣就降低了系統(tǒng)開銷,保
護系統(tǒng)資源。但是對于訪問量大、經常出現(xiàn)并發(fā)訪問時,xinetd想要頻繁啟動對應的網絡服務進程,反而會導致系統(tǒng)性能下降。察看系統(tǒng)為Linux服務提
供那種模式方法在Linux命令行可以使用pstree命令可以看到兩種不同方式啟動的網絡服務。
xinetd提供類似于inetd+tcp_wrapper的功能,但是更加強大和安全。能有效的防止拒絕服務攻擊(Denial of Services):
1、限制同時運行的進程數。
通過設置instances選項設定同時運行的并發(fā)進程數:
instances=20
當服務器被請求連接的進程數達到20個時,xinetd將停止接受多出部分的連接請求。直到請求連接數低于設定值為止。
2.限制一個IP地址的最大連接數:
通過限制一個主機的最大連接數,從而防止某個主機獨占某個服務。
per_source=5
這里每個IP地址可以連接單個IP地址的連接數是5個。
3.限制負載。
xinetd還可以使用限制負載的方法防范拒絕服務攻擊。用一個浮點數作為負載系數,當負載達到這個數目的時候,該服務將暫停處理后續(xù)的連接:
max_load = 2.8

面的例子中當一項系統(tǒng)負載達到2.8時,所有服務將暫時中止,直到系統(tǒng)負載下降到設定值以下。說明要使用這個選項,編譯時要加入--with-
loadavg ,xinetd將而已處理max-load配置選項。從而在系統(tǒng)負載過重時關閉某些服務進程,來實現(xiàn)某些拒絕服務攻擊。
4.限制所有服務器數目(連接速率) 。
xinetd可以使用cps選項設定連接速率,下面的例子:
cps = 25 60
第一個參數表示每秒可以處理的連接數,如果超過了這個連接數之后進入的連接將被暫時停止處理;第二個參數表示停止處理多少秒后繼續(xù)處理先前暫停處理的連接。即服務器最多啟動25個連接,如果達到這個數目將停止啟動新服務60秒。在此期間不接受任何請求。
使用xinetd方式運行ProFTPD的步驟:
(1)檢查確省運行情況
確省情況下ProFTPD以stand-alone工作模式運行,可以使用"ps aux| grep proftpd"命令查看進程號,然后使用kill命令中止運行。
(2)修改配置文件
修改/etc/proftpd.conf文件的ServerType選項由"standalone"改為"inetd"。
(3)建立用戶組
groupadd nogroup
(4)創(chuàng)建配置文件/etc/xinetd.d/proftpd,代碼如下:
Quote:
service ftp
{
flags = REUSE socket_type =
stream instances = 30 cps =
25 60max_load = 3.0wait =
no user = root server =
/usr/local/sbin/proftpd log_on_success =
HOST PID log_on_failure =
HOST RECORD disable = no
}
5)重新啟動xinetd配置
killall -USR1 xinetd
(6)使用命令連接服務器
可以使用"ftp localhost"連接本地服務器,如果連接被拒絕,可以使用命令:
tail -f /var/log/messages
查看錯誤信息。
3.隱藏ProFTPD服務器版本信息
通常軟件的BUG信息是和特定版本相關的,因此版本號是黑客尋求最有價值的信息。隱藏ProFTPD版本號比較簡單,修改配置文件:
Quote:
/etc/Proftpd.conf:
ServerIdent off

4.偽裝ProFTPD服務器
Windows下的FTP服務多是Serv-U,可以把ProFTPD偽裝為Serv-U,方法是修改配置文件proftpd.conf,添加如下內容:
ServerIdent on \"Serv-U FTP
Server v5.0 for WinSock ready...\"

存盤退出后,重新啟動proftpd服務,登錄到修改了提示信息的FTP服務器進行測試:
Quote:
C:\\>ftp 192.168.0.1Connected to
192.168.0.1.220 Serv-U FTP Server
v5.0 for WinSock ready...
User (192.168.0.1:(none)):
331 Password required for (none).
Password: 530 Login incorrect.
Login failed.
ftp > quit 221 Goodbye.

這樣從表面上看,服務器就是一個運行著Serv-U的Windows了。
5. 使用非root權限運行ProFTPD
以非root權限運行ProFTPD。修改配置文件:
Quote:
/etc/Proftpd.conf:
User nobody

#設置FTP服務以nobody運行 Group nogroup
#注意:原來是"Group nobody",一定要改為"Group nogroup "
上面的配置表示以nobody用戶身份運行ProFTPD服務器。使用nobody身份運行能夠降低緩沖區(qū)溢出攻擊所帶來的危險。
6.監(jiān)控ProFTPD服務器運行情況
通常新部署一個ProFTPD服務器之后需要進行一段時間的監(jiān)控:記錄FTP連接記錄、誰連接到我的FTP服務器。Proftpd本身附帶了幾個命令可以使用。
(1)記錄FTP連接數
使用usr/local/bin/ftpcout命令,可以顯示FTP服務器連接用戶數量信息。 我們還可以使用watch命令配合使用,運行下面命令:
Quote:
watch -n 360 /usr/local/bin/ftpcount

這個命令每三百六十秒顯示一次連接用戶數量的信息。
(2)查找誰與FTP服務器連接
使用usr/local/bin/ftpwho命令可以顯示誰連接到FTP服務器。一個簡單的輸出如下:
Quote:
Master proftpd process 8322:
8387 0m1s proftpd: sheila -
reboot.intevo.com: IDLE 8341
3m59s proftpd: kabir -
k2.intevo.com: IDLE - - 2 users

以上輸出顯示有兩個用戶(sheila和kabir)從不同的計算機連接到FTP服務器,輸出內容還包括:為這些用戶服務的ProFTPD的進程和主ProFTPD的進程ID。
7.修改配置文件加固服務器
ProFTPD使用的配置文件和Apache類似:
單線指令:ServerName 和 ServerType
多線容器指令:和
如果以前配置過Apache的話,會很容易掌握。Proftpd服務器配置文件etc/Proftpd.conf中的許
               
               
               

本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u/12056/showart_1810582.html
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP