目錄
- 一、賬號安全控制
- (一)系統賬號清理
- 1、將非登錄用戶的Shell設為/sbin/nologin
- 2、鎖定長期不使用的賬號
- 3、洗掉無用的賬號
- 4、鎖定賬號檔案passwd、shadow
- (二)密碼安全控制
- 1、設定密碼有效期
- 2、要求用戶下次登錄時修改密碼
- (三)命令歷史限制
- 1、減少記錄的命令條數
- 2、登錄時自動清空命令歷史
- (四)終端自動注銷
- 1、閑置600秒后自動注銷
- 二、使用su命令切換用戶
- (一)用途用法及密碼驗證
- (二)限制使用su命令的用戶
- 1、將允許使用su命令的用戶加入wheel組
- 2、修改/etc/pam.d/su認證配置啟用pam_wheel認證
- (三)查看su操作記錄
- 1、安全日志檔案---/var/log/secure
- 三、Linux中的PAM安全認證
- (一)PAM安全認證流程
- (二)PAM認證原理
- 四、使用sudo機制提升權限
- (一)sudo命令的用途及用法
- (二)配置sudo授權
- 1、visudo或vi /etc/sudoers
- 2、記錄格式
- 3、語法格式
- 4、設定別名
- (三)查看sudo操作記錄
- 1、需要啟動Defaults logfile配置
- 2、默認日志檔案在"/var/log/sudo"
- (四)查詢授權的sudo操作
- 五、開關機安全控制
- (一)調整BIOS引導設定
- (二)GRUB限制
- 1、使用grub2-mkpasswd-pbkdf2生成密鑰
- 2、修改/etc/grub.d/00_header檔案,添加密碼記錄
- 3、生成新的grub.cfg組態檔
- 六、終端登錄安全控制
- (一)限制root只在安全端登錄
- 1、安全終端配置:/etc/securetty
- (二)禁止普通用戶登錄
- 1、建立 /etc/nologin檔案
- 2、洗掉 nologin 檔案或重啟后即恢復正常
- 七、系統弱口令檢測
- 1、解壓工具包到opt目錄下
- 2、將本地磁盤掛載到/mnt目錄下,然后安裝安裝軟體編譯工具
- 3、切換到scr子目錄進行編譯安裝
- 4、準備待破解的密碼檔案,然后去到 /opt/john-1.9.0/run子目錄下執行強制破解,/john --show /opt/shadow.txt查詢已破解出的賬號串列
- 5、若字典中沒有此密碼,則添加
- 八、網路埠掃描------NMAP
- (一)安裝 NMAP 軟體包
- (二)nmap命令常用選項與對應掃描型別
一、賬號安全控制
(一)系統賬號清理
1、將非登錄用戶的Shell設為/sbin/nologin
usermod -s /sbin/nologin用戶名
2、鎖定長期不使用的賬號
usermod -L用戶名 passwd-l 用戶名 --------------鎖定賬號
passwd-S用戶名 ----------------------------查看用戶狀態
passwd -u 用戶名 ------------------------------------解鎖賬號
3、洗掉無用的賬號
userdel -r 用戶名
4、鎖定賬號檔案passwd、shadow
chattr +i /etc/passwd /etc/shadow --------------鎖定檔案
Isattr /etc/passwd /etc/shadow-----------------------查看狀態
chattr -i /etc/passwd /etc/shadow-----------------解鎖檔案

(二)密碼安全控制
1、設定密碼有效期
[root@localhost ~]# vi /etc/login.defs----------------修改密碼組態檔,適用于新建用戶
PASS_ MAX_ DAYS 30
[root@localhost ~]# chage -M 30 zhangsan-----------適用于已有用戶


2、要求用戶下次登錄時修改密碼
[root@localhost ~]# chage -d 0 zhangsan-------------強制在下次登錄時更改密碼
[root@localhost ~]# cat /etc/shadow | grep zhangsan--------------shadow檔案中的第三個欄位被修改為

(三)命令歷史限制
1、減少記錄的命令條數
[root@localhost ~]# vi /etc/profile----------------系統環境變陣列態檔(所有用戶登錄都會執行)
export HISTSIZE=200


2、登錄時自動清空命令歷史
[root@localhost ~]# vi ~/.bashrc
echo “” > ~/.bash_ history


(四)終端自動注銷
1、閑置600秒后自動注銷
[root@localhost ~]# vi letc/profile
export TMQUT=600
[root@localhost ~]# source /etc/profile


