當前位置:首頁 » 操作系統 » linux伺服器安全加固

linux伺服器安全加固

發布時間: 2025-03-14 19:59:21

『壹』 伺服器安全加固 - linux

查看 /etc/passwd 文件查看是否有無用的賬號,如果存在則刪除,降低安全風險。

操作步驟:

操作步驟:

操作步驟

操作步驟

使用命令 vim /etc/pam.d/su 修改配置文件,在配置文件中添加行。
例如,只允許admin組用戶su到root,則添加 auth required pam_wheel.so group=admin 。

【可選】為了方便操作,可配置admin支持免密sudo:在 /etc/sudoers 文件中添加 admin ALL=(ALL) NOPASSWD:ALL

為了防止使用"su"命令將當前用戶環境變數帶入其它用戶,修改/etc/login.defs添加ALWAYS_SET_PATH=yes並保存。

操作步驟

操作步驟:

查看所有服務列表 systemctl list-units --type=service

操作步驟

使用命令 vim /etc/ssh/sshd_config 編輯配置文件。

配置文件修改完成後,重啟sshd服務生效(systemctl restart sshd)。

操作步驟

修改/etc/profile 配置文件,添加行 umask 027 , 即新創建的文件屬主擁有讀寫執行許可權,同組用戶擁有讀和執行許可權,其他用戶無許可權。

操作步驟

修改 /etc/profile 配置文件,設置為 TMOUT=600, 表示超時10分鍾無操作自動退出登錄。

操作步驟

Linux系統默認啟用以下類型日誌,配置文件為 /etc/rsyslog.conf:

通過上述步驟,可以在 /var/log/history 目錄下以每個用戶為名新建一個文件夾,每次用戶退出後都會產生以用戶名、登錄IP、時間的日誌文件,包含此用戶本次的所有操作(root用戶除外)

伺服器安全加固 - Linux - wubolive - 博客園

『貳』 在Linux中對Nginx進行安全加固

在IP為x.x.x.x的伺服器上安裝nginx,確保Linux系統為nginx環境。

配置nginx賬號鎖定策略,降低被攻擊概率。

第一步,查看nginx的鎖定狀態。

命令:passwd -S nginx

若結果出現「Password locked」,則說明鎖定成功。

若結果沒有出現「Password locked」,則說明沒有鎖定。

這時可以通過執行命令「passwd -l nginx」來進行鎖定。

第二步,對nginx安全加固的建議。

1)nginx服務使用非root用戶(如nginx,nobody)啟動。

命令:useradd -s /sbin/nologin -M nginx

在配置文件中啟用user nginx nginx;

2)確保啟動用戶的狀態為鎖定狀態,可執行命令「passwd -l 」(如passwd -l nginx)來鎖定nginx服務的啟動用戶。

格式:passwd -l

命令:passwd -l nginx

格式:passwd -S

命令:passwd -S nginx

若結果出現「Password locked」,則說明鎖定成功。

3)在配置文件nginx.conf中,把nginx啟動用戶修改為nginx或nobody。(如user nginx;)

注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。

修改nginx服務啟動賬號,降低被攻擊概率。

在配置文件nginx.conf中,把nginx啟動用戶修改為nginx或nobody。(如user nginx;)

注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。

隱藏nginx後端服務指定Header(如X-Powered-By)。

在配置文件nginx.conf(或主配置文件中的inlude文件)中,在http節點下配置proxy_hide_header項,增加或修改為

注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。

任意文件讀取入侵防範。

在配置文件nginx.conf中,把「location /path」改為「location /path/」,以/結尾;把「root /;」改為「root /path/;」,以/結尾。

配置文件nginx.conf修改如下:

注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。

針對Nginx SSL協議進行安全加固服務配置。

Nginx SSL協議採用TLSv1.2的加密策略來進行安全加固。

在配置文件nginx.conf(或主配置文件中的inlude文件)中,在server節點下配置ssl_protocols項,增加或修改為

注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。

確認nginx是否支持OpenSSL。

命令:nginx -V

若結果顯示「built with OpenSSL」,則說明nginx支持OpenSSL。

反之,則需要重新編譯nginx。

『叄』 系統加固之Linux安全加固

Linux系統基本操作

文件結構圖及關鍵文件功能介紹

Linux文件結構

Linux文件結構圖

二級目錄

| 目錄 | 功能 |
| /bin | 放置的是在單人維護模式下能被操作的指令,在/bin底下的指令可以被root與一般賬號所使用 |
| /boot | 這個目錄只要在放置開機會使用到的文件,包括 Linux核心文件以及開機選單與開機所需配置的文件等等 |
| /dev | 在Linux系統上,任何裝置與介面設備都是以文件的形態存在於這個目錄當中的 |
| /etc |

