防偽碼:千磨萬擊還堅勁,任爾東西南北風
第八章 系統(tǒng)安全及應用
前言:雖然說linux系統(tǒng)安全,高效,穩(wěn)定,但如果平時不注意安全優(yōu)化,也不會安全。本章將介紹賬戶安全,系統(tǒng)引導和登錄的安全,以及弱口令檢測,網(wǎng)絡掃描工具的使用+綜合實戰(zhàn)!
一、賬號安全控制
1、系統(tǒng)賬號清理
1)以下常見的非登錄用戶要確保不被人為改動:
2) 各種非登錄賬戶中,還有一部分是很少用到的,如news,uucp,games,gopher,這些用戶可視為冗余賬號,直接刪除即可
3) 若不確定能否被刪除,可以暫時鎖定
4) 如果服務器中的賬戶已經(jīng)固定,不再進行更改,還可以采用鎖定賬號配置文件的方法。
使用chattr命令,分別結合+i,-i來鎖定、解鎖。使用lsattr查看文件鎖定情況。
2、 密碼安全控制
1) 設置密碼有效期為30天
修改配置文件,適合新建立的用戶,vi /etc/login.defs
使用命令:Chage -M 30 zhangsan,適用于已有的張三用戶
2) 設置用戶下次登錄時重設密碼
然后使用張三登錄終端
先輸入原密碼,然后再輸入兩次新密碼,注意復雜性。
3、 命令歷史,自動注銷
1) 修改配置文件,設置最多紀錄200條歷史命令,如果紀錄太多,容易泄露信息。
Vi /etc/profile,適用于新登錄的用戶
重啟系統(tǒng)或者執(zhí)行source /etc/profile使之生效。
執(zhí)行export HISTSIZE=10適用于當前的賬戶
2) 當用戶退出已登錄的bash環(huán)境后,清空歷史紀錄
vi ~/.bash_history
刪除一些不想讓別人看到的命令,保存并退出
執(zhí)行history -c:清空本次留在緩存中的歷史命令
history -w :強制刷新緩存中的命令記錄到.bash_history 文件中
然后重啟之后重新登錄系統(tǒng),執(zhí)行history發(fā)現(xiàn)沒有歷史紀錄
3) 設置超時時間,指定時間沒有任何輸入就自動注銷。
Vi /etc/profile,適用于新登錄的用戶。
執(zhí)行export TMOUT=10用于當前用戶(為了測試方便,時間調(diào)10秒),10秒之內(nèi)沒有任何輸入就退出系統(tǒng)。也可以使用unset TMOUT取消設置
二、 用戶切換與提權
1、 su命令:用來切換用戶,具有該用戶的所有權限。
1)su切換用戶
上圖的命令只切換用戶身份,不切換用戶環(huán)境,如果想切換身份的同時切換環(huán)境,需要在su后面加“-”,如下圖:
2) 允許個別用戶使用su命令進行切換,需要將授權使用su命令的用戶zhangsan添加到wheel組,
修改/etc/pam.d/su認證配置
Vi /etc/pam.d/su,去掉下圖中圈中的auth前面的#號。
重啟系統(tǒng)之后使用zhangsan登錄,執(zhí)行su - root 可以正常切換,但是使用其他用戶提示密碼不正確,登錄失敗。
2、 sudo命令,提升執(zhí)行權限,可以讓普通用戶擁有一部分管理權限,又不需要將root用戶的密碼告訴對方。
1) 在配置文件/etc/sudoers中添加授權
例如:授權用戶lisi能夠執(zhí)行ifconfig命令修改ip地址,而wheel組的用戶不需要驗證密碼即可執(zhí)行任何命令,可以執(zhí)行以下操作。
執(zhí)行命令:Visudo
2) 通過sudo命令測試特權命令
使用lisi登錄系統(tǒng),執(zhí)行/sbin/ifconfig eth0:0 192.168.1.1,提示失敗,權限不夠。
如果在命令前面加上sudo,執(zhí)行成功
三、 系統(tǒng)引導和登錄控制
1、 開關機安全控制
1) 調(diào)整biso引導控制
將第一引導設備設置為當前系統(tǒng)所在磁盤
禁止從光盤,u盤,網(wǎng)絡等引導系統(tǒng)(Disabled)
將bios設置好管理密碼。
2) 禁止ctrl+alt+del重啟系統(tǒng)系統(tǒng)
Vi /etc/init/control-alt-delete.conf
重啟系統(tǒng)之后,按ctrl+alt+del無法重啟系統(tǒng)(在終端中測試)
3) 限制更改grub引導參數(shù)
首先使用grub-md5-mcypt生成加密的密碼
然后修改配置文件,把密文添加到第一個title之前,如下圖:
重啟系統(tǒng)進入grub菜單,如果想修改引導參數(shù),必須先按p輸入密碼,然后按e才能編輯引導參數(shù)
2、 終端及登錄控制
1) 減少開放的tty終端個數(shù),禁用tty1,tty2,tty3
Vi /etc/init/start-ttys.conf
Vi /etc/sysconfig/init
注意兩個文件都需要更改
2)禁止root用戶從tty5和tty6終端登錄
Vi /etc/securetty
3)禁止普通用戶登錄,只需要建立/etc/nologin文件即可,如果恢復普通用戶登錄,刪除這個文件即可
Touch /etc/nologin
然后使用普通用戶登錄測試
四、 弱口令檢測和端口掃描
1、 弱口令探測(john the ripper)
1)下載并安裝
查看是否安裝成功
2) 檢測弱口令
查看密碼破解出的賬戶列表:
3) 使用密碼字典文件破解,默認的字典文件為password.lst
首先清空破解出的賬戶列表
然后為xiaoming用戶設置強密碼Pwd@123
把密碼寫在字典文件中:vi password.lst,也可以使用密碼字典生成工具生成密碼,然后再導入到password.lst文件中。
執(zhí)行破解(破解之前需要重新拷貝shadow文件
2、網(wǎng)絡掃描(NMAP)
1)安裝NAMP軟件包
2) 針對本機進行掃描,檢查開放了哪些常用的tcp端口,udp端口
Filtered表示可能被防火墻過濾
3) 檢查哪些主機提供了ftp服務
4) 檢測192.168.0.0網(wǎng)段中有哪些存活主機(能ping通)
5) 檢測192.168.0.1-254主機是否開啟文件共享服務
綜合實戰(zhàn)演練:
實驗環(huán)境:
某公司新增了一臺企業(yè)級服務器,已安裝運行RHEL 6操作系統(tǒng),由系統(tǒng)運維部、軟件開發(fā)部、技術服務部共同使用。由于用戶數(shù)量眾多,且使用時間不固定,要求針對賬號和登錄過程采取基本的安全措施。
需求描述:
1、允許radmin使用su命令進行切換,其他用戶一律禁止切換身份
2、授權zhangsan管理員工的賬號,但禁止其修改root用戶的信息
3、授權l(xiāng)isi能夠執(zhí)行/sbin/,/usr/sbin目錄下的所有特權命令,不需要密碼驗證
4、所有的su、sudo操作,必須在系統(tǒng)日志文件中進行記錄
5、禁止使用ctrl+alt+del快捷鍵,只開放tty3,tty5終端,為grub引導菜單設置密碼
A、設置使用su命令
(1)修改認證文件/etc/pam.d/su,啟用pam_wheel.so認證模塊。
(2)將radmin用戶加入到wheel組。
(3)驗證除了root、radmin以外,其他用戶均不能使用su進行切換。
B、設置sudo授權
(1)授權用戶zhangsan使用useradd、userdel、passwd、usermod命令,但禁止其執(zhí)行“passwd root”、“usermod * root”操作。(2)授權l(xiāng)isi用戶使用/sbin/*、/usr/sbin/*命令,添加NOPASSWD:以取消驗證。(3)添加“Defaults logfile”配置行,以啟用sudo日志。
(4)分別以zhangsan、lisi用戶登錄,驗證授權的sudo操作,并查看日志。
C、限制引導及登錄過程
(1)禁用Ctrl+Alt+Del熱鍵,禁用tty1、tty2、tty4、tty6這四個終端。
(2)在grub.conf文件中的第一個title行之前添加密碼配置。
(3)重啟后進入到GRUB菜單界面,驗證直接按e鍵已無法編輯引導參數(shù)。
謝謝觀看 由衷的希望能幫到大家!
本文出自 “一盞燭光” 博客,謝絕轉(zhuǎn)載!
更多建議: