一、賬號安全基本措施
1.1系統賬號清理
- 將用戶設定為無法登錄
- 鎖定賬戶
- 洗掉賬戶
- 鎖定賬戶密碼 本質鎖定
補充:/sbin/nologin卻比較特殊,所謂“無法登陸”指的僅是這個用戶無法使用bash或其他shell來登陸系統而已,并不是說這個賬號就無法使用系統資源,
(1)將用戶設定為無法登錄:
[root@localhost ~]#useradd zhangzijun [root@localhost ~]#passwd zhangzijun [root@localhost ~]#tail -1 /etc/passwd [root@localhost ~]#chsh -s /sbin/nologin zhangzijun #修改shell屬性 [root@localhost ~]#tail -1 /etc/passwd

(2)鎖定用戶
[root@localhost ~]#passwd -l zhangzijun [root@localhost ~]#su FZR [FZR@localhost root]$ su zhangzijun [FZR@localhost root]$ su root [root@localhost ~]#passwd -u zhangzijun [root@localhost ~]#su FZR [FZR@localhost root]$ su zhangzijun [zhangzijun@localhost root]$

(3)洗掉用戶
[root@localhost ~]#userdel -r FZR #-r洗掉用戶時同時洗掉與用戶相關的所有檔案 [root@localhost ~]#tail -3 /etc/passwd

(4)鎖定組態檔chattr
-a:讓檔案或目錄僅供附加用途,只能追加 -i:不得任意更動檔案或目錄 [root@localhost ~]#chattr +i /etc/passwd /etc/shadow [root@localhost ~]#useradd FZR [root@localhost ~]#lsattr /etc/passwd /etc/shadow [root@localhost ~]#chattr -i /etc/passwd /etc/shadow [root@localhost ~]#useradd FZR [root@localhost ~]#passwd FZR

(5)將已有用戶的shell設為/sbin/nologin
[root@localhost ~]#usermod -s /sbin/nologin FZR

1.2密碼安全控制
設定密碼規則:
(1)對于新建用戶:可以修改 /etc/login.defs 檔案里的內容來設定密碼規則

(2)對于已有用戶:可以使用chage命令
[root@localhost ~]#chage [root@localhost ~]#chage -M 30 zhangzijun [root@localhost ~]#chage -d 0 zhangzijun

1.3歷史命令處理
處理方式1:臨時處理命令
[root@localhost ~]#history -c [root@localhost ~]#clear
處理方式2:修改/etc/profile 檔案中的 HISTSIZE 變數值,默認1000,我們可以改小一點改成200



處理方式3:修改.bash_log 檔案

![]()
處理方式4:修改.bashrc 檔案(建議使用這種方式)

![]()
處理方式5:設定超時時間修改/etc/profile組態檔

![]()
![]()
1.4切換用戶
(1)su命令可以切換用戶身份,并且以指定用戶的身份執行命令
切換用戶的方式:
- su 用戶名:非登錄式切換,即不會讀取目標用戶的組態檔,不改變當前作業目錄,即不完全切換
- su - 用戶名:登錄式切換,會讀取目標用戶的組態檔,切換至自已的家目錄,即完全切換(建議使用)
注意:su 切換新用戶后,使用 exit 退回至舊的用戶身份,而不要再用 su 切換至舊用戶,否則會生成很多的bash子行程,環境可能會混亂,

(2)限制用戶使用su命令




如果su命令使用不了,那么我們就把用戶加入到wheel組當中就好了