系統主要的配置文件幾乎都放在這個目錄內,例如人員賬號密碼各種服務的啟動檔,系統變數配置等

|
| /home | 這個是系統默認的用戶家目錄(home directory) |
| /lib | /lib放置的則是在開機時會用到的函式庫,以及在/lib或/sbin底下的指令會呼叫的函式庫 |
| /media | /media底下放置的是可以移出的裝置,包括軟盤、光碟、DVD等等裝置都掛載於此 |
| /opt | 給第三方協議軟體放置的目錄 |
| /root | 系統管理員(root)的家目錄 |
| /sbin | 放置/sbin底下的為開機過程中所需要的,裡麵包括了開機、修復、還原系統所需的指令。 |
| /srv | srv可視為[service]的縮寫,是一些網路服務啟動之後,這些服務所需要取用的數據目錄 |
| /tmp | 這是讓一般使用者或是正在執行的程序暫時放置文件的地方 |

文件

賬號和許可權

系統用戶

超級管理員 uid=0

系統默認用戶 系統程序使用,從不登錄

新建普通用戶 uid大於500

/etc/passwd

/etc/shadow

用戶管理

許可權管理

解析文件許可權

文件系統安全

查看許可權:ls -l

修改許可權:

**chmod **

** chgrp**

設置合理的初始文件許可權

很奇妙的UMASK:

umask值為0022所對應的默認文件和文件夾創建的預設許可權分別為644和755

文件夾其許可權規則為:777-022-755

文件其許可權規則為:777-111-022=644(因為文件默認沒有執行許可權)

修改UMASK值:

1、直接在命令行下 umask xxx(重啟後消失)

2、修改/etc/profile中設定的umask值

系統加固

鎖定系統中多餘的自建賬號

檢查shadow中空口令賬號

檢查方法:

加固方法:

使用命令passwd -l <用戶名> 鎖定不必要的賬號

使用命令passwd -u <用戶名>解鎖需要恢復的賬號

使用命令passwd <用戶名> 為用戶設置密碼

設置系統密碼策略

執行命令查看密碼策略設置

加固方法:

禁用root之外的超級用戶

檢測方法:

awk -F ":" '( 1}' /etc/passwd

加固方法:

** passwd -l <用戶名>**

****

限制能夠su為root的用戶

查看是否有auth required /libsecurity/pam_whell.so這樣的配置條目

加固方法:

重要文件加上不可改變屬性

把重要文件加上不可改變屬性

Umask安全

SSH安全:

禁止root用戶進行遠程登陸

檢查方法:

加固方法:

更改服務埠:

屏蔽SSH登陸banner信息

僅允許SSH協議版本2

防止誤使用Ctrl+Alt+Del重啟系統

檢查方法:

加固方法:

設置賬號鎖定登錄失敗鎖定次數、鎖定時間

檢查方法:

修改賬號TMOUT值,設置自動注銷時間

檢查方法:

cat /etc/profile | grep TMOUT

加固方法:

vim /etc/profile

增加

TMOUT=600 無操作600秒後自動退出

設置BASH保留歷史命令的條目

檢查方法:

cat /etc/profile | grep HISTSIZE

加固方法:

vim /etc/profile

修改HISTSIZE=5即保留最新執行的5條命令

設置注銷時刪除命令記錄

檢查方法:

cat /etc/skel/.bash_logout 增加如下行

rm -f $HOME/.bash_history

這樣,系統中的所有用戶注銷時都會刪除其命令記錄,如果只需要針對某個特定用戶,,如root用戶進行設置,則可只在該用戶的主目錄下修改/$HOME/.bash_history文件增加相同的一行即可。

設置系統日誌策略配置文件

日誌的主要用途是 系統審計 、監測追蹤和分析。為了保證 Linux 系 統正常運行、准確解決遇到的各種樣統問題,認真地讀取日誌文件是管理員的一項非常重要任務。

UNIX/ Linux 採用了syslog 工具來實現此功能,如果配置正確的 話,所有在主機上發生的事情都會被記錄下來不管是好還是壞的 。

檢查方法:

cat /etc/profile | grep HISTSIZE

確定syslog服務是否啟用

查看syslogd的配置,並確認日誌文件是否存在

阻止系統響應任何從外部/內部來的ping請求

加固方法:

echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all

『肆』 Linux伺服器加固滿足等保三級要求

應邀回答行業問題

Linux系統廣泛被應用在伺服器上,伺服器存儲著公司的業務數據,對於互聯網公司數據的安全至關重要,各方面都要都要以安全為最高優先順序,不管是伺服器在雲端還在公司區域網內,都要慎之又慎。

如果黑客入侵到公司的Linux伺服器上,執行下面的命令,好吧,這是要徹底摧毀的節奏,5分鍾後你只能呵呵的看著伺服器了,為什麼要seek呢?給你留個MBR分區。

