• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      截?cái)嗌煜騍SH服務(wù)的黑手

      2017-03-11 02:14:27
      網(wǎng)絡(luò)安全和信息化 2017年12期
      關(guān)鍵詞:腳本日志命令

      為了便于遠(yuǎn)程管理Linux服務(wù)器,管理員一般都會(huì)開(kāi)啟SSH連接服務(wù),這樣可以很輕松的對(duì)Linux服務(wù)器進(jìn)行遠(yuǎn)控操作。不過(guò),這也給系統(tǒng)的安全帶來(lái)了一些隱患。雖然SSH采用的是加密連接,使用嗅探工具無(wú)法偵測(cè)。但是如果Root賬戶密碼設(shè)置的比較簡(jiǎn)單的話,黑客會(huì)采取暴力破解的方法來(lái)猜測(cè)密碼,一旦密碼被破解,黑客就可以毫不費(fèi)力的控制服務(wù)器。為了防止黑客猜解密碼,可以使用相應(yīng)的安全技術(shù)加以防范。這里從屏蔽非法連接的IP的角度出發(fā),來(lái)有效狙擊黑客的入侵行為。

      使用NetFilter規(guī)則攔截非法IP

      Linux中內(nèi)置NetFilter防火墻組件,使用IPtables來(lái)編寫(xiě)合理的防火墻規(guī)則,可保護(hù)SSH安全。執(zhí)行“iptables -A INPUT -p -s xxx.xxx.xxx.xxx -j ACCEPT”命令,可添加一條規(guī)則,允許本機(jī)IP(此處為“xxx.xxx.xxx.xxx”) 連 接TCP 22端口,因?yàn)镾SH服務(wù)使用該端口。執(zhí)行“iptables-A INPUT -p TCP -dport 22 -j DROP”命令,添加一條規(guī)則,禁止本機(jī)外的IP訪問(wèn)SSH服務(wù)。上述方法較簡(jiǎn)單,利用IPTables命令,還可創(chuàng)建白名單,只允許指定的IP連接SSH服務(wù),對(duì)其他IP可以限制連接次數(shù),如超過(guò)預(yù)設(shè)值,就對(duì)其進(jìn)行屏蔽。

      執(zhí)行“iptables -N SSH_WHITELIST”,“ iptables-A SSH_WHITELIST -s xxx.xxx.xxx.xxx -m recent--remove --name SSH -j ACCEPT”命令,可以創(chuàng)建白名單,只需允許指定的IP連接SSH服務(wù)。執(zhí)行“iptables-A INPUT -p tcp --dport 22 -m state --state NEW-m recent --set --name SSH”,“iptables -A INPUT-p tcp --dport 22 -m state --state NEW -j SSH_WHITELIST”,“iptables-A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update--seconds 60 --hitcount 5--rttl --name SSH -j ULOG--ulog-prefix SSH_brute_force”,“iptables -A INPUT -p tcp --dport 22-m state --state NEW -m recent --update --seconds 60 --hitcount 5 --rttl--name SSH -j DROP”命令,可實(shí)現(xiàn)對(duì)白名單中的IP放行,對(duì)其他IP來(lái)說(shuō),如其在60秒內(nèi)連續(xù)連接5次以上,就會(huì)被防火墻攔截,同時(shí)將其連接信息記錄到Linux的日志中,并添加“SSH_brute_force”前綴,便于用戶查詢。

      使用腳本攔截非法IP

      使用以上方法的缺點(diǎn)是必須使用固定IP,如果管理員使用的主機(jī)IP不是固定的,就比較麻煩。當(dāng)然,也可以使用指定域名來(lái)替代IP,但黑客可能會(huì)使用域名劫持來(lái)進(jìn)行非法連接。也可以執(zhí)行“vim /etc/hosts.allow”命令,對(duì)“hosts.allow”文件進(jìn)行編輯,在其中添加“sshd:xxx.xxx.xxx.xxx”。執(zhí)行“vim /etc/hosts.deny”命令,添加“sshd:all”一行。這樣就實(shí)現(xiàn)了只允許管理員的IP可以訪問(wèn)SSH服務(wù),禁止其余IP訪問(wèn)。

      實(shí)際上,當(dāng)黑客對(duì)SSH服務(wù)進(jìn)行非法連接時(shí),其行為會(huì)被系統(tǒng)日志記錄下來(lái)。在“/var/log”目錄下打開(kāi)“secure”等日志文件,可以看到訪問(wèn)者的IP以及其試圖連接的賬戶名信息。對(duì)于頻繁嘗試連接的來(lái)訪者,將其IP提取出來(lái),放置到上述“hosts.deny”文件中,即可對(duì)其進(jìn)行屏蔽。當(dāng)然,手工操作比較繁瑣,完全可以使用腳本來(lái)實(shí)現(xiàn)。

      例如,可以編寫(xiě)一個(gè)名為 的“sshtables.sh” 的腳本,內(nèi)容包括“PATH=/sbin:/bin:/usr/sbin:/usr/bin”,“LOGFILE=/var/log/secure”,“KEYWORD='Invalid user'”,“KEYWORD1='Failed password for admin'”,“PERM_LIST=/tmp/bad.user”,“ PERM_LIST2=/tmp/bad.root.pasword”,“LIMIT=3”,“MAIL_TO=root”,“IPT_SAV="$(iptables-save)"”,“grep "$KEYWORD" $LOGFILE| awk '{print $NF}'|cut-d ":" -f 4>$PERM_LIST”,“grep "$KEYWORD1"$LOGFILE | awk '{print$11}'|cut -d ":" -f 4>$PERM_LIST2”,“ BAD_LIST=$( awk -v var=$LIMIT'{a[$i]++}END {for (i in a){if(a[i]>var)print i}}'$PERM_LIST $PERM_LIST2| xargs)”,“do”,“echo"$IPT_SAV" | grep -q "$i-p tcp -m tcp --dport 22-j DROP" || { iptables-I tcp_packets 2 -p tcp-s $i --dport 22 -j DROP}”,“done”等。該腳本其實(shí)很簡(jiǎn)單,主要作用是對(duì)和SSH連接相關(guān)的日志進(jìn)行過(guò)濾檢測(cè),來(lái)發(fā)現(xiàn)試圖破解指定賬戶(這里為“admin”)密碼的連接信息,如果其連續(xù)3次輸錯(cuò)密碼,就視其為非法破解并將其IP提取出來(lái),并使用IPTables編輯防火墻規(guī)則,對(duì)其進(jìn)行攔截,禁止其訪問(wèn)SSH服務(wù)。

      使用Tcp_Wrappers自動(dòng)攔截非法IP

      此外,可以使用“vim /etc/hosts.allow”命令,打開(kāi)“hosts.allow”文件,在尾部添加“sshd:ALL:spawn(/etc/sshiptables.sh)&:allow”一行,假設(shè)將“sshtables.sh”保存在“/etc”目錄下。這樣,如果系統(tǒng)檢測(cè)到非法用戶嘗試連接的次數(shù)超過(guò)預(yù)設(shè)值,就禁止其進(jìn)行連接,對(duì)于之外的IP,是允許進(jìn)行連接的。當(dāng)然,也可以編寫(xiě)名為“sshdeny.sh”的腳本程序,將日志中的非法用戶的IP提取出來(lái),并將其添加到“hosts.deny”文件中,同樣可以對(duì)其屏蔽。打開(kāi)網(wǎng)址“http://pan.baidu.com/s/1hse3bIs”,可以查看該腳本的具體內(nèi)容。

      黑客的入侵是動(dòng)態(tài)的,因此也可利用Crontab定時(shí)運(yùn)行,讓上述腳本在指定的周期內(nèi)自動(dòng)運(yùn)行。例如執(zhí)行“crontab -e”命令,打開(kāi)操作者的Crontab配置文件,在其中添加“0 0 * * * /etc/sshdeny.sh”,就可以在每天零點(diǎn)自動(dòng)執(zhí)行“sshdeny.sh”程序。當(dāng)然,可以自由設(shè)定具體執(zhí)行的時(shí)間點(diǎn)。這樣的腳本文件還有很多,例如打開(kāi)網(wǎng)址“http://www.lasamhna.de/misc/sshblock.sh”,可以得到專用的分析日志文件,來(lái)攔截非法連接SSH服務(wù)IP的腳本。其功能是對(duì)Linux日志進(jìn)行分析,如果發(fā)現(xiàn)在60秒內(nèi)連接的數(shù)量超過(guò)5次,就將其其添加到“hosts.deny”文件中,經(jīng)過(guò)3600秒才對(duì)其解鎖。

      也可以根據(jù)實(shí)際情況進(jìn)行修改,其中的“DONTBLOCK”參數(shù)可以設(shè)置允許連接的域名或IP,默認(rèn)為“192.168”。其余的IP都在該腳本的監(jiān)控之下,將該腳本放置到“/usr/local/bin”目錄下,使用“vim /etc/hosts.allow”命令,打開(kāi)“hosts.allow”文件,在尾部添加“sshd:ALL:spawn (/usr/local/bin/sshblock.sh%a)&”一行,這樣,當(dāng)訪問(wèn)者試圖連接SSH服務(wù)時(shí),首先會(huì)經(jīng)過(guò)Tcp_Wrappers模塊的檢測(cè),其會(huì)調(diào)用“hosts.allow”文件,來(lái)確定允許訪問(wèn)SSH服務(wù)的連接,這樣就會(huì)自動(dòng)執(zhí)行上述“sshblock.sh”腳本,只有經(jīng)過(guò)腳本檢測(cè)的連接才可以順利訪問(wèn)。當(dāng)然,這要求開(kāi)啟了Tcp_Wrappers服務(wù),實(shí)際上,Linux都安裝并開(kāi)啟了該模塊。執(zhí)行“rpm -qa | grep tcp”命令,可以查看該模塊的安裝信息。

      輕松敲門(mén),自動(dòng)啟停SSH服務(wù)

      使 用Knock工具,可自動(dòng)打開(kāi)SSH端口。將下載 的“knock-0.5-6.i386.rpm”等RPM放置到某個(gè)目錄中,在其中執(zhí)行“rpm -ivh*.RPM”命令即可安裝。執(zhí)行“vim /etc/knockd.conf”命令,打開(kāi)Knock配置文件,在“sequence=”欄中顯示需要開(kāi)放的端口,默認(rèn)為UDP 2222、TCP 3333、TCP 4444等。這些端口不要在防火墻上屏蔽。可以根據(jù)需要對(duì)其進(jìn)行更改,在“tcpflags=”欄中默認(rèn)值為“syn,ack”,表示客戶端需要向服務(wù)器回復(fù)數(shù)據(jù)包,為便于使用,可去除“ack”標(biāo)記。在“cmd_timeout=”欄中顯示自動(dòng)關(guān)閉SSH服務(wù)的時(shí)間,如在敲門(mén)后,在該時(shí)間內(nèi)沒(méi)有執(zhí)行連接,會(huì)自動(dòng)關(guān)閉SSH服務(wù)。

      如果使用Knock訪問(wèn)這些端口成功,就可自動(dòng)打開(kāi)SSH服務(wù)。如果在預(yù)設(shè)時(shí)間內(nèi)未操作,則自動(dòng)關(guān)閉SSH服務(wù)。在服務(wù)器上執(zhí)行“knock -D -V”命令,來(lái)激活Knock的守護(hù)功能。在客戶端需要使用“knock.exe”程序進(jìn)行“敲門(mén)”,在CMD窗口中執(zhí)行“knock -v 服務(wù)器的域名。在服務(wù)器上會(huì)顯示接收到了上述敲門(mén)動(dòng)作,并顯示已經(jīng)打開(kāi)了SSH服務(wù)。執(zhí)行“iptables -vnL”命令,可以看到已經(jīng)添加了允許訪問(wèn)TCP 22端口的防火墻規(guī)則。

      猜你喜歡
      腳本日志命令
      酒駕
      只聽(tīng)主人的命令
      一名老黨員的工作日志
      安奇奇與小cool 龍(第二回)
      扶貧日志
      心聲歌刊(2020年4期)2020-09-07 06:37:14
      數(shù)據(jù)庫(kù)系統(tǒng)shell腳本應(yīng)用
      移防命令下達(dá)后
      游學(xué)日志
      快樂(lè)假期
      這是人民的命令
      苗栗县| 泽州县| 固始县| 广平县| 临清市| 延川县| 临漳县| 台南市| 涟水县| 巴里| 揭东县| 正蓝旗| 五常市| 阿拉善左旗| 平舆县| 千阳县| 屏东市| 乳源| 太保市| 株洲县| 石渠县| 修文县| 泉州市| 成安县| 新兴县| 合川市| 饶平县| 中宁县| 揭西县| 青铜峡市| 罗江县| 龙游县| 兴海县| 永兴县| 茌平县| 马尔康县| 桐城市| 札达县| 宁都县| 墨脱县| 临泽县|