系統安全及應用、PAM安全認證、弱口令監測,網絡端口掃描、賬號、系統引導和用戶登錄控制

系統安全及應用

一、賬號安全控制

【1】基本安全措施

(1)系統賬號清理

1)將非登陸用戶的shell設爲/sbin/nologin

Usermod -s /sbin/nologin 用戶名 ###########該用戶不允許登錄
Usermod -s /bin/bash 用戶名 ##############默認,允許登錄

2)鎖定長期不使用的賬號

Usermod -L 用戶名 ###########鎖定賬號
Usermod -U 用戶名 ##############解鎖賬號
Passwd -S 用戶名 ##############顯示密碼信息

3)刪除無用的賬號
Userdel -r 用戶名
4)鎖定賬號文件passwd、shadow

chattr +i /etc/passwd /etc/shadow ############鎖定賬號文件
lsattr /etc/passwd /etc/shadow ##############查看是否鎖定
Chattr -i /etc/passwd /etc/shadow #############解鎖賬號文件
(2)密碼安全控制(chage)
-m:密碼可更改的最小天數。爲零時代表任何時候都可以更改密碼。
-M:密碼保持有效的最大天數。
-w:用戶密碼到期前,提前收到警告信息的天數。
-E:帳號到期的日期。過了這天,此帳號將不可用。
-d:上一次更改的日期。
-i:停滯時期。如果一個密碼已過期這些天,那麼此帳號將不可用。
-l:例出當前的設置。由非特權用戶來確定他們的密碼或帳號何時過期。

1)設置密碼有效期
Chage -M 60 用戶名 ##############對已有用戶設置密碼最大有效天數是60天
Vi /etc/login.defs ###############還沒有建的用戶永久設置密碼有效期60天
PASS_MAX_DAYS 9999(60)
2)要求用戶下次登錄重新設置密碼
Chage -d 0 用戶名

(3)命令歷史,自動註銷

1)減少記錄的命令條數
Vi /etc/profile HISTSIZE=200多少行命令
Source /etc/profile 生效命令
Export histsize=200 臨時環境
2)註銷時自動清空命令歷史
Vim .bash_logout history -c clear
Cd /home/zhangsan
Vim .bash_logout history -c clear
3)閒置600秒後自動註銷
Echo ”export TMOUT=600” >> /etc/profile
Source /etc/profile

【2】用戶切換與提權

(1)使用su命令切換用戶

用途:substitute user,切換用戶
格式:su - 目標用戶

(2)查看su操作記錄

安全日誌文件:/var/log/secure

(3)su命令的缺點

Su切換root必須要有密碼,但root密碼是超級用戶的。爲解決這個問題,使用下面這個命令

(4)Sudo(提升權限)命令的用途及用法

