Linux基本安全措施

2021-09-29 15:43:35 字數 4367 閱讀 5092

系統賬號清理

linux系統中隨系統或應用程式安裝過程中生成的大量賬號一般用來維護系統執行、啟動或保持服務程序,一般不允許登入,故也稱為非登入使用者。

[root@localhost ~]

# cat /etc/passwd | grep "nologin$" # 非登入使用者的shell為/sbin/nologin

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

sshd:x:74:74:privilege-separated ssh:/var/empty/sshd:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

chrony:x:998:996::/var/lib/chrony:/sbin/nologin

apache:x:48:48:apache:/usr/share/httpd:/sbin/nologin

在這些使用者之中,有一些使用者如news、uucp、games、gopher,可以視為冗餘賬號,可直接刪除。另外,還有一些隨應用程式安裝的使用者賬號,未隨著應用程式的解除安裝而刪除,需要管理員手動刪除。

在linux作業系統中,一些長期不用的且不能確定能不能刪除的賬號,應該暫時將其鎖定。

[root@localhost ~]

# passwd -l test # 鎖定使用者

locking password for user test.

passwd: success

[root@localhost ~]

# passwd -s test # 檢視鎖定狀態

test lk 2019-11-13 0 99999 7 -1 (password locked.)

[root@localhost ~]

# passwd -u test # 解鎖使用者

unlocking password for user test.

passwd: success

[root@localhost ~]

# passwd -s test # 檢視鎖定狀態

test ps 2019-11-13 0 99999 7 -1 (password set, sha51 crypt.)

密碼安全控制

在不安全的網路環境中,使用者應該避免長期使用同乙個密碼,管理員可以在伺服器端限制使用者密碼的最大有效天數,對密碼已過期的使用者,登入時將被要求重新設定密碼,否則將拒絕登入。

可以通過設定預設的密碼有效天數來對建立的新使用者進行密碼有效天數進行設定

[root@localhost ~]

# sed -i '/pass_max_days/s/99999/10/' /etc/login.defs # 把預設的99999天改為10天

如果要對已存在的使用者修改密碼的有效天數,可使用chage命令

[root@localhost ~]

# chage -m 30 test # 修改test使用者的密碼有效天數為30天

[root@localhost ~]

# cat /etc/shadow | grep test # 檢視密碼有效天數為30(第4欄位)

test:$6

$hj8k……qo0:18214:0:30:7:::

若需要使用者下次登入時修改密碼,可用以下兩種方式

[root@localhost ~]

# chage -d 0 test1 # 要求test1使用者下次登入時修改密碼

# 使用test1使用者登入

you are required to change your password immediately (root enforced)

last login: thu nov 14 19:50:02 2019 from 192.168.218.1

warning: your password has expired.

you must change your password now and login again!

changing password for user test1.

changing password for test1.

(current) unix password:

new password:

retype new password:

passwd: all authentication tokens updated successfully.

# 或者使用passwd -e

[root@localhost ~]

# passwd -e test1

expiring password for user test1.

passwd: success

# 使用test使用者su切換到test1使用者

[test@localhost ~]$ su - test1

password:

you are required to change your password immediately (root enforced)

changing password for test1.

(current) unix password:

new password:

retype new password:

last login: thu nov 14 19:50:57 est 2019 from 192.168.218.1 on pts/1

命令歷史

我們知道,在linux系統中可以使用上下鍵來翻閱歷史命令,也可以用history命令檢視歷史命令。這雖提供了便利,但也存在安全風險。

bash終端環境中,歷史命令的記錄條數由變數histsize控制,預設為1000條。通過修改/etc/profile檔案中的histsize變數值,可以影響系統中的所有使用者。

[root@localhost ~]

# sed -i '/histsize/s/1000/200/' /etc/profile

同樣,我們可以設定在使用者登出時清除歷史命令。修改使用者宿主目錄中的~/.bash_logout檔案,新增清空歷史命令的操作語句。

[root@localhost test]

# echo "history -c" >> /home/test/.bash_logout

[root@localhost test]

# echo "clear" >> /home/test/.bash_logout

自動登出

設定閒置超時時間,當超過指定的時間沒有任何輸入即自動登出終端。通過修改/etc/profile檔案,對新登入的使用者生效。

[root@localhost ~]

# echo "export tmout=600" >> /etc/profile # 對所有新登入使用進行超時限制

[root@localhost ~]

# export tmout=10 # 適用於當前使用者,把超時時間改為10秒

[root@localhost ~]

# timed out waiting for input: auto-logout

[root@localhost ~]

# unset tmout # 取消tmout變數設定

Jboss安全措施

在使用jboss的 上線前,一定要禁掉一些預設功能,以免受攻擊。1 禁止瀏覽目錄 在 server default deploy jbossweb tomcat55.sar conf的web.xml中找到listings,改為false。default org.apache.catalina.ser...

幾種常見安全措施分析

許多網管員在考慮網路安全問題時,首先會想到通過路由器和防火牆實現安全性。那麼,這些技術各有哪些優缺點?通過什麼手段可彌補缺陷?路由器技術 路由器是一種多埠裝置,它按照協議和網路資訊負責資料幀的 路由器位於乙個或多個網段的交界處,一般工作在網路層和傳輸層。在網路層,當路由器遇到乙個ip包時,它便檢查i...

5個PHP安全措施

多年來,php一直是乙個穩定的 廉價的執行基於web應用程式的平台。像大多數基於web的平台一樣,php也是容易受到外部攻擊的。開發人員 資料庫架構師和系統管理員在部署php應用程式到伺服器之前都應該採取預防措施。大部分預防措施可以通過幾行 或者把應用程式設定稍作調整即可完成。1 管理安裝指令碼 如...