2022-10-06 分類: 網(wǎng)站建設(shè)
①首先要保證自己的服務(wù)器的絕對安全,root密碼我一般設(shè)置為28位以上,而且某些重要的服務(wù)器必須只有幾個人知道root密碼,這個根據(jù)公司權(quán)限來設(shè)置,如果有公司的系統(tǒng)管理員離職,root密碼一定要更改;玩linux久了的人都應(yīng)該知道,更改root密碼不會影響linux的crontab計劃任務(wù),而windows2003就不一樣了,如果隨意更改administrator密碼,會直接影響其計劃任務(wù)運行。
②我的Nagios外網(wǎng)監(jiān)控服務(wù)器,剛開始測試時取的密碼是redhat,放進公網(wǎng)一天就被人改了,郁悶死了;后來環(huán)境部署成熟以后發(fā)現(xiàn)仍然有不少外網(wǎng)ip在掃描和試探,看來不用點工具不行啊;呵呵,DenyHosts是用Python2.3寫的一個程序,它會分析/var/log/secure等日志文件,當(dāng)發(fā)現(xiàn)同一IP在進行多次SSH密碼嘗試時就會記錄IP到/etc/hosts.deny文件,從而達到自動屏蔽該IP的目的。
DenyHosts官方網(wǎng)站為:http://denyhosts.sourceforge.net
一、檢查安裝條件
1、首先判斷系統(tǒng)安裝的sshd是否支持tcp_wrappers(默認(rèn)都支持)
# ldd /usr/sbin/sshdlibwrap.so.0 => /usr/lib/libwrap.so.0 (0x0046e000)
2、判斷默認(rèn)安裝的Python版本
# python -VPython 2.3.4
二、已安裝Python2.3以上版本的情況
1、安裝DenyHosts
# cd /usr/local/src# wget http://jaist.dl.sourceforge.net/sourceforge/denyhosts/DenyHosts-2.6.tar.gz# tar zxf DenyHosts-2.6.tar.gz# cd DenyHosts-2.6# python setup.py install
程序腳本自動安裝到/usr/share/denyhosts
庫文件自動安裝到/usr/lib/python2.3/site-packages/DenyHosts
denyhosts.py自動安裝到/usr/bin
2、設(shè)置啟動腳本
# cd /usr/share/denyhosts/# cp daemon-control-dist daemon-control# chown root daemon-control# chmod 700 daemon-control# grep -v "^#" denyhosts.cfg-dist > denyhosts.cfg# vi denyhosts.cfg
根據(jù)自己需要進行相應(yīng)的修改
----------------denyhosts.cfg------------------------SECURE_LOG = /var/log/secure#RedHat/Fedora Core分析該日志文件#其它版本linux根據(jù)denyhosts.cfg-dist內(nèi)提示選擇。PURGE_DENY = 30m#過多久后清除DENY_THRESHOLD_INVALID = 1#允許無效用戶(/etc/passwd未列出)登錄失敗的次數(shù)DENY_THRESHOLD_VALID = 5#允許有效(普通)用戶登錄失敗的次數(shù)DENY_THRESHOLD_ROOT = 3#允許root登錄失敗的次數(shù)HOSTNAME_LOOKUP=NO#是否做域名反解----------------denyhosts.cfg------------------------
如果需要DenyHosts隨系統(tǒng)重啟而自動啟動,還需做如下設(shè)置:
# vi /etc/rc.local
加入下面這條命令
/usr/share/denyhosts/daemon-control start
3、啟動
# /usr/share/denyhosts/daemon-control start
如果要使DenyHosts每次重起后自動啟動還需做如下設(shè)置:
# cd /etc/init.d# ln -s /usr/share/denyhosts/daemon-control denyhosts# chkconfig --add denyhosts# chkconfig --level 345 denyhosts on
然后就可以啟動了:
service denyhosts start
DenyHosts配置文件:
vi /etc/denyhosts.cfg
SECURE_LOG = /var/log/secure #ssh 日志文件,它是根據(jù)這個文件來判斷的。
HOSTS_DENY = /etc/hosts.deny #控制用戶登陸的文件
PURGE_DENY = 5m#過多久后清除已經(jīng)禁止的
BLOCK_SERVICE = sshd#禁止的服務(wù)名
DENY_THRESHOLD_INVALID = 1#允許無效用戶失敗的次數(shù)
DENY_THRESHOLD_VALID = 10#允許普通用戶登陸失敗的次數(shù)
DENY_THRESHOLD_ROOT = 5#允許root登陸失敗的次數(shù)
HOSTNAME_LOOKUP=NO#是否做域名反解
DAEMON_LOG = /var/log/denyhosts#自己的日志文件
ADMIN_EMAIL = yuhongchun027@163.com#管理員郵件地址,它會給管理員發(fā)郵件
③服務(wù)器上除root外,Linux用戶越少越好;如果非要添加授權(quán)用戶,請給他的登陸shell為nologin;終止未授權(quán)用戶,定期檢查系統(tǒng)有無多余的用戶都是很必要的工作。
④分析系統(tǒng)的日志文件,尋找入侵者曾經(jīng)試圖入侵系統(tǒng)的蛛絲馬跡。last命令是另外一個可以用來查找非授權(quán)用戶登錄事件的工具
lyychee pts/2 54.107.130.61.di Mon May 22 14:14 still logged inlyychee pts/2 51.107.130.61.di Thu May 18 18:36 - 18:42 (00:05)lyychee pts/2 61.130.107.51 Tue May 16 14:21 - 14:39 (00:18)root pts/2 61.130.107.58 Sat May 13 15:40 - 15:43 (00:02)lyychee pts/2 210.32.178.253 Fri May 12 00:53 - 01:16 (00:23)root pts/2 58.107.130.61.di Wed May 10 15:33 - 15:35 (00:01)root pts/2 61.130.107.58 Tue May 9 14:58 - 15:07 (00:08)root pts/2 59.78.34.62 Sun May 7 07:40 - 07:45 (00:05)lyychee pts/2 59.78.34.62 Sat May 6 23:50 - 00:27 (00:37)lyychee pts/2 222.64.24.144 Sat May 6 10:56 - 10:56 (00:00)root pts/2 192.168.0.111 Sat May 6 00:01 - 00:02 (00:01)lyychee pts/2 222.64.22.144 Thu May 4 12:41 - 12:43 (00:0root pts/2 59.78.34.62 Tue May 2 06:59 - 07:00 (00:00)
以下是一臺機器上的演示圖:
last命令輸入的信息來自/var/log/wtmp。這個文件詳細(xì)地記錄著每個系統(tǒng)用戶的訪問活動。但是有經(jīng)驗的入侵者往往會刪掉/var/log/wtmp以清除自己非法行為的證據(jù),但是這種清除行為還是會露出蛛絲馬跡:在日志文件里留下一個沒有退出操作與之對應(yīng)的登錄操作(因為在你刪除wtmp的時候,你的登錄記錄就沒有了,但是你待會兒登出,系統(tǒng)還是會把你記下來),不過再高明一點就用at或者cron等自己登出之后再刪文件。(但是這種方法也還是可以查,總之linux沒有一種操作是最強的,強到?jīng)]有紕漏。就像古龍的小說一樣,沒有一個人是天下第一。這樣看起來才有勁)
⑤另外,可以用命令 grep error /var/log/messages檢查自己的服務(wù)器是否存在著硬件損壞的情況。
⑥嘗試使用Chkrootkit應(yīng)用程序?qū)ootkit的蹤跡和特進行查找,從它的報告中分析你的服務(wù)器否已經(jīng)感染木馬。
⑦嘗試使用AIDE來檢查文件系統(tǒng)的完整性。
⑧推薦使用Snort自動檢測入侵,它集成了同類軟件中先進行技術(shù),并且是開放源碼的。
⑨以自己的郵件服務(wù)器舉例說明,由于這是一個獨立的服務(wù)器,所以前端并沒放置硬件防火墻及Web防火墻,所以一定要開啟iptables來防護,其/root/firewall.sh內(nèi)容如下:
#/bin/bashiptables -Fiptables -F -t natiptables -Xiptables -P INPUT DROPiptables -P OUTPUT ACCEPTiptables -P FORWARD ACCEP#load connection-tracking modulesmodeprobe ip_conntrackmodprobe iptable_natmodprobe ip_conntrack_ftpmodprobe ip_nat_ftpiptables -A INPUT -i lo -j ACCEPTiptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPTiptables -A INPUT -p tcp -m multiport --dport80,443,25,465,110,995,143,993,587,465,22 -j ACCEPT
在另一臺機器上用掃描之王nmap進行掃描
[root@mail postfix]# nmap -P0 -sS 211.143.6.XStarting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2009-03-29 16:21 CSTInteresting ports on 211.143.6.X:Not shown: 1668 closed portsPORT STATE SERVICE22/tcp open ssh25/tcp open smtp80/tcp open http110/tcp open pop3111/tcp open rpcbind143/tcp open imap443/tcp open https465/tcp open smtps587/tcp open submission993/tcp open imaps995/tcp open pop3s1014/tcp open unknown
lsof -i:1014,發(fā)現(xiàn)又是rpc.statd,這東東,每次用的端口都不一樣啊;它不能正確處理SIGPID信號,遠程攻擊者可利用這個漏洞關(guān)閉進程,進行拒絕服務(wù)攻擊;發(fā)現(xiàn)rpc.statd是由服務(wù)nfslock開啟,關(guān)閉它即可
service nfslock stopchkconfig nfslock off
⑩停掉一些系統(tǒng)不必要的服務(wù),強化內(nèi)核;多關(guān)注下服務(wù)器的內(nèi)核漏洞,現(xiàn)在linux很多攻擊都是針對內(nèi)核的,保證內(nèi)核版本為2.6.9以上(不含2.6.9)。
文章題目:Linux服務(wù)器安全需要注意到幾點事項小結(jié)
文章源于:http://m.rwnh.cn/news4/202454.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、云服務(wù)器、建站公司、面包屑導(dǎo)航、手機網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容