1)用途:以其他用戶身份(root)執行授權的命令
2)用法:sudo+命令
3)配置sudo授權
配置文件:Visudo或者vi /etc/sudoers
記錄格式:用戶 主機名列表=命令程序列表
用戶(zhangsan)localhost=/sbin/**. !/sbin/reboot(不包括的命令)
切換張三:sudo ifconfig ens33:0 192.168.60.23/24 ######ifconfig查看會有一個網絡子接口的ip地址
4)如果對多個用戶進行限制,可使用wheel組,把用戶加入到這個組裏面,在visudo裏面修改組的配置文件:%wheel(對所有組)ALL(任何主機)=all(任何命令)。設置主機別名User Aliases ADMINS=用戶名,主機的別名:Host Alias MATLSERVERS=主機名,命令的別名:command Aliases NETWORKING=命令絕對路徑
ADMINS MATLSERVERS=NETWORKING(組合使用)
5)查看sudo操作記錄
需啓用defaults logfile配置
默認日誌文件:/var/log/sudo
在visudo中行末加入defaults=/var/log/sudo
查詢授權sudo操作:sudo -l

【3】PAM安全認證

Pluggable Authentication Modules可插拔式認證模塊(可配置某個用戶有什麼使用命令)

(1)su命令的安全隱患

默認情況下,任何用戶都使用su命令,從而有機會反覆嘗試其他用戶(root)的登錄密碼,帶來安全風險。爲了加強su命令的使用機制,可藉助於PAM認證模塊,只允許極個別用戶使用su命令進行切換。

(2)PAM可插拔認證模塊

它是一種高效而靈活便利的用戶級別的認證方式,也是Linux系統普遍使用的認證方式。可編輯,可定製。

(3)PAM服務及應用

提供了對所有服務進行認證的中央機制(下面的服務都交給PAM進行處理),適用於login,遠程登錄,su等應用程序中。

(4)PAM配置文件制定

管理員通過PAM配置文件來制定不同應用程序的不同的認證策略

(5)PAM認證原理

PAM一般遵循的順序:service(服務)–PAM(配置文件)–pam_*.so(模塊),首先確定哪一項服務,然後加載相應的pam的配置文件(/etc/pam.d),最後調用認證文件(/lib/security)進行安全認證,用戶訪問服務器的時候,服務器的某一服務程序把用戶的請求發送到PAM模塊進行認證,不同的應用程序所對應的PAM模塊也是不同的。
如果想查看某個程序是否支持PAM認證,可以用ls命令進行查看,例如查看su是否支持PAM模塊認證:ls /etc/pam.d |grep su

(6)PAM認證的構成

例如查看su的PAM配置文件:cat /etc/pam.d/su
每一行都是一個獨立的認證過程,並且可以分爲三個字段:認證類型、控制類型、PAM模塊及參數

(7)常見的四種認證類型

1)認證管理:接收用戶和密碼,進而對該用戶的密碼進行認證
2)賬戶管理:檢查賬戶是否允許登錄系統,是否過期,是否有時間限制等。
3)密碼管理:主要是用來修改用戶的密碼
4)會話管理:主要是提供對會話的管理和記賬(等於一個界面,簡單來說是連接,但比連接複雜)

(8)控制類型

在這裏插入圖片描述
用於PAM驗證類型的返回結果,主要有一下四種:
1)required:驗證失敗仍然繼續,但返回fail
2)Requisite:驗證失敗立即結束整個過程,返回fail
3)Sufficient:驗證成功則立即返回,不再繼續,否則忽略結果則繼續往下認證
4)Optional:不用於驗證,只顯示信息(通常用於session類型)
在這裏插入圖片描述

(9)案例說明

控制用戶使用su命令進行切換
步驟:
1)啓用/etc/pam.d/su中的pam_wheel模塊
Auth required pam_wheel.so use_uid
Pam_rootok:檢查用戶是否爲超級用戶,如果是超級用戶(UID=0)則無條件地通過認證。
pam_wheel:只允許wheel組的用戶有超級用戶的存取權限
2)添加授權用戶tom到wheel組中

gpasswd -a tom wheel 
Grep wheel /etc/group

3)測試
tom可以切換到root,其他用戶不能切換。

二、系統引導和登錄控制

【1】調整BIOS引導設置

將第一引導設備設爲當前系統所在硬盤,禁止從其他設備(光盤、U盤、網絡)引導系統,將安全級別設爲setup,並設置管理員密碼。

【2】禁用重啓熱鍵Ctrl+alt+del

避免因用戶操作導致重啓
Vi /etc/init/control-alt-del
在start on和exec /sbin前面加#註釋掉

【3】grub菜單限制

未經授權禁止修改啓動參數
未經授權禁止進入指定系統

(1)密碼設置方式(grub.conf)

Password 明文密碼串
Password --md5 加密密碼串

(2)密碼記錄位置

全局部分(第一個title之前)
系統引導部分(每個title部分之後)

(3)grub限制的實現

1)使用grub-md5-crypt獲得加密的字符串
2)備份並修改grub.conf(它的軟連接是menu.lst)文件,添加密碼記錄
3)進入這個配置文件在第一個title之前添加:passwd --md5 加密字符串
4)重啓,按照提示按“p”進入單用戶模式就可以修改root用戶的密碼了。

【4】終端登錄安全控制

(1)減少開放終端個數

Vi /etc/init/start-ttys.conf
修改env ACTIVE_CONSOLES=/dev/tty[456]
Vi /etc/sysconfig/init
ACTIVE_CONSOLES=/dev/tty[456]重啓

(2)限制root只在安全終端登錄,配置文件/etc/securetty.

#tty5 #tty6 …

(3)禁止普通用戶登錄

在/etc/nologin文件,刪除就可以恢復。當服務器正在備份或者調試等維護工作時,可能不希望再有新的用戶登錄。
[root@localhost~]#touch /etc/nologin

三、弱口令監測和端口掃描

【1】弱口令監測—John the Ripper

通俗點來說就是管理員找到弱口令賬戶,採取進一步的安全措施。
步驟:

(1)安裝JR工具
上傳下載的JR壓縮包到系統/root目錄中
[root@localhost~]#tar zxvf john-1.11.0.tar.gz
[root@localhost~]#cd  john-1.11.0
[root@localhost john-1.11.0]#ll  
####是否有相關目錄run、src、doc等#####
[root@localhost john-1.11.0]#cd /src
[root@localhost src]#make clean Linux-x86-64
[root@localhost src]#ll ./run/john 
####確認已生成可執行程序john#######
(2)檢測弱口令賬號
[root@localhost run]#cp /etc/shadow  /root/shadow.txt
[root@localhost run]#./john  /root/shadow.txt  //執行暴力破解
[root@localhost run]#./john --show /root/shadow.txt
(3)密碼文件的暴力破解
[root@localhost run]#:>john.pot  //覆蓋式清空列表
[root@localhost run]#./john --wordlist=./passwd.lst /root/shadow.txt //JR默認提供的字典文件爲passwd.lst。

【2】網絡端口掃描—NMAP

Nmap 掃描類型 選項 掃描目標(主機,服務等)
(1)常用的掃描類型

-sS,tcp syn掃描(半開)
-sT,tcp 連接掃描(全開)
-sF,tcp fin掃描(閉着的端口會迴應rst包)
-sU,udp掃描
-sP,ICMP掃描
-P0,跳過ping檢測掃描

【3】網絡端口掃描的應用

在這裏插入圖片描述
(1)針對本機進行掃描,檢查開放了那些常用的TCP端口,UDP端口
在這裏插入圖片描述
在這裏插入圖片描述
(2)檢查192.168.60.0/24網段中有哪些主機提供FTP服務
在這裏插入圖片描述
(3)快速檢測192.168.60.0/24中有哪些存活的主機
在這裏插入圖片描述
(4)檢測IP地址位於192.168.60.10-100的主機是否開啓文件共享服務
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章