dd if=/dev/zero of=/dev/sda bs=4M seek=1
Linux系統的安全加固可分為系統加固和網路加固,每個企業的業務需求都不一樣,要根據實際情況來配置。比如SSH安全、賬戶弱口令安全、環境安全、關閉無用服務、開啟防火牆等,已經Centos7為例,簡單說下linux系統SSH網路安全加固。

SSH安全

將ssh服務的默認埠22修改為其他埠,並限制root用戶登陸,配置firewall允許ssh埠通過。

[root@api ~]#sed -i 's#Port 22#Port 6022#' /etc/ssh/sshd_config
[root@api ~]#echo 'PermitRootLogin no' /etc/ssh/sshd_config
[root@api ~]# firewall-cmd --zone=public --add-port=6022/tcp --permanent
[root@api ~]# firewall-cmd --reload
限制訪問ssh的用戶和IP

[root@api ~]#echo 'AllowUsers NAME' >>/etc/ssh/sshd_config
[root@api ~]# echo 'sshd:xxx..x.x:allow' >>/etc/
hosts.allow
[root@api ~]# systemctl restart sshd
禁止ping測試伺服器,禁止IP偽裝。

[root@api ~]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
[root@api ~]# echo nospoof on >> /etc/host.conf
在Centos7以後iptables將被firewall替代,當然我們還能夠使用iptables,首先需要刪除firewall後,才能夠使用iptables,技術總是在進步的,老的會慢慢被替代。

Linux系統安全加固還有很多,想要繼續可以查閱資料。

『伍』 在Linux中對Nginx進行安全加固

在IP為x.x.x.x的伺服器上安裝nginx,確保Linux系統為nginx環境。

配置nginx賬號鎖定策略,降低被攻擊概率。第一步,查看nginx的鎖定狀態。

命令:passwd -S nginx

若結果出現「Password locked」,則說明鎖定成功。若結果沒有出現「Password locked」,則說明沒有鎖定。這時可以通過執行命令「passwd -l nginx」來進行鎖定。

第二步,對nginx安全加固的建議。1)nginx服務使用非root用戶(如nginx,nobody)啟動。# 創建nginx運行使用的用戶nginx

命令:useradd -s /sbin/nologin -M nginx

(默認用戶是nobody,在配置文件中啟用user nginx nginx;)

2)確保啟動用戶的狀態為鎖定狀態,可執行命令「passwd -l 」(如passwd -l nginx)來鎖定nginx服務的啟動用戶。

3)在配置文件nginx.conf中,把nginx啟動用戶修改為nginx或nobody。(如user nginx;)注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。

修改nginx服務啟動賬號,降低被攻擊概率。在配置文件nginx.conf中,把nginx啟動用戶修改為nginx或nobody。(如user nginx;)注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。

隱藏nginx後端服務指定Header(如X-Powered-By)。在配置文件nginx.conf(或主配置文件中的inlude文件)中,在http節點下配置proxy_hide_header項,增加或修改為注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。

任意文件讀取入侵防範。缺少斜杠可能導致目錄穿越。在配置文件nginx.conf中,把「location /path」改為「location /path/」,以/結尾;把「root /;」改為「root /path/;」,以/結尾。配置文件nginx.conf修改如下:注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。

Nginx SSL協議採用TLSv1.2的加密策略來進行安全加固。第一步,對nginx安全加固的建議。1)在配置文件nginx.conf(或主配置文件中的inlude文件)中,在server節點下配置ssl_protocols項,增加或修改為注意:操作時建議做好記錄或備份。必須使用命令「service nginx reload」重啟nginx。2)確認nginx是否支持OpenSSL。命令:nginx -V若結果顯示「built with OpenSSL」,則說明nginx支持OpenSSL。反之,則需要重新編譯nginx。

熱點內容
編譯時說沒定義 發布:2025-03-14 22:58:21 瀏覽:736
img格式解壓縮 發布:2025-03-14 22:57:24 瀏覽:171
linux編譯boost 發布:2025-03-14 22:54:41 瀏覽:591
資料庫去重語句 發布:2025-03-14 22:53:58 瀏覽:757
python老男孩14 發布:2025-03-14 22:44:38 瀏覽:367
flappybirdandroid 發布:2025-03-14 22:36:30 瀏覽:284
蘋果6設置屏幕密碼怎麼設置密碼 發布:2025-03-14 22:06:34 瀏覽:513
獲取配置失敗了什麼意思 發布:2025-03-14 21:54:32 瀏覽:826
mysql誤刪資料庫恢復 發布:2025-03-14 21:54:19 瀏覽:247
安卓手機用什麼軟體做特效 發布:2025-03-14 21:50:01 瀏覽:398