nmap 扫描目标网段主机操作系统

发布时间 2023-04-20 13:10:23作者: Huluo

nmap 扫描目标网段主机操作系统


 

一、使用ping方式获取存活主机

[root@localhost ~]# vim pingos.sh
#!/bin/bash
#探测目标主机操作系统

addr="10.0.0."
upfile="alive.list"
linfile="linuxos.list"
winfile="windows.list"

>$upfile
>$linfile
>$winfile


for i in {1..254}
do 
    ping -c 1 -W 1 $addr$i > /dev/null
    OS=$(nmap -O $i | grep "OS details" | awk -F: '{print $2}')
    case $OS in
    *Linux*)
        echo $i >> $linfile
    ;;
    *Windows*)
        echo $i >> $winfile
    ;;
    esac
done

二、使用fping方式获取存活主机

安装fping的方式

1.yum安装

[root@localhost ~]# yum -y install fping

2.编译安装

[root@localhost ~]# wget https://fping.org/dist/fping-5.1.tar.gz
[root@localhost ~]# tar -xvf fping-5.1.tar.gz -C /usr/local/
[root@localhost ~]# cd /usr/local/fping-5.1/
[root@localhost ~]# ./configure
[root@localhost ~]# make && make install

fping常用选项

[root@localhost ~]# fping -aqg 10.0.0.0/24 >> alive.list               

使用shell探测目标网段主机操作系统

[root@localhost ~]# vim fpingos.sh
#!/bin/bash
#探测目标主机操作系统

addr="10.0.0.0/24"
upfile="alive.list"
linfile="linuxos.list"
winfile="windows.list"

>$upfile
>$linfile
>$winfile

fping -aqg $addr >> $upfile

for i in $(cat $upfile)
do 
    OS=$(nmap -O $i | grep "OS details" | awk -F: '{print $2}')
    case $OS in
    *Linux*)
        echo $i >> $linfile
    ;;
    *Windows*)
        echo $i >> $winfile
    ;;
    esac
done