您好,登錄后才能下訂單哦!
1.賬號(hào)安全控制
2.系統(tǒng)引導(dǎo)和登錄控制
3.弱口令檢測(cè)
4.端口掃描
? (1)在Linux系統(tǒng)中,除了用戶手動(dòng)創(chuàng)建的各種賬號(hào)之外,還包括一些隨系統(tǒng)或程序安裝過程而產(chǎn)生的其他大量賬號(hào)。除了root用戶,大部分的非登錄用戶(bin、daemon、adm、nobody、lp、apache等)是不能登錄的。
使用grep命令可以查看非登錄用戶如下:
[root@localhost ~]# grep "/sbin/nologin$" /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
libstoragemgmt:x:998:996:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
colord:x:997:995:User for colord:/var/lib/colord:/sbin/nologin
saslauth:x:996:76:Saslauthd user:/run/saslauthd:/sbin/nologin
rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
chrony:x:995:991::/var/lib/chrony:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
geoclue:x:994:989:User for geoclue:/var/lib/geoclue:/sbin/nologin
qemu:x:107:107:qemu user:/:/sbin/nologin
radvd:x:75:75:radvd user:/:/sbin/nologin
setroubleshoot:x:993:988::/var/lib/setroubleshoot:/sbin/nologin
sssd:x:992:987:User for sssd:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:991:986::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologi
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
? (2)而對(duì)于Linux服務(wù)器中長期不用的用戶賬號(hào),若無法確定是否應(yīng)該刪除,可以暫時(shí)將其鎖定。
[root@localhost ~]# usermod -L zhangsan
[root@localhost ~]# passwd -S zhangsan
zhangsan LK 2019-11-15 0 99999 7 -1 (密碼已被鎖定。)
[root@localhost ~]# passwd -u zhangsan
解鎖用戶 zhangsan 的密碼。
passwd: 操作成功
? (3)當(dāng)然,在服務(wù)器中如果說用戶賬號(hào)已經(jīng)固定,不再更改,還可以采取鎖定賬號(hào)配置文件的方法,使用chattr(change attribution —更改文件狀態(tài))命令。
[root@localhost ~]# chattr +i /etc/passwd /etc/shadow
[root@localhost ~]# lsattr /etc/passwd /etc/shadow
----i----------- /etc/passwd
----i----------- /etc/shadow
[root@localhost ~]# useradd lisi
useradd:無法打開 /etc/passwd
[root@localhost ~]# chattr -i /etc/passwd /etc/shadow
[root@localhost ~]# lsattr /etc/passwd /etc/shadow
---------------- /etc/passwd
---------------- /etc/shadow
[root@localhost ~]# useradd lisi
命令解釋:+i表示鎖定,-i表示解鎖,lsattr表示查看狀態(tài)
? 設(shè)定密碼期限的方法結(jié)合實(shí)例來講述
[root@localhost ~]#head -25 /etc/login.defs |tail -1
PASS_MAX_DAYS 99999
[root@localhost ~]# vim /etc/login.defs
[root@localhost ~]# head -25 /etc/login.defs |tail -1
PASS_MAX_DAYS 30
[root@localhost ~]# useradd wangwu
[root@localhost ~]# passwd wangwu
更改用戶 wangwu 的密碼 。
新的 密碼:
無效的密碼: 密碼少于 8 個(gè)字符
重新輸入新的 密碼:
passwd:所有的身份驗(yàn)證令牌已經(jīng)成功更新。
[root@localhost ~]# tail -1 /etc/shadow
wangwu:$6$pDVLca5K$iy9JAb4PzbG14d3XfG8ei7dV0YnJFjOwRJVMzs3bMFyp.XPEkv0WO5XaGViv.4.n1jp5fPSCDHanJh3j3Am4f1:18215:0:30:7:::
操作解釋:查看/etc/login.defs文件中第25行內(nèi)容,用vim編輯器進(jìn)去修改,將其改為30,表示最長使用時(shí)間,即密碼的有效期為30天。該方式只針對(duì)之后新建的用戶,那么對(duì)于原有用戶如何操作呢?答案是使用chage命令。
[root@localhost ~]# tail -3 /etc/passwd
zhangsan:x:1001:1001::/home/zhangsan:/bin/bash
lisi:x:1002:1002::/home/lisi:/bin/bash
wangwu:x:1003:1003::/home/wangwu:/bin/bash
[root@localhost ~]# chage -M 20 lisi
[root@localhost ~]# chage -M 20 wangwu
[root@localhost ~]# tail -3 /etc/shadow
zhangsan:$6$WsyIZguS$ZsJObVyyFzwxT2p0RoIemdrQjLUmoKDkzY8DlrtctYLBzxl0ja3rcp84BP3D5MTHfK.pj1IKAZpezYUwv1d/p0:18215:0:99999:7:::
lisi:$6$yo1cSlqf$tR5J63h7yOdhqearLDVb8nOfpBlJE6Oem9h5bkREzCRDBA.7OsT.wsX5zJ3I.BUbHxfaw56JbP0IkDyAGwbCi0:18215:0:20:7:::
wangwu:$6$pDVLca5K$iy9JAb4PzbG14d3XfG8ei7dV0YnJFjOwRJVMzs3bMFyp.XPEkv0WO5XaGViv.4.n1jp5fPSCDHanJh3j3Am4f1:18215:0:20:7:::
當(dāng)然了,如果是批量創(chuàng)建的用戶初次登錄時(shí)必須自設(shè)密碼,由管理員執(zhí)行強(qiáng)制策略,以便下次登錄時(shí)必須修改密碼。使用“chage -d 0 用戶名”來進(jìn)行設(shè)置。
一般情況下,歷史命令默認(rèn)是記錄1000條,對(duì)于新登錄用戶修改/etc/profile文件將HISTSIZE更改即可
當(dāng)前用戶則直接在當(dāng)前bash終端更改:export HISTSIZE=100
[root@localhost ~]# echo "HISTSIZE=10" >> /etc/profile //對(duì)于新登錄用戶
[root@localhost ~]# tail -1 /etc/profile
HISTSIZE=10
[root@localhost ~]#su - lisi
[lisi@localhost ~]$ history
22 clear
23 ls
24 cd /etc/
25 ls
26 cd ..
27 cd
28 ls
29 history
30 ls
31 history
[root@localhost ~]# export HISTSIZE=5 //對(duì)于當(dāng)前bash終端用戶
[root@localhost ~]# history
6 grub2-mkconfig -o /boot/grub2/grub.cfg
7 init 6
8 cd
9 export HISTSIZE=5
10 history
當(dāng)然,還可以修改用戶宿主目錄下的~/.bash_logout文件,當(dāng)用戶退出后所記錄的歷史命令將自動(dòng)清空。
也可以設(shè)置一個(gè)閑置超時(shí)時(shí)間——多久不操作就自動(dòng)注銷(修改TMOUT變量,不推薦)
[root@localhost ~]# cat ~/.bash_logout
# ~/.bash_logout
[root@localhost ~]# echo "history -c" >> ~/.bash_logout
[root@localhost ~]# echo "clear" >> ~/.bash_logout
[root@localhost ~]# cat ~/.bash_logout
# ~/.bash_logout
history -c
clear
[root@localhost ~]# source ~/.bash_logout
[root@localhost ~]# history
3 history
[root@localhost ~]#
? 一般情況下,大多數(shù)Linux服務(wù)器不建議用戶直接以root用戶進(jìn)行登錄。一方面可以大大減少因誤操作而導(dǎo)致的破壞,另一方面也降低了特權(quán)密碼在不安全的網(wǎng)絡(luò)中被泄露的風(fēng)險(xiǎn)。
? 在Linux系統(tǒng)為我們提供su、sudo兩種命令,其中su命令主要用來切換用戶,而sudo命令用來提升執(zhí)行的權(quán)限。
? su命令,可以切換為指定的另一個(gè)用戶,從而具有該用戶的所有權(quán)限。其中選項(xiàng)“-”表示切換用戶后進(jìn)入目標(biāo)用戶的登錄shell環(huán)境,若沒有選擇該選項(xiàng),則只是切換用戶,不切換用戶環(huán)境。對(duì)于切換為root用戶的情況,“root”可以省略。
? 默認(rèn)情況下,任何用戶都允許使用su命令,從而有機(jī)會(huì)反復(fù)嘗試其他用戶的登錄密碼,帶來安全風(fēng)險(xiǎn)。為了加強(qiáng)su命令的使用控制,可以借助于pam_wheel認(rèn)證模塊,只允許個(gè)別用戶使用su命令進(jìn)行切換。具體實(shí)例如下:
[root@localhost ~]# su - lisi
上一次登錄:五 11月 15 10:24:08 CST 2019pts/0 上
[lisi@localhost ~]$ su -
密碼:
上一次登錄:五 11月 15 10:25:26 CST 2019從 192.168.68.1pts/1 上
[root@localhost ~]# su zhangsan
[zhangsan@localhost root]$ su
密碼:
[root@localhost ~]# gpasswd -a zhangsan wheel
正在將用戶“zhangsan”加入到“wheel”組中
[root@localhost ~]# grep wheel /etc/group
wheel:x:10:zhangsan
[root@localhost ~]# head -6 /etc/pam.d/su | tail -1
#auth required pam_wheel.so use_uid
[root@localhost ~]# vim /etc/pam.d/su
[root@localhost ~]# head -6 /etc/pam.d/su | tail -1
auth required pam_wheel.so use_uid
[root@localhost ~]# su - lisi
上一次登錄:五 11月 15 10:48:56 CST 2019pts/1 上
[lisi@localhost ~]$ su -
密碼:
su: 拒絕權(quán)限
[lisi@localhost ~]$ exit
登出
[root@localhost ~]# su - zhangsan
上一次登錄:五 11月 15 10:49:10 CST 2019pts/1 上
最后一次失敗的登錄:五 11月 15 10:56:24 CST 2019pts/1 上
最有一次成功登錄后有 1 次失敗的登錄嘗試。
[zhangsan@localhost ~]$ su -
密碼:
上一次登錄:五 11月 15 10:49:17 CST 2019pts/1 上
最后一次失敗的登錄:五 11月 15 10:57:26 CST 2019pts/1 上
最有一次成功登錄后有 2 次失敗的登錄嘗試。
命令解釋:
? 使用gpasswd命令將zhangsan用戶添加到wheel組中,編輯/etc/pam.d/su文件,刪除第6行的#號(hào),嘗試切換其他用戶,由于lisi不在wheel組中,所以是拒絕權(quán)限的,但是張三可以正常切換到root,是因?yàn)樗趙heel組中。su命令的執(zhí)行操作將會(huì)記錄到安全日志/var/log/secure中。
[root@localhost ~]# vim /var/log/secure
1 Nov 14 11:43:22 localhost polkitd[572]: Loading rules from directory /etc/polkit-1/rules.d
2 Nov 14 11:43:22 localhost polkitd[572]: Loading rules from directory /usr/share/polkit-1/rules.d
3 Nov 14 11:43:22 localhost polkitd[572]: Finished loading, compiling and executing 8 rules
4 Nov 14 11:43:22 localhost polkitd[572]: Acquired the name org.freedesktop.PolicyKit1 on the system bus
5 Nov 14 11:43:23 localhost sshd[1030]: Server listening on 0.0.0.0 port 22.
6 Nov 14 11:43:23 localhost sshd[1030]: Server listening on :: port 22.
7 Nov 14 11:44:00 localhost polkitd[572]: Registered Authentication Agent for unix-process:10820:4415 (system bus name :1.133 [/usr/bin/pkttyagent --no tify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8)
8 Nov 14 11:44:00 localhost polkitd[572]: Unregistered Authentication Agent for unix-process:10820:4415 (system bus name :1.133, object path /org/freed esktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8) (disconnected from bus)
9 Nov 14 11:44:00 localhost polkitd[572]: Registered Authentication Agent for unix-process:10843:4423 (system bus name :1.134 [/usr/bin/pkttyagent --no tify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8)
10 Nov 14 11:44:00 localhost polkitd[572]: Unregistered Authentication Agent for unix-process:10843:4423 (system bus name :1.134, object path /org/freed esktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8) (disconnected from bus)
11 Nov 14 11:44:00 localhost gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session opened for user gdm by (uid=0)
12 Nov 14 11:44:01 localhost polkitd[572]: Registered Authentication Agent for unix-session:c1 (system bus name :1.140 [/usr/bin/gnome-shell], object pa th /org/freedesktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8)
13 Nov 14 11:44:11 localhost gdm-password]: pam_unix(gdm-password:session): session opened for user root by (uid=0)
14 Nov 14 11:44:11 localhost polkitd[572]: Unregistered Authentication Agent for unix-session:c1 (system bus name :1.140, object path /org/freedesktop/P olicyKit1/AuthenticationAgent, locale zh_CN.UTF-8) (disconnected from bus)
15 Nov 14 11:44:12 localhost polkitd[572]: Registered Authentication Agent for unix-session:1 (system bus name :1.161 [/usr/bin/gnome-shell], object pat h /org/freedesktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8)
16 Nov 14 20:21:09 localhost polkitd[572]: Registered Authentication Agent for unix-process:19734:78501 (system bus name :1.254 [/usr/bin/pkttyagent --n otify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8)
17 Nov 14 20:21:11 localhost polkitd[572]: Unregistered Authentication Agent for unix-process:19734:78501 (system bus name :1.254, object path /org/free desktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8) (disconnected from bus)
18 Nov 14 20:21:25 localhost sshd[20138]: Accepted password for root from 192.168.68.1 port 59169 ssh3
19 Nov 14 20:21:25 localhost sshd[20138]: pam_unix(sshd:session): session opened for user root by (uid=0)
20 Nov 14 20:21:46 localhost sshd[20138]: pam_unix(sshd:session): session closed for user root
21 Nov 15 09:24:35 localhost polkitd[572]: Registered Authentication Agent for unix-process:24514:117799 (system bus name :1.302 [/usr/bin/pkttyagent -- notify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8)
22 Nov 15 09:25:41 localhost polkitd[555]: Loading rules from directory /etc/polkit-1/rules.d
23 Nov 15 09:25:41 localhost polkitd[555]: Loading rules from directory /usr/share/polkit-1/rules.d
24 Nov 15 09:25:41 localhost polkitd[555]: Finished loading, compiling and executing 8 rules
25 Nov 15 09:25:41 localhost polkitd[555]: Acquired the name org.freedesktop.PolicyKit1 on the system bus
26 Nov 15 09:25:42 localhost sshd[951]: Server listening on 0.0.0.0 port 22.
27 Nov 15 09:25:42 localhost sshd[951]: Server listening on :: port 22.
注意:務(wù)必編輯/etc/pam.d/su文件!才能正常操作,否則都是默認(rèn)正常切換的。
(1)在配置文件/etc/sudoers中添加授權(quán)(注意需要:wq!強(qiáng)制保存)
首先我們來看一下這個(gè)配置文件
[root@localhost ~]# grep -v "^#" /etc/sudoers //反向檢索出不是以#號(hào)開頭的內(nèi)容
Defaults !visiblepw
Defaults always_set_home
Defaults match_group_by_gid
Defaults env_reset
Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS"
Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
root ALL=(ALL) ALL
%wheel ALL=(ALL) ALL
? 其中我們看最后的兩個(gè),root 和%wheel,分別表示root用戶可以執(zhí)行所有權(quán)限,在wheel組中的成員也可以執(zhí)行所有權(quán)限。
? 那我們使用一個(gè)不屬于wheel組的用戶,賦予他一個(gè)修改ip地址的權(quán)限來驗(yàn)證。
[root@localhost ~]# vim /etc/sudoers //在該文件中添加命令:lisi localhost=/sbin/ifconfig
[root@localhost ~]# su - lisi
上一次登錄:五 11月 15 10:55:54 CST 2019pts/1 上
[lisi@localhost ~]$ su -
密碼:
su: 拒絕權(quán)限
[lisi@localhost ~]$ ifconfig ens33 1.1.1.1 //沒有使用sudo是無法操作的
SIOCSIFADDR: 不允許的操作
SIOCSIFFLAGS: 不允許的操作
[lisi@localhost ~]$ sudo ifconfig ens33 1.1.1.1 //第一次需要輸入自己的密碼,只要不超過5min,就無需再次輸入
我們信任您已經(jīng)從系統(tǒng)管理員那里了解了日常注意事項(xiàng)。
總結(jié)起來無外乎這三點(diǎn):
#1) 尊重別人的隱私。
#2) 輸入前要先考慮(后果和風(fēng)險(xiǎn))。
#3) 權(quán)力越大,責(zé)任越大。
[sudo] lisi 的密碼:
[lisi@localhost ~]$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 1.1.1.1 netmask 255.0.0.0 broadcast 1.255.255.255
inet6 fe80::7eb1:2dde:8a54:6927 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:56:d3:4a txqueuelen 1000 (Ethernet)
RX packets 3105 bytes 231965 (226.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 981 bytes 150502 (146.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 16 bytes 1752 (1.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 16 bytes 1752 (1.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:71:37:09 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
? PAM(Pluggable Authentication Modules),是Linux系統(tǒng)可插拔認(rèn)證模塊。
? (1)高效且靈活的用戶級(jí)別認(rèn)證方式,也是當(dāng)前Linux服務(wù)器普遍使用的認(rèn)證方式;
? (2)其提供看=了對(duì)所有服務(wù)進(jìn)行認(rèn)證的中央機(jī)制,適用于login,遠(yuǎn)程登錄等;
? (3)系統(tǒng)管理員通過PAM配置文件來制定不同應(yīng)用程序的不同認(rèn)證策略。
? 1、認(rèn)證管理(authentication management)
? 主要是接受用戶名和密碼,進(jìn)而對(duì)該用戶的密碼進(jìn)行認(rèn)證,并負(fù)責(zé)設(shè)置用戶的一些秘密
? 信息。
? 2、帳戶管理(account management)
? 主要是檢查帳戶是否被允許登錄系統(tǒng),帳號(hào)是否已經(jīng)過期,帳號(hào)的登錄是否有時(shí)間段的
? 限制等等。
? 3、密碼管理(password management)
? 主要是用來修改用戶的密碼。
? 4、會(huì)話管理(session management)
? 主要是提供對(duì)會(huì)話的管理和記賬(accounting)。
? (1)PAM認(rèn)證一般遵循這樣的順序:Service(服務(wù))→PAM(配置文件)→pam_*.so
? (2)PAM認(rèn)證首先要確定那一項(xiàng)服務(wù),然后加載相應(yīng)的PAM的配置文件(位于/etc/pam.d下),最后調(diào)用認(rèn)證文件(位于/lib/security下)進(jìn)行安全認(rèn)證。
例如查看su的PAM配置文件
[root@localhost ~]# cat /etc/pam.d/su
#%PAM-1.0
auth sufficient pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth sufficient pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
#auth required pam_wheel.so use_uid
auth substack system-auth
auth include postlogin
account sufficient pam_succeed_if.so uid = 0 use_uid quiet
account include system-auth
password include system-auth
session include system-auth
session include postlogin
session optional pam_xauth.so
(1)每一行都是一個(gè)獨(dú)立的認(rèn)證過程
(2)每一行可以區(qū)分為三個(gè)字段:認(rèn)證類型、控制類型和PAM模塊及其參數(shù)
備注:禁止從其他設(shè)備引導(dǎo)系統(tǒng)操作,感覺若是出現(xiàn)忘記root密碼就可能無法從光驅(qū)去修改,所以還是謹(jǐn)慎操作
修改/etc/securetty文件,禁止root用戶從tty6登錄就將該行注釋掉
[root@localhost ~]# vim /etc/securetty
[root@localhost ~]# head -18 /etc/securetty |tail -1
#tty6
只需要?jiǎng)?chuàng)建一個(gè)/etc/nologin文件即可
[root@localhost ~]# touch /etc/nologin
[root@localhost tarpkg]# ls
apr-1.4.6.tar.gz apr-util-1.4.1.tar.gz httpd-2.4.2.tar.gz john-1.8.0.tar.gz
[root@localhost tarpkg]# tar zxf john-1.8.0.tar.gz -C /opt/ //解壓縮到/opt下
[root@localhost tarpkg]# ls /opt/
john-1.8.0 rh
[root@localhost tarpkg]# cd /opt/john-1.8.0/
[root@localhost john-1.8.0]# ls
doc README run src
root@localhost john-1.8.0]# cd src/ //查看文件信息,根據(jù)內(nèi)容我們知道需要安裝編譯器
[root@localhost src]# ls
AFS_fmt.c config.c ia64.h MD5_fmt.c ppc64alt.h trip_fmt.c
alpha.h config.h idle.c MD5_std.c ppc64.h tty.c
alpha.S cracker.c idle.h MD5_std.h recovery.c tty.h
batch.c cracker.h inc.c memory.c recovery.h unafs.c
batch.h crc32.c inc.h memory.h rpp.c unique.c
bench.c crc32.h john.asm mips32.h rpp.h unshadow.c
bench.h DES_bs_b.c john.c mips64.h rules.c vax.h
best.c DES_bs.c john.com misc.c rules.h wordlist.c
best.sh DES_bs.h john.h misc.h sboxes.c wordlist.h
BF_fmt.c DES_fmt.c list.c nonstd.c sboxes-s.c x86-64.h
BF_std.c DES_std.c list.h options.c signals.c x86-64.S
BF_std.h DES_std.h LM_fmt.c options.h signals.h x86-any.h
BSDI_fmt.c detect.c loader.c os.h single.c x86-mmx.h
c3_fmt.c dummy.c loader.h params.c single.h x86-mmx.S
charset.c external.c logger.c params.h sparc32.h x86.S
charset.h external.h logger.h pa-risc.h sparc64.h x86-sse.h
common.c formats.c Makefile path.c status.c x86-sse.S
common.h formats.h Makefile.dep path.h status.h
compiler.c getopt.c math.c ppc32alt.h symlink.c
compiler.h getopt.h math.h ppc32.h times.h
[root@localhost src]# ls ../run
ascii.chr john.conf mailer password.lst
digits.chr lm_ascii.chr makechr relbench
(2)安裝編譯器編譯安裝,得到可執(zhí)行文件john,然后運(yùn)行即可破解簡單密碼。
[root@localhost src]# yum install -y gcc gcc-c++
... //省略過程
完畢!
[root@localhost src]# rpm -q gcc
gcc-4.8.5-39.el7.x86_64
[root@localhost src]# rpm -q gcc-c+
[root@localhost src]# make linux-x86-64 //進(jìn)行編譯
... //省略過程
[root@localhost src]# cd ../run
[root@localhost run]# ls
ascii.chr john lm_ascii.chr makechr relbench unique
digits.chr john.conf mailer password.lst unafs unshadow
[root@localhost run]# ./john /etc/passwd /etc/shadow
Loaded 3 password hashes with 3 different salts (crypt, generic crypt(3) [?/64])
Press 'q' or Ctrl-C to abort, almost any other key for status
123456 (lokott)
123456 (root)
2g 0:00:01:06 7% 2/3 0.03025g/s 284.7p/s 287.6c/s 287.6C/s pookie1..mary1
Use the "--show" option to display all of the cracked passwords reliably
根據(jù)以上步驟,我們即可獲取root和lokott用戶的密碼了。
NMAP是個(gè)強(qiáng)大的端口掃描類安全評(píng)測(cè)工具,檢測(cè)主機(jī)數(shù)量眾多的巨大網(wǎng)絡(luò),支持ping掃描、多端口檢測(cè)、OS識(shí)別等多種技術(shù)。使用NMAP定期掃描內(nèi)部網(wǎng)絡(luò),可以找出網(wǎng)絡(luò)中不可控的應(yīng)用服務(wù),及時(shí)關(guān)閉不安全的服務(wù),減小安全風(fēng)險(xiǎn)。
nmap命令
命令格式:nmap [掃描類型] [選項(xiàng)] <掃描目標(biāo)...>
-sS:TCP SYN掃描(半開掃描)
-sT:TCP 連接掃描
-sF:TCP FIN掃描
-sU:UDP掃描
-sP: ICMP掃描
-P0:跳過ping檢測(cè)
[root@localhost ~]# rpm -q nmap
nmap-6.40-19.el7.x86_64
[root@localhost ~]# netstat -ntap //查看tcp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1267/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 942/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 944/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1252/master
tcp 0 52 192.168.68.130:22 192.168.68.1:52378 ESTABLISHED 3578/sshd: root@pts
tcp6 0 0 :::111 :::* LISTEN 1/systemd
tcp6 0 0 :::22 :::* LISTEN 942/sshd
tcp6 0 0 ::1:631 :::* LISTEN 944/cupsd
tcp6 0 0 ::1:25 :::* LISTEN 1252/master
[root@localhost ~]# netstat -nuap //查看udp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
udp 0 0 0.0.0.0:58802 0.0.0.0:* 3456/dhclient
udp 0 0 0.0.0.0:46033 0.0.0.0:* 563/avahi-daemon: r
udp 0 0 192.168.122.1:53 0.0.0.0:* 1267/dnsmasq
udp 0 0 0.0.0.0:67 0.0.0.0:* 1267/dnsmasq
udp 0 0 0.0.0.0:68 0.0.0.0:* 3456/dhclient
udp 0 0 0.0.0.0:5353 0.0.0.0:* 563/avahi-daemon: r
udp6 0 0 :::42353 :::* 3456/dhclient
我們安裝一個(gè)httpd服務(wù),并且啟動(dòng)httpd服務(wù),會(huì)發(fā)現(xiàn)80端口被使用了。
[root@localhost ~]# yum install -y httpd
已加載插件:fastestmirror, langpacks
... //省略內(nèi)容
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# nmap -sT 127.0.0.1
Starting Nmap 6.40 ( http://nmap.org ) at 2019-11-15 13:32 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00060s latency).
Not shown: 995 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
111/tcp open rpcbind
631/tcp open ipp
Nmap done: 1 IP address (1 host up) scanned in 0.07 seconds
? 本文主要介紹的是Linux/Centos7系統(tǒng)管理中系統(tǒng)安全與應(yīng)用的理論知識(shí),通過實(shí)例操作來加強(qiáng)對(duì)命令的理解。通過本文的學(xué)習(xí),可以方便查找安全隱患,從而及時(shí)采取有針對(duì)性的防護(hù)措施。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。