溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

安全運維之端口安全

發(fā)布時間:2020-07-16 12:11:32 來源:網絡 閱讀:3818 作者:dl528888 欄目:安全技術

兼職安全半年了,分享一下我這里是如何做安全的,當然作為兼職,不是太深入,進攻參考。

下面介紹端口安全,主要是公司IDC機房所有ip段開放端口情況,比如一個服務器,默認僅要求開放ssh端口,但如果開啟了其他未允許端口,可能是被人誤開或者被***,這樣就需要運維提前知曉并解決。

如何實現:

1、  使用nmap+diff來對公司所有idc,進行端口掃描;

2、  當天的掃描結果與昨天掃描的結果進行對比;

3、  如果新增主機或已存在主機有新增與關閉端口的情況,也進行郵件通知。

結果展示:

1、  沒有差異的情況

安全運維之端口安全

2、有新增主機情況

安全運維之端口安全

3、已存在主機有新增或關閉端口情況

安全運維之端口安全

下面是端口安全掃描腳本內容:

#!/bin/bash
#This script name is scan_analyse.sh
. /etc/profile
echo "start time is $(date)"
time=$(date +"%Y-%m-%d")
yesterday=`date -d "1 day ago " +"%Y-%m-%d"`
work_dir="/root/nmap_scan"
now_dir="$work_dir/scan_result/$time"
IP='1.1.1.0/24'
contact_mail='xx@mail.com'
rm -rf $now_dir
if [ ! -d "$work_dir/scan_result/$time" ];then
mkdir -p $work_dir/scan_diff_result/$time
fi
rm -rf $work_dir/scan_diff_result/$time/result.log
ip_32=`echo $IP|cut -d . -f 1-3`
if [ ! -d $now_dir/$ip_32 ];then
    mkdir -p $now_dir/$ip_32
fi
for i in {1..254}
do
nmap -sS -r -n $ip_32.$i |egrep -v "(Starting|scanned)"|egrep "(Nmap|open)" >$now_dir/$ip_32/$ip_32.$i
if [ `cat $now_dir/$ip_32/$ip_32.$i|wc -l` -eq 1 ];then
rm -rf  $now_dir/$ip_32/$ip_32.$i
fi
done
echo "stop time is $(date)"
for b in $ip_32 
do
for i in $(ls $now_dir/$b)
do
if [ ! -f "$work_dir/scan_source/$b/$i" ];then
echo "增加新主機 $i,下面是全部信息:">>$work_dir/scan_diff_result/$time/result.log
    if [ `cat $now_dir/$b/$i|wc -l` -gt 100 ];then
        echo "開啟了所有端口,懷疑是有nat或者負載均衡!">>$work_dir/scan_diff_result/$time/result.log
    else
        cat $now_dir/$b/$i>>$work_dir/scan_diff_result/$time/result.log
    fi

else
    if [ `diff -u $now_dir/$b/$i $work_dir/scan_source/$b/$i|egrep -v "(\-\-\-|\+\+\+|@@)"|egrep "(Nmap|\-|\+)"|wc -l` -gt 100 ];then
        head -n 1 $now_dir/$b/$i>>$work_dir/scan_diff_result/$time/result.log
        echo "開啟了所有端口,懷疑是有nat或者負載均衡!">>$work_dir/scan_diff_result/$time/result.log
    else
        diff -u $now_dir/$b/$i $work_dir/scan_source/$b/$i|egrep -v "(\-\-\-|\+\+\+|@@)"|egrep "(Nmap|\-|\+)"|sed -e 's# Nmap scan report for#掃描主機#g'|sed -e 's#^+#關閉了 #g' -e 's#^-#開啟了 #g'>>$work_dir/scan_diff_result/$time/result.log
    fi
fi
done
done
if [ `cat $work_dir/scan_diff_result/$time/result.log|wc -l` -eq 0 ];then
echo "今日一切正常,沒有變化的端口!"|mail -s "【$time】所有IDC機房差異端口掃描結果" $contact_mail
else
sed -i "1i 大家好: \n    下面是$time日所有IDC機房掃描新增主機或已有主機新增或關閉端口情況,請各項目負責人及時認領與確認.\n" $work_dir/scan_diff_result/$time/result.log
cat $work_dir/scan_diff_result/$time/result.log|mail -s "【$time】所有IDC機房差異端口掃描結果" $contact_mail
fi
rm -rf $work_dir/scan_source/
cp -a $work_dir/scan_result/$time  $work_dir/scan_source
if [ $? -eq 0 ];then
echo "運行完成,操作成功!"
else
echo "運行完成,操作失敗!"
fi

請修改IP與contact_mail就可以

結構:

12:55:17 # tree /root/nmap_scan/
/root/nmap_scan/
|-- scan_diff_result       #今天與昨天掃描對比結構
|   `-- 2014-06-23         #當天的目錄
|       `-- result.log     #對比結果內容
|-- scan_result            #存放今天掃描的結果
|-- scan_shell             #存放掃描腳本
|   `-- scan_analyse.sh    #安全端口掃描腳本
`-- scan_source            #昨天掃描結果,作為與今天對比的源    

5 directories, 2 files

使用方法:

1、先運行此腳本

創(chuàng)建腳本目錄

mkdir -p /root/nmap_scan/scan_shell

然后把腳本放到此目錄里,這樣的目的是生成對比的源文件,以后的掃描都是跟這個源文件做對比。

2、使用crontab運行腳本

30 01 * * * /bin/bash /root/nmap_scan/scan_shell/scan_analyse.sh >>/tmp/scan.log 2 >&1

這樣就可以每天凌晨1:30運行腳本。

這樣只需要每天看郵件就能知道所有IDC機房里所有IP段,哪些主機有新增或者關閉端口,及時進行解決。

腳本在附件里,需要可以自行下載。

附件:http://down.51cto.com/data/2364564
向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI