鹽城有沒有做網(wǎng)站嗎湖南專業(yè)的關(guān)鍵詞優(yōu)化
在企業(yè)業(yè)務(wù)的生產(chǎn)環(huán)境中,Linux服務(wù)器的安全性至關(guān)重要,尤其是對于具有超級用戶權(quán)限的root
賬號。濫用或被入侵后,可能會造成數(shù)據(jù)泄露、系統(tǒng)損壞等嚴(yán)重安全問題。為了減少這種風(fēng)險(xiǎn),本文將詳細(xì)介紹如何通過一系列安全措施來增強(qiáng)CentOS 7/8服務(wù)器的安全性,降低系統(tǒng)被攻擊的風(fēng)險(xiǎn)。
1. 創(chuàng)建普通用戶并禁用Root用戶直接登錄
場景說明: 在Linux系統(tǒng)中,root用戶擁有最高權(quán)限,允許其對系統(tǒng)進(jìn)行任何操作。然而,root賬戶的濫用或者由于弱密碼被破解,可能會導(dǎo)致系統(tǒng)被完全控制。因此建議創(chuàng)建普通用戶并為其賦予管理權(quán)限,而非直接使用root賬戶。
操作步驟:
-
創(chuàng)建新用戶:
adduser ecs-user
-
設(shè)置用戶密碼:
passwd ecs-user
-
確認(rèn)賬戶可正常登錄:通過新的
ecs-user
賬戶登錄系統(tǒng),確保一切正常。 -
為新用戶添加免密sudo權(quán)限:
vim /etc/sudoers
,在
root ALL=(ALL) ALL
下添加:
ecs-user ALL=(ALL) NOPASSWD:ALL
-
禁止root登錄:編輯SSH配置文件
/etc/ssh/sshd_config
,找到PermitRootLogin
項(xiàng),將其設(shè)置為PermitRootLogin no
,如果不存在此項(xiàng),手動添加。
解釋: 通過禁用root直接登錄,可以避免因root賬戶被入侵導(dǎo)致的系統(tǒng)完全失控。此外,普通用戶通過sudo提權(quán)執(zhí)行管理操作,增加了一層安全保護(hù)。
2. 設(shè)置SSH空閑超時(shí)退出
場景說明: 在業(yè)務(wù)運(yùn)維過程中,如果管理人員通過SSH遠(yuǎn)程登錄服務(wù)器并長時(shí)間未操作,保持會話活躍可能會導(dǎo)致未授權(quán)人員接管該會話。設(shè)置超時(shí)退出機(jī)制可以有效降低這種風(fēng)險(xiǎn)。
操作步驟:
-
編輯SSH配置文件
/etc/ssh/sshd_config
,設(shè)置:
ClientAliveInterval 600 ClientAliveCountMax 2
解釋: 這意味著系統(tǒng)會在10分鐘(600秒)內(nèi)沒有收到客戶端響應(yīng)時(shí)發(fā)起兩次探測(ClientAliveCountMax),如果依然沒有回應(yīng),會自動斷開連接,避免空閑會話帶來的風(fēng)險(xiǎn)。
3. 設(shè)置密碼修改最小間隔時(shí)間
場景說明: 如果允許用戶頻繁更改密碼,可能會導(dǎo)致弱密碼的重用,或形成惡意行為,例如通過多次快速更改繞過系統(tǒng)的密碼策略。因此需要設(shè)置密碼修改的最小間隔時(shí)間。
操作步驟:
-
編輯文件
/etc/login.defs
,設(shè)置:
PASS_MIN_DAYS 7
-
為root用戶設(shè)置相同策略:
chage --mindays 7 root
解釋: 該設(shè)置確保用戶在7天內(nèi)無法更改密碼,從而防止通過頻繁更改密碼試圖繞過系統(tǒng)安全策略。
4. 設(shè)置密碼失效時(shí)間
場景說明: 密碼長期不修改會增加密碼被暴力破解或泄露的風(fēng)險(xiǎn)。設(shè)置密碼失效時(shí)間可以強(qiáng)制用戶定期更換密碼,提升系統(tǒng)安全性。
操作步驟:
-
編輯文件
/etc/login.defs
,設(shè)置:
PASS_MAX_DAYS 90
-
為root用戶設(shè)置相同策略:
chage --maxdays 90 root
解釋: 密碼失效時(shí)間為90天,超過這個(gè)時(shí)間段,用戶必須更改密碼才能繼續(xù)使用系統(tǒng)。這一措施可以減少密碼泄露或被猜測的風(fēng)險(xiǎn)。
5. 限制密碼重用
場景說明: 限制用戶重復(fù)使用以前的密碼可以降低由于暴力破解導(dǎo)致的安全威脅。強(qiáng)制用戶使用全新的密碼有助于提升整體系統(tǒng)安全性。
操作步驟:
-
編輯文件
/etc/pam.d/password-auth
和
/etc/pam.d/system-auth
,在
password sufficient pam_unix.so
后面添加:
remember=5
解釋: 該配置強(qiáng)制用戶至少使用5次不同的密碼后才能重新使用某個(gè)舊密碼,防止密碼重復(fù)使用造成的安全隱患。
6. 密碼復(fù)雜度檢查
場景說明: 密碼復(fù)雜度的提高能夠有效防止弱密碼的使用,從而增強(qiáng)系統(tǒng)的安全性。通過強(qiáng)制要求密碼使用多種字符類型,系統(tǒng)可以有效抵御暴力破解等攻擊。
操作步驟:
-
編輯文件
/etc/security/pwquality.conf
,設(shè)置:
minlen=10 minclass=3
解釋: minlen=10
要求密碼長度至少為10個(gè)字符,minclass=3
表示密碼中至少要包含三種不同類型的字符(如大寫、小寫、數(shù)字、特殊符號等),從而增強(qiáng)密碼強(qiáng)度。
7. 禁止SSH空密碼用戶登錄
場景說明: 允許用戶使用空密碼登錄SSH會大大降低系統(tǒng)的安全性,容易被惡意攻擊者利用。因此需要禁止使用空密碼登錄。
操作步驟:
-
編輯
/etc/ssh/sshd_config
,設(shè)置:
PermitEmptyPasswords no
解釋: 禁用空密碼用戶登錄SSH,確保所有用戶賬戶都有設(shè)置密碼,以此提高系統(tǒng)的安全性。
8. SSH登錄最大嘗試次數(shù)
場景說明: 攻擊者通過暴力破解嘗試多次錯(cuò)誤登錄有可能最終獲得系統(tǒng)訪問權(quán)限。限制最大登錄嘗試次數(shù)可以有效防止此類攻擊。
操作步驟:
-
編輯文件
/etc/ssh/sshd_config
,設(shè)置:
MaxAuthTries 4
解釋: 該設(shè)置表示用戶在SSH登錄時(shí)最多可嘗試4次密碼輸入錯(cuò)誤,超過4次系統(tǒng)將自動斷開連接,防止暴力破解。
9. 確保rsyslog服務(wù)已啟用
場景說明: rsyslog
服務(wù)用于收集并記錄系統(tǒng)日志,幫助運(yùn)維人員進(jìn)行審計(jì)和故障排查。確保該服務(wù)的正常運(yùn)行對于安全審計(jì)至關(guān)重要。
操作步驟:
-
啟動并啟用
rsyslog
服務(wù):
systemctl enable rsyslog systemctl start rsyslog
解釋: 確保日志記錄服務(wù)啟動,防止系統(tǒng)事件未被記錄,影響問題排查和安全審計(jì)。
10. 配置文件權(quán)限設(shè)置
場景說明: 配置文件如果被非授權(quán)用戶訪問或修改,可能會導(dǎo)致系統(tǒng)被攻破或配置信息泄露。確保關(guān)鍵配置文件僅可被root用戶訪問可以提升系統(tǒng)安全性。
操作步驟:
-
設(shè)置權(quán)限:
chown root:root /etc/hosts.allow chown root:root /etc/hosts.deny chmod 644 /etc/hosts.allow chmod 644 /etc/hosts.deny
解釋: chown
確保這些配置文件的擁有者是root用戶,chmod 644
確保只有root用戶擁有寫權(quán)限,其他用戶只能讀取,防止配置文件被篡改。
11. 設(shè)置用戶權(quán)限文件的權(quán)限
場景說明: 系統(tǒng)中的passwd
、shadow
、group
等文件存儲了用戶的敏感信息(如密碼等)。設(shè)置適當(dāng)?shù)奈募?quán)限可以防止非授權(quán)用戶訪問這些信息。
操作步驟:
-
執(zhí)行以下命令:
chown root:root /etc/passwd /etc/shadow /etc/group /etc/gshadow chmod 0644 /etc/passwd /etc/group chmod 0400 /etc/shadow /etc/gshadow
解釋: 這些命令確保只有root用戶可以修改這些文件,并且限制其他用戶的訪問權(quán)限。
12. 確保root是唯一UID為0的賬戶
場景說明: UID
為0的用戶擁有系統(tǒng)的最高權(quán)限,通常只有root賬戶擁有此權(quán)限。確保沒有其他用戶擁有UID=0
可以避免權(quán)限被濫用。
操作步驟:
-
檢查系統(tǒng)中是否存在UID為0的用戶:
cat /etc/passwd | awk -F: '($3 == 0) { print $1 }' | grep -v '^root$'
解釋: 如果出現(xiàn)非root的UID為0用戶,建議立即刪除或更改其UID,防止權(quán)限濫用。
13. 密碼到期警告天數(shù)
場景說明: 提前通知用戶密碼即將過期,提醒用戶及時(shí)更改密碼可以減少因密碼過期導(dǎo)致的賬戶無法訪問問題。
操作步驟:
-
編輯
/etc/login.defs
文件,設(shè)置:
PASS_WARN_AGE 7
-
為root用戶設(shè)置相同策略:
chage --warndays 7 root
解釋: 密碼到期前7天會提前發(fā)出警告,用戶可以及時(shí)更改密碼,確保賬戶的可用性和安全性。
14. SSH日志級別設(shè)置為INFO
場景說明: LogLevel
設(shè)置為INFO可以記錄更多有用的信息,便于管理員在出現(xiàn)問題時(shí)快速排查問題。
操作步驟:
-
編輯
/etc/ssh/sshd_config
,設(shè)置:
LogLevel INFO
解釋: 日志級別設(shè)置為INFO可以記錄登錄、認(rèn)證失敗等關(guān)鍵信息,提升安全審計(jì)能力。
15. 開啟地址空間布局隨機(jī)化(ASLR)
場景說明: 地址空間布局隨機(jī)化(ASLR)通過隨機(jī)化進(jìn)程的內(nèi)存地址布局來增加攻擊者利用漏洞攻擊的難度,從而提高系統(tǒng)的安全性。
操作步驟:
-
編輯
/etc/sysctl.conf
或
/etc/sysctl.d/
文件,添加以下內(nèi)容:
kernel.randomize_va_space = 2
-
立即生效:
sysctl -w kernel.randomize_va_space=2