二、使用su命令切換用戶
(一)用途用法及密碼驗證
?作用:切換用戶
?格式:su [-] 目標用戶 #帶“-”表示使用目標用戶的登錄shell環境,不加環境變數不變,
?可登錄的用戶一般分兩種種,超級用戶root、普通用戶,
?當root切換到任意的用戶時,不需要密碼,但當普通用戶切換其他用戶的時候,需要輸入目標用戶的密碼進行驗證,

(二)限制使用su命令的用戶
1、將允許使用su命令的用戶加入wheel組
gpasswd -a 用戶 wheel #添加用戶到wheel組中
grep wheel /etc/group #確定wheel組成員

2、修改/etc/pam.d/su認證配置啟用pam_wheel認證
vim /etc/pam.d/su #編輯/etc/pam.d/su檔案
auth sufficient pam_rootok.so
#pam_rootok.so模塊的主要作用是使uid為0的用戶root能夠直接通過認證而不用輸入密碼
... #省略部分
auth required pam_wheel.so use_uid
#pam_wheel.so作用是讓wheel組內的用戶使用su命令,其他人(包括root)無法使用su命令
每種狀態的解釋:
兩行都注釋:所有用戶都能使用su命令,切換時root和普通用戶都需要密碼驗證
開啟第一行,注釋第二行:(默認狀態)允許所有用戶間使用su命令進行切換的,切換時,root不需要密碼,其他用戶需要密碼,
注釋第一行,開啟第二行:只有wheel組內的用戶才能使用su命令,root用戶也無法切換,
兩行都開啟:只有root用戶和wheel組內的用戶才可以使用su命令,

修改檔案將命令前面的注釋符“#”洗掉,并“wq”保存,

(三)查看su操作記錄
1、安全日志檔案—/var/log/secure

三、Linux中的PAM安全認證
(一)PAM安全認證流程

(二)PAM認證原理
?PAM認證順序:Service(服務)—>PAM(組態檔)—>pam_*.so
?PAM首先確定服務,然后加載相應的PAM組態檔,最后呼叫PAM認證模塊進行安全認證,
用戶訪問服務器的時候,服務器的某一個服務程式把用戶的請求發送到PAM模塊進行認證,不同的應用程式所對應的PAM 模塊也是不同的,
四、使用sudo機制提升權限
(一)sudo命令的用途及用法
?作用:提升執行權限(使用其他用戶的身份執行)
?用法:sudo 授權命令
(二)配置sudo授權
1、visudo或vi /etc/sudoers
vi /etc/sudoers----此檔案默認權限為440,保存退出時必須執行wq!強制操作
2、記錄格式
用戶 主機名=命令程式串列
3、語法格式
用戶 主機名=命令程式串列
用戶 主機名=(用戶)命令程式串列
用戶:直接授權指定的用戶名,或采用“%組名"的形式(授權一個組的所有用戶)
主機名:使用此規則的主機名,沒配置過主機名時可用localhost,有配過主機名則用實際的主機名,ALL則代表所有主機
(用戶): 用戶能夠以何種身份來執行命令,此項可 省略,預設時以root用戶的身份來運行命令
命令程式串列:允許授權的用戶通過sudo方式執行的特權命令,需填寫命令程式的完整路徑,多個命令之間以逗號“,"進行分隔,ALL則代表系統所有命令




4、設定別名
輸入時,有時候有些用戶、主機名或命令字符比較長或復雜,可以設定一個別名,方便省力,
使用關鍵字 User_Alias、Host_Alias、Cmnd_Alias 來進行設定別名(別名必須為大寫)
多個資訊需要用“,”隔開,
User_Alias USERS=用戶名1,用戶名2,用戶名3 #用戶別名,USERS代表后面三個用戶
Host_Alias HOSTS=localhost,bogon #主機別名
Cmnd_Alias CMNDS=/sbin/ifconfig,/usr/sbin/useradd,/usr/sbin/userdel #命令別名
USERS HOSTS=CMNDS #使用別名撰寫授權

(三)查看sudo操作記錄
1、需要啟動Defaults logfile配置


2、默認日志檔案在"/var/log/sudo"


(四)查詢授權的sudo操作