1.5PAM安全認證
- PAM:插件式的驗證模塊,1995 年開發的一種與認證相關的通用框架機制,PAM 只關注如何為服務驗證用戶的 API,通過提供一些元件和一套統一的API介面,將系統提供的服務和該服務的認證方式分開,使得系統管理員可以靈活地根據需要給不同的服務配置不同的認證方式而無需更改服務程式一種認證框架,自身不做認證,
- PAM提供了對所有服務進行認證的中央機制,適用于本地登錄,遠程登錄,如:telnet,rlogin,fsh,ftp,點對點協議PPP,su等應用程式中,系統管理員通過PAM組態檔來制定不同應用程式的不同認證策略;應用程式開發者通過在服務程式中使用PAM API(pam_xxxx( ))來實作對認證方法的呼叫;而PAM服務模塊的開發者則利用PAM SPI來撰寫模塊(主要呼叫函式pam_sm_xxxx( )供PAM介面庫呼叫,將不同的認證機制加入到系統中;PAM介面庫(libpam)則讀取組態檔,將應用程式和相應的PAM服務模塊聯系起來,重復利用別人的開發的功能,不必自己開發,會話,密碼驗證等功能,已經做好了呼叫下就可以了未來通用性,所以有了pam框架,


![]()



PAM認證作業原理:
- PAM認證一般遵循這樣的順序:Service(服務)→PAM(組態檔)→pam_*.so,
- PAM認證首先要確定那一項服務,然后加載相應的PAM的組態檔(位于/etc/pam.d下),最后呼叫認證檔案(位于/lib64/security下)進行安全認證,


實驗1:shell模塊,不允許使用/bin/csh的用戶本地登錄


實驗2:pam_securetty.so模塊,CentOS7允許root在telnet登錄
服務端:

![]()
![]()
![]()
![]()


客戶端:




1.6sudo
sudo:允許系統管理員讓普通用戶執行一些或者全部的root命令的一個工具,如halt,reboot,su等等,這樣不僅減少了root用戶的登錄和管理時間,同樣也提高了安全性在最早之前,一般用戶管理系統的方式是利用su切換為超級用戶,但是使用su的缺點之一在于必須要先告知超級用戶的密碼,sudo于1980年前后推出,sudo使一般用戶不需要知道超級用戶的密碼即可獲得權限,首先超級用戶將普通用戶的名字、可以執行的特定命令、按照哪種用戶或用戶組的身份執行等資訊,登記在特殊的檔案中(通常是/etc/sudoers),即完成對該用戶的授權(此時該用戶稱為“sudoer”);在一般用戶需要取得特殊權限時,其可在命令前加上“sudo”,此時sudo將會詢問該用戶自己的密碼(以確認終端機前的是該用戶本人),回答后系統即會將該命令的行程以超級用戶的權限運行,之后的一段時間內(默認為5分鐘,可在/etc/sudoers自定義),使用sudo不需要再次輸入密碼,由于不需要超級用戶的密碼,部分Unix系統甚至利用sudo使一般用戶取代超級用戶作為管理帳號,例如Ubuntu、Mac OS X等,
sudo特性:
- sudo能夠授權指定用戶在指定主機上運行某些命令,如果未授權用戶嘗試使用 sudo,會提示聯系管理員,
- sudo提供了豐富的日志,詳細地記錄了每個用戶干了什么,它能夠將日志傳到中心主機或者日志服務器,
- sudo使用時間戳檔案來執行類似的“檢票”系統,當用戶呼叫sudo并且輸入它的密碼時,用戶獲得了一張存活期為5分鐘的票,
- sudo的組態檔是sudoers檔案,它允許系統管理員集中的管理用戶的使用權限和使用的主機,它所存放的位置默認是在/etc/sudoers,屬性必須為0440,
![]()




通配符寫法:
![]()
![]()

!取反:




(1)別名
- sudo別名有四種型別:
- User_Alias:(用戶)
- Runas_Alias:(代表用戶)
- Host_Alias:(登錄主機)
- Cmnd_Alias:(命令)
別名格式:必須大寫字母,數字可以使用但是不能放在開頭


![]()
(2)子目錄

(3)實驗

![]()


1.7grub加密

1.8nmap掃描




1.9常用埠號總結

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/514299.html
標籤:其他
上一篇:hadoop集群搭建與簡單應用
下一篇:淺談IT系統性能優化
