一、基本的安全措施
1、系统账号清理
usemod
-c<备注>:修改用户帐号的备注文字;
-d<登入目录>:修改用户登入时的目录;
-e<有效期限>:修改帐号的有效期限;
-f<缓冲天数>:修改在密码过期后多少天即关闭该帐号;
-g<群组>:修改用户所属的群组;
-G<群组>;修改用户所属的附加群组;
-l<帐号名称>:修改用户帐号名称;
-L:锁定用户密码,使密码无效;
-s:修改用户登入后所使用的shell;
-u:修改用户ID;
-U:解除密码锁定;
示例:
[root@centos6 ~]# usermod -L zhangsan
# 锁定账号zhangsan
[root@centos6 ~]# passwd -S zhangsan
zhangsan LK 2016-08-13 0 99999 7 -1 (密码已被锁定。)
# 查看锁定状态
[root@centos6 ~]# passwd -u zhangsan
解锁用户 zhangsan 的密码 。
passwd: 操作成功
# 解锁账户
[root@centos6 ~]# passwd -S zhangsan
zhangsan PS 2016-08-13 0 99999 7 -1 (密码已设置,使用 SHA512 加密。)
[root@centos6 ~]# passwd -S zhangsan
zhangsan PS 2016-08-13 0 99999 7 -1 (密码已设置,使用 SHA512 加密。)
# 还可以使用usermod -U 解锁用户
命令:chattr
+ :在原有参数设定基础上,追加参数。
- :在原有参数设定基础上,移除参数。
= :更新为指定参数设定。
A:文件或目录的 atime (access time)不可被修改(modified), 可以有效预防例如手提电脑磁盘I/O错误的发生。
S:硬盘I/O同步选项,功能类似sync。
a:即append,设定该参数后,只能向文件中添加数据,而不能删除,多用于服务器日志文件安全,只有root才能设定这个属性。
c:即compresse,设定文件是否经压缩后再存储。读取时需要经过自动解压操作。
d:即no dump,设定文件不能成为dump程序的备份目标。
i:设定文件不能被删除、改名、设定链接关系,同时不能写入或新增内容。i参数对于文件 系统的安全设置有很大帮助。
j:即journal,设定此参数使得当通过mount参数:data=ordered 或者 data=writeback 挂 载的文件系统,文件在写入时会先被记录(在journal中)。如果filesystem被设定参数为 data=journal,则该参数自动失效。
s:保密性地删除文件或目录,即硬盘空间被全部收回。
u:与s相反,当设定为u时,数据内容其实还存在磁盘中,可以用于undeletion。
各参数选项中常用到的是a和i。a选项强制只可添加不可删除,多用于日志系统的安全设定。而i是更为严格的安全设定,只有superuser (root) 或具有CAP_LINUX_IMMUTABLE处理能力(标识)的进程能够施加该选项。
示例:
[root@centos6 ~]# chattr +i /etc/passwd
# 使用charrt +i命令锁定文件
[root@centos6 ~]# lsattr /etc/passwd
----i--------e- /etc/passwd
# 使用lsattr查看文件的权限
[root@centos6 ~]# useradd lisi
useradd: cannot open /etc/passwd
# 我们发现现在已经无法穿件用户
[root@centos6 ~]# echo 123 >> /etc/passwd
-bash: /etc/passwd: 权限不够
# 我们使用echo命令将数字123追加到/etc/passwd下,但是我们发现root用户是没有权限的
[root@centos6 ~]# chattr -i /etc/passwd
# 使用chattr -i命令解锁文件
[root@centos6 ~]# lsattr /etc/passwd
-------------e- /etc/passwd
# 查看文件为解锁的状态
[root@centos6 ~]# echo 123 >> /etc/passwd
# 我们再来使用echo命令测试一下。
[root@centos6 ~]# tail -1 /etc/passwd
123
#这次我们发现文件已经被写入到/etc/passwd下(测试完成后记得要删除123,由于这是系统的配置文件,可能会造成系统的错误)
2、密码的安全控制
[root@centos6 ~]# vim /etc/login.defs
PASS_MAX_DAYS 99999
# 使用/在vim编辑器中筛选出PASS_MAX_DAYS这一行,后面的9999代表新建用户的密码有效天数。
[root@centos6 ~]# vim /etc/login.defs
PASS_MAX_DAYS 30
# 将PASS_MAX_DAYS这一行的9999改成30,意味着更改之后新建的用户密码有效期为30天
[root@centos6 ~]# useradd lisi
#新建一个用户lisi
[root@centos6 ~]# tail -1 /etc/shadow
lisi:$6$gCRy.Uge$mbg.ydWzisYrcGrOpXc7Z3c0HEZzoQAonKc7VdUnYXgxi5O6sApRg50Nb8bH.RczzpOHYoJEUxlf2zozcn4D30:17026:0:30:7:::
#我们可以看出更改配置文件之后新建用户lisi的密码有效天数从刚刚新建用户zhangsan的9999天变成了30天
[root@centos6 ~]# chage -M 30 zhangsan
# chage命令可以手动修改用户的密码有效期,上面这条命令的意思是给已经创建好的用户zhangsan更改密码有效期为30天,默认的是9999天(由于创建zhangsan用户是在我们更改配置文件之前所以张三的密码有效天数是9999天我们要将其更改为30天)
[root@centos6 ~]# tail -1 /etc/shadow
zhangsan:$6$cBaEak2T$g8N3bvXPyQ3Q5i5MOPty/.KVEaTQvqRxa6CgHufjAOjkHUxcuE3Ks27s6GbYfZxa4N94b5lQCT.vzLxXfhxMr0:17026:0:30:7:::
# 看!zhangsan的密码有效天数变成了30天
[root@centos6 ~]# chage -d 0 zhangsan
# 这个命令可以强制要求用户张三在下次登录时必须更改密码
命令:chage
-d,--lastday LAST_DAY
设置自1970年1月1日时的口令最后更改的天数。日期也可在格式YYYY-MM-DD(或所在区域更常用的格式)表示。
-E,--expiredate EXPIRE_DATE
设置日期或天数从1970年1月1日,在其上用户的帐户将不再访问。 日期也可在格式YYYY-MM-DD(或所在区域更常用的格式)表示。 其帐户被锁定的用户必须能够再次使用系统之前联系系统管理员。
经过数-1作为EXPIRE_DATE将会删除该帐户过期日期。
-h,--help
显示帮助消息并退出。
-I,--inactive INACTIVE
设置不活动的天数后,帐户被锁定之前密码已过期。 inactive选项是不活动的天数。 其帐户被锁定的用户必须能够再次使用系统之前联系系统管理员。
经过数-1作为INACTIVE将删除帐户的活动。
-l,--list
显示账龄的信息。
-m,--mindays MIN_DAYS
设置密码更改MIN_DAYS之间的天数最少。 零此字段的值表示用户可以在任何时候改变他/她的密码。
-M,--maxdays MAX_DAYS
设置的天期间密码是有效的最大数目。 当MAX_DAYS加LAST_DAY小于当前日期时,用户将被要求能够使用他/她的帐户之前改变他/她的密码。 这种情况的发生可提前通过使用-W选项,它为用户提供了预先警告的进行规划。
经过数-1作为MAX_DAYS将删除检查密码的有效性。
-W,--warndays WARN_DAYS
需要密码更改之前设置警告的天数。 该WARN_DAYS选项前的密码过期,用户将被警告他/她的密码即将到期的天数。
如果没有一个选项被选中, 土长以交互方式操作,促使与所有字段的当前值的用户。 输入新的值更改的字段,或保留空白行使用当前值。 在一对标记的[]之间所显示的当前值。
3、命令历史、自动注销
[root@centos6 ~]# vim /etc/profile
HISTSIZE=1000
# 筛选车/etc/profile这个文件中的HISTSIZE行,后面的数字以前表示命令最多可以记录1000条
[root@centos6 ~]# vim /etc/profile
HISTSIZE=100
#我们将其修改为100表示最多记录100条
[root@centos6 ~]# vim .bash_logout
## ~/.bash_logout ←笔者给出两个#号代表系统反馈的时候出现了一个#。笔者使用##为了和其它笔者注释的内容分开,以免混乱
history -c
clear
# 这个文件中默认只有# ~/.bash_logout这一行,我们将history -c clear分成两行添加即可
[root@centos6 ~]# export HISTSIZE=200
# 这种方法也可以更改历史记录的条数但是只适合当前用户使用
[root@centos6 ~]# vim /etc/profile
export TMOUT=10
# 我们再次进入到这个文件中添加以上信息,表示闲置超时时间,默认以秒为单位。当超过指定的时间没有任何输入时极自动注销终端,这样可以有效避免当管理员不在时其他人员对服务器的错误操作,闲置超时由变量TMOUT来控制
[root@centos6 ~]# export TMOUT=10
# 如上,这种方法只适用于当前用户
二、用户切换与提权
1、su命令——切换用户
[zhangsan@centos6 ~]$ su lisi
密码:
[lisi@centos6 zhangsan]$
# 使用su命令切换用户需要输入密码(若要切换到用户的登录环境需要使用su - 需要切换的用户名,我们通过以上信息可以看出虽然用户切换成lisi了但是用户的登录环境还是zhangsan的。)
[zhangsan@centos6 ~]$ su - lisi
密码:
[lisi@centos6 ~]$
# 我们只加了一个“-”符号就可以完全切换到用户lisi了
[root@centos6 lisi]# gpasswd -a lisi wheel
Adding user lisi to group wheel
#添加授权用户(默认情况下,任何用户都允许使用su命令,从而有机会反复查看其他用户的登录密码,带来安全隐风险,为了加强su命令的使用控制,可以借助于pam——wheel认证模块,只允许极个别用户使用su命令进行切换)
[root@centos6 lisi]# grep wheel /etc/group
wheel:x:10:lisi
#查看wheel 组成员
[root@centos6 lisi]# vim /etc/pam.d/su
#将这一行 auth required pam_wheel.so use_uid前面的#好去掉
[root@centos6 ~]# su - zhangsan
[zhangsan@centos6 ~]$ su - lisi
密码:
su: 密码不正确
# 启用pam-wheel认证之后,为加入到wheel组的用户无法使用su命令,尝试进行切换将会按照密码不正确处理。
[lisi@centos6 ~]$ su - zhangsan
密码:
[zhangsan@centos6 ~]$
# 我们已经将lisi加入到了wheel组,所以使用用户lisi切换是可以的
2、sudo命令——提升执行权限
[root@centos6 ~]# visudo
lisi ALL=/sbin/ifconfig
%wheel ALL=NOPASSWD:ALL
# 我们使用visudo进入到这个文件中添加以上两行内容(使用vim /etc/sudoers也可以进行编辑,只不过退出的时候需要使用w!强制保存,否则会提示为只读,无法修改)
[lisi@centos6 ~]$ sudo -l
匹配此主机上 lisi 的默认条目:
requiretty, !visiblepw, always_set_home, env_reset, env_keep="COLORS
DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS", env_keep+="MAIL
PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE
LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY
LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL
LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",
secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin
用户 lisi 可以在该主机上运行以下命令:
(root) /sbin/ifconfig
(root) NOPASSWD: ALL
# 我们还可以使用sudo -l查看自己sudo的配置,更多sudo的配置信息请查阅http://blog.chinaunix.net/uid-21458642-id-5199513.html这上面讲的很详细!
[root@centos6 ~]# vim /etc/init/control-alt-delete.conf
##start on control-alt-delete
##exec /sbin/shutdown -r now "Control-Alt-Delete pressed"
# 进入到/etc/init/control-alt-delete.conf将以上两行注释掉即可禁用Ctrl+ALT+DEL重启
[root@centos6 ~]# grub-md5-crypt
Password:
Retype password:
$1$CH/wv$E9vGukQ1NJmHuEzWhfgqb.
# 使用md5算法加密的字符串进行加密,以防心怀不轨之人查看配置文件
[root@centos6 ~]# vim /boot/grub/grub.conf
password --md5 $1$CH/wv$E9vGukQ1NJmHuEzWhfgqb.
# 将上面一行添加到 /boot/grub/grub.conf中第一个title行的上方
#password --md5 $1$CH/wv$E9vGukQ1NJmHuEzWhfgqb.
#title CentOS (2.6.32-431.el6.x86_64)
三、终端及登录控制
1、减少开放的tty终端个数
/etc/init/tty.conf | //控制tty终端的开启 |
/etc/init/start-ttys.conf | //控制tty终端的开启数量、设备文件 |
/etc/sysconfig/init | //控制tty终端的开启数量、终端颜色 |
通过修改/etc/init/start-ttys.conf和/etc/sysconfig/init,可以减少开放的tty终端数量。
[root@centos6 ~]# vim /etc/init/start-ttys.conf
env ACTIVE_CONSOLES=/dev/tty[456]
#找出以上行,将颜色加粗部分更改为456,默认是1-6
[root@centos6 ~]# vim /etc/sysconfig/init
ACTIVE_CONSOLES=/dev/tty[456]
# 进入/etc/sysconfig/init筛选出以上行,将其 加粗部分修改为456,
[root@centos6 ~]# reboot
# 重启生效
#禁用tty1、tty2、tty3终端以后,重启开机并进入字符模式时,默认将无法登录。必须按Ctrl+F4组合键或Ctrl+F5、Ctrl+F6组合键切换到可用终端,然后才可以进行登录。
2、禁用root用户
在Linux系统中,login程序会读取/etc/securetty文件,以决定允许root用户从哪些终端登录系统,若要禁用root用户从指定的终端登录,只需要从该文件中删除或者注释掉对应的行即可。
[root@centos6 ~]# vim /etc/securetty
#tty5
#tty6
#进入到/etc/securetty文件中,将tty5和tty6注释掉,表示root用户将无法从tty5和tty6终端登录
3、禁用本地普通用户
当服务器正在进行备份或者调试等维护工作时,可能不希望有新的用户登录系统。这时候只需要简单的建立/etc/nologin文件即可。login程序会检查/etc/nologin文件是否存在,如果存在则拒绝普通用户登录系统。
[root@centos6 ~]# touch /etc/nologin
#待维护结束以后删除该文件即可恢复
四、弱口令检测工具——John the Ripper
[root@centos6 ~]# tar xf john-1.8.0.tar.xz
# 解压这个软件包到当前目录下(软件包下载地址:http://www.openwall.com/john/)
[root@centos6 ~]# cd john-1.8.0
[root@centos6 john-1.8.0]# ls -ld *
drwxr-xr-x 2 root root 4096 8月 14 21:42 doc
lrwxrwxrwx 1 root root 10 8月 14 21:42 README -> doc/README
drwxr-xr-x 2 root root 4096 8月 14 21:42 run
drwxr-xr-x 2 root root 4096 8月 14 21:42 src
[root@centos6 john-1.8.0]# cd src/
[root@centos6 src]# make clean linux-x86-64
rm -f ../run/john ../run/unshadow ../run/unafs ../run/unique ../run/john.bin ../run/john.com ../run/unshadow.com ../run/unafs.com ../run/unique.com ../run/john.exe ../run/unshadow.exe ../run/unafs.exe ../run/unique.exe
rm -f ../run/john.exe john-macosx-* *.o *.bak core
rm -f detect bench generic.h arch.h tmp.s
cp /dev/null Makefile.dep
ln -sf x86-64.h arch.h
make ../run/john ../run/unshadow ../run/unafs ../run/unique \
JOHN_OBJS="DES_fmt.o DES_std.o DES_bs.o DES_bs_b.o BSDI_fmt.o MD5_fmt.o MD5_std.o BF_fmt.o BF_std.o AFS_fmt.o LM_fmt.o trip_fmt.o dummy.o batch.o bench.o charset.o common.o compiler.o config.o cracker.o crc32.o external.o formats.o getopt.o idle.o inc.o john.o list.o loader.o logger.o math.o memory.o misc.o options.o params.o path.o recovery.o rpp.o rules.o signals.o single.o status.o tty.o wordlist.o unshadow.o unafs.o unique.o c3_fmt.o x86-64.o" \
CFLAGS="-c -Wall -Wdeclaration-after-statement -O2 -fomit-frame-pointer -DHAVE_CRYPT" \
LDFLAGS="-s -lcrypt"
make[1]: Entering directory `/root/john-1.8.0/src‘
gcc -c -Wall -Wdeclaration-after-statement -O2 -fomit-frame-pointer -DHAVE_CRYPT -funroll-loops DES_fmt.c
gcc -c -Wall -Wdeclaration-after-statement -O2 -fomit-frame-pointer -DHAVE_CRYPT -funroll-loops DES_std.c
gcc -c -Wall -Wdeclaration-after-statement -O2 -fomit-frame-pointer -DHAVE_CRYPT -funroll-loops DES_bs.c
gcc -c -Wall -Wdeclaration-after-statement -O2 -fomit-frame-pointer -DHAVE_CRYPT -Os -funroll-loops -finline-functions DES_bs_b.c
....以下内容省略....
#以上内容为编译内容,编译的时候需要语言编译器,如果没有语言编译器将无法进行编译,如果没有请使用yum安装gcc ,yum的安装方法请自行查阅
http://bella41981.blog.51cto.com/10603572/1828900在这里不再做过多的赘述
[root@centos6 src]# cd ..
[root@centos6 john-1.8.0]# cd run/
[root@centos6 run]# ls
ascii.chr john lm_ascii.chr makechr relbench unique
digits.chr john.conf mailer password.lst unafs unshadow
[root@centos6 run]# cp /etc/shadow /root/shadow.txt
[root@centos6 run]# ./john /root/shadow.txt
Loaded 4 password hashes with 4 different salts (crypt, generic crypt(3) [?/64])
Press ‘q‘ or Ctrl-C to abort, almost any other key for status
111111 (lisi)
222222 (zhangsan)
333333 (cy)
666666 (root)
4g 0:00:00:47 100% 2/3 0.08421g/s 251.4p/s 263.6c/s 263.6C/s lacrosse..pumpkin
Use the "--show" option to display all of the cracked passwords reliably
Session completed
#大家可以看出笔者的系统上共创建了三个用户由于密码过于的简单轻而易举就破译出来了,我们还可以使用密码字典破译, 笔者在这里就不做过多的演示了,有兴趣的同学可以参考http://linuxlp.blog.51cto.com/11463376/1773674 http://netsecurity.51cto.com/art/201406/442674.htm这两片文章进行深入的了解
五、网络扫描——NMAP
NMAP可以使用系统镜像中自带的NMAP的rpm安装包也可以使用从官网下载的的最新的源码安装包,官网地址:https://nmap.org/ 我们这里使用的是系统镜像自带的rpm安装包。
[root@centos6 Packages]# rpm -ivh nmap-5.51-3.el6.x86_64.rpm
# 进行安装
NMAP常见的几种扫描如下:
-sS, TCP SYN扫描(半开扫描):只向目标发出SYN数据包,如果收到SYN/ACK包就认为目标端口正在监听,并立即断开连接;否则认为目标端口为开放
-sT, TCP连接扫描:这是一个完整的TCP扫描方式用来创建一个TCP连接,如果成功则认为目标端口正在监听,否则认为目标端口并未开放。
-sF, TCP FIN扫描,开放的端口会忽略这种数据包,关闭的端口会回应RST数据包,许多防火墙只对SYN数据包进行简单的过滤,而忽略了其他形式的TCP攻击包。这种类型的扫描可间接检测防火墙的健壮性。
-sU, UDP扫描,探测目标主机提供哪些UDP服务,UDP扫描的速度会比较慢。
-sP,ICMP扫描,类似于ping检测,快速判断目标主机是否存活,不做其他扫描。
-PO,跳过ping检测,这种方法认为所有目标主机是存活的,当对方不响应ICMP请求时,使用这种方式可以避免因无法ping通而放弃扫描。
3、扫描操作示例
[root@centos6 Packages]# nmap 127.0.0.1
Starting Nmap 5.51 ( http://nmap.org ) at 2016-08-15 01:16 CST
mass_dns: warning: Unable to determine any DNS servers. Reverse DNS is disabled. Try using --system-dns or specify valid servers with --dns-servers
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000050s latency).
Not shown: 996 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
111/tcp open rpcbind
631/tcp open ipp
Nmap done: 1 IP address (1 host up) scanned in 0.07 seconds
#扫描常用的TCP端口
[root@centos6 Packages]# nmap -sU 127.0.0.1
Starting Nmap 5.51 ( http://nmap.org ) at 2016-08-15 01:18 CST
mass_dns: warning: Unable to determine any DNS servers. Reverse DNS is disabled. Try using --system-dns or specify valid servers with --dns-servers
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000040s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
68/udp open|filtered dhcpc
111/udp open rpcbind
631/udp open|filtered ipp
Nmap done: 1 IP address (1 host up) scanned in 1.26 seconds
#扫描常用的UDP端口(在扫描结果中,STATE列若为open则表示端口为开启状态,为filtered表可能被防火墙过滤,为closed表示端口为关闭状态)
[root@centos6 Packages]# nmap -p 21 192.168.25.0/24
Starting Nmap 5.51 ( http://nmap.org ) at 2016-08-15 01:37 CST
mass_dns: warning: Unable to determine any DNS servers. Reverse DNS is disabled. Try using --system-dns or specify valid servers with --dns-servers
Nmap scan report for 192.168.25.1
Host is up (0.00023s latency).
PORT STATE SERVICE
21/tcp filtered ftp
MAC Address: 00:50:56:C0:00:0A (VMware)
Nmap scan report for 192.168.25.2
Host is up (0.00020s latency).
PORT STATE SERVICE
21/tcp closed ftp
Nmap scan report for 192.168.25.3
Host is up (0.00094s latency).
PORT STATE SERVICE
21/tcp filtered ftp
MAC Address: 00:0C:29:AD:0E:B9 (VMware)
Nmap scan report for 192.168.25.4
Host is up (0.00087s latency).
PORT STATE SERVICE
21/tcp filtered ftp
MAC Address: 00:50:56:26:D0:62 (VMware)
Nmap done: 256 IP addresses (4 hosts up) scanned in 2.42 seconds
#查看192.168.25.0/24网段中有哪些主机提供FTP服务。
[root@centos6 Packages]# nmap -n -sP 192.168.25.0/24
Starting Nmap 5.51 ( http://nmap.org ) at 2016-08-15 01:39 CST
Nmap scan report for 192.168.25.1
Host is up (0.00022s latency).
MAC Address: 00:50:56:C0:00:0A (VMware)
Nmap scan report for 192.168.25.2
Host is up.
Nmap scan report for 192.168.25.3
Host is up (0.00034s latency).
MAC Address: 00:0C:29:AD:0E:B9 (VMware)
Nmap scan report for 192.168.25.4
Host is up (0.00052s latency).
MAC Address: 00:50:56:26:D0:62 (VMware)
Nmap done: 256 IP addresses (4 hosts up) scanned in 2.19 seconds
# 检测ip地址位于192.168.25.0/24网段中有哪些主机存活
[root@centos6 Packages]# nmap -p 139,445 192.168.25.0/24
Starting Nmap 5.51 ( http://nmap.org ) at 2016-08-15 01:42 CST
mass_dns: warning: Unable to determine any DNS servers. Reverse DNS is disabled. Try using --system-dns or specify valid servers with --dns-servers
Nmap scan report for 192.168.25.1
Host is up (0.00046s latency).
PORT STATE SERVICE
139/tcp open netbios-ssn
445/tcp open microsoft-ds
MAC Address: 00:50:56:C0:00:0A (VMware)
Nmap scan report for 192.168.25.2
Host is up (0.00032s latency).
PORT STATE SERVICE
139/tcp closed netbios-ssn
445/tcp closed microsoft-ds
Nmap scan report for 192.168.25.3
Host is up (0.00030s latency).
PORT STATE SERVICE
139/tcp filtered netbios-ssn
445/tcp filtered microsoft-ds
MAC Address: 00:0C:29:AD:0E:B9 (VMware)
Nmap scan report for 192.168.25.4
Host is up (0.00034s latency).
PORT STATE SERVICE
139/tcp filtered netbios-ssn
445/tcp filtered microsoft-ds
MAC Address: 00:50:56:26:D0:62 (VMware)
Nmap done: 256 IP addresses (4 hosts up) scanned in 2.24 seconds
#检测192.168.25.0/24网段中是否有主机开启文件共享服务。
#实际上NMAP提供的扫描类型还有很多,选项还有很多,适用于不同的扫描需求,本章仅介绍其中的一小部分,更多内容请大家查阅一下网址:http://jakielong.iteye.com/blog/795583
原文地址:http://bella41981.blog.51cto.com/10603572/1837824