五、開關機安全控制
(一)調整BIOS引導設定
?將第一引導設備設為當前系統所在硬碟
?禁止從其他設備(光碟、U盤、網路)引導系統
?將安全級別設為setup,并設定管理員密碼
(二)GRUB限制
?使用grub2-mkpasswd-pbkdf2生成密鑰
?修改/etc/grub.d/00_ header檔案中, 添加密碼記錄
?生成新的grub.cfg組態檔
grub2-mkpasswd-pbkdf2 #使用grub2-mkpasswd-pbkdf2生成密鑰
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak
cp /etc/grub.d/00_header /etc/grub.d/00_header.bak
vim /etc/grub.d/00_header #修改/etc/grub.d/00_header檔案,添加密碼記錄
cat << EOF
set superusers="root" #設定用戶名為root
password_pbkdf2 root grub.pbkdf2…… #設定密碼,省略部分內容為經過加密生成的密碼字串
EOF
grub2-mkconfig -o /boot/grub2/grub.cfg #生成新的 grub.cfg 檔案
1、使用grub2-mkpasswd-pbkdf2生成密鑰

2、修改/etc/grub.d/00_header檔案,添加密碼記錄
修改檔案前備份檔案,防止出現問題好恢復,這里將第三步的grup.cfg一起備份了


3、生成新的grub.cfg組態檔

重啟系統init 6,在相應界面按“e”,會跳出下圖界面,按照提示輸入用戶名和密碼才可以進入grub選單,


六、終端登錄安全控制
(一)限制root只在安全端登錄
1、安全終端配置:/etc/securetty
vi /etc/securetty
.....
#tty5
#tty6 #禁止root用戶從終端tty5、tty6登錄
(二)禁止普通用戶登錄
1、建立 /etc/nologin檔案
2、洗掉 nologin 檔案或重啟后即恢復正常
[root@localhost ~]# touch /etc/nologin #禁止普通用戶登錄
[root@localhost ~]# rm -f /etc/nologin #取消上述登錄限制

七、系統弱口令檢測
一款密碼分析工具,支持字典式的暴力破解,通過對shadow檔案的口令分析,可以檢測密碼強度,
---解壓工具包----
cd /opt
tar zxf john-1.8.0.tar.gz
---安裝軟體編譯工具---
yum install -y gcc gcc-c++ make
---切換到src子目錄---
cd /opt/john-1.8.0/src
---進行編譯安裝---
make clean linux-x86-64
---準備待破解的密碼檔案---
cp /etc/shadow /opt/shadow. txt
---執行暴力破解---
cd /opt/john-1.8.0/run
./john /opt/shadow.txt
---查看已破解出的賬戶串列---
./john --show /opt/shadow. txt
---使用密碼字典檔案---
> john.pot #清空已破解出的賬戶串列,以便重新分析
./john --wordlist=./password.lst /opt/shadow.txt #使用指定的字典檔案進行破解
1、解壓工具包到opt目錄下

2、將本地磁盤掛載到/mnt目錄下,然后安裝安裝軟體編譯工具

3、切換到scr子目錄進行編譯安裝

4、準備待破解的密碼檔案,然后去到 /opt/john-1.9.0/run子目錄下執行強制破解,/john --show /opt/shadow.txt查詢已破解出的賬號串列


5、若字典中沒有此密碼,則添加




八、網路埠掃描------NMAP
(一)安裝 NMAP 軟體包
mount /dev/sr0 /mnt #先進行本地磁盤掛載
yum install -y nmap #然后安裝nmap軟體包

(二)nmap命令常用選項與對應掃描型別
| 選項 | 說明 |
|---|---|
| -p | 指定掃描的埠 |
| -n | 禁用反向 DNS 決議(以加快掃描速度) |
| -sS | TCP的SYN掃描(半開掃描),只向目標發出SYN資料包,如果收到SYN/ACK回應包就認為目標埠正在監聽,并立即斷開連接;否則認為目標埠并未開放 |
| -sT | TCP連接掃描,這是完整的TCP掃描方式(默認掃描型別),用來建立一個TCP連接,如果成功則認為目標埠正在監聽服務,否則認為目標埠并未開放 |
| -sF | TCP的FIN掃描,開放的埠會忽略這種資料包,關閉的埠會回應RST資料包,許多防火墻只對SYN資料包進行簡單過濾,而忽略了其他形式的 TCP 攻擊包這種型別的掃描可間接檢測防火墻的健壯性 |
| -sU | UDP 掃描,探測目標主機提供哪些 UDP 服務,UDP 掃描的速度會比較慢 |
| -s | ICMP 掃描,類似于 ping 檢測,快速判斷目標主機是否存活,不做其他掃描 |
| -P0 | 跳過ping檢測,這種方式認為所有的目標主機是存活的,當對方不回應ICMP請求時,使用這種方式可以避免因無法 ping 通而放棄掃描 |



轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/280637.html
標籤:其他
上一篇:Golang-記憶體泄漏例子
下一篇:Windows基本的安全加固策略
