您好,登錄后才能下訂單哦!
本篇內容介紹了“保護Linux服務器的方法是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
1. 更新你的服務器
要保護服務器,您應該做的第一件事是更新本地存儲庫,并通過應用新的補丁來升級操作系統和已安裝的應用程序。
關于Ubuntu和Debian:
$ sudo apt update && sudo apt upgrade -y
在Fedora,CentOS或RHEL上:
$ sudo dnf upgrade
2. 創建一個新的特權用戶帳戶
接下來,創建一個新的用戶帳戶。永遠不要以root用戶身份登錄服務器。相反,創建您自己的帳戶(
首先創建一個新用戶:
$ adduser <用戶名>
通過將(-a)sudo組(-G)附加到用戶的組成員身份,授予新用戶帳戶sudo權限:
$ usermod -a -G sudo <用戶名>
3.上傳您的SSH密鑰
使用SSH密鑰登錄到新服務器。您可以使用ssh-copy-id命令將預先生成的SSH密鑰上傳到新服務器:
$ ssh-copy-id
@ip_address
現在,您無需輸入密碼即可登錄新服務器。
4. 安全的SSH
接下來,進行以下三個更改:
禁用SSH密碼認證
限制root遠程登錄
限制對IPv4或IPv6的訪問
使用您選擇的文本編輯器打開/ etc / ssh / sshd_config并確保以下行:
PasswordAuthentication yes
PermitRootLogin yes
像這樣:
PasswordAuthentication no
PermitRootLogin no
接下來,通過修改AddressFamily選項將SSH服務限制為IPv4或IPv6 。要將其更改為僅使用IPv4(對大多數人來說應該沒問題),請進行以下更改:
AddressFamily inet
重新啟動SSH服務以啟用您的更改。請注意,在重新啟動SSH服務器之前,與服務器建立兩個活動連接。有了額外的連接,您可以在重新啟動出錯的情況下修復所有問題。
在Ubuntu上:
$ sudo service sshd restart
在Fedora或CentOS或任何使用Systemd的系統上:
$ sudo systemctl restart sshd
5. 啟用防火墻
安裝防火墻,啟用防火墻并對其進行配置,以僅允許您指定的網絡流量。簡易防火墻(UFW)是iptables的易于使用的界面,可大大簡化防火墻的配置過程。
您可以通過以下方式安裝UFW:
$ sudo apt install ufw
默認情況下,UFW拒絕所有傳入連接,并允許所有傳出連接。這意味著服務器上的任何應用程序都可以訪問互聯網,但是任何嘗試訪問服務器的內容都無法連接。
首先,確保您可以通過啟用對SSH、HTTP和HTTPS的訪問來登錄:
$ sudo ufw allow ssh
$ sudo ufw allow http
$ sudo ufw allow https
然后啟用UFW:
$ sudo ufw enable
您可以通過以下方式查看允許和拒絕哪些服務:
$ sudo ufw status
如果您想禁用UFW,可以通過鍵入以下內容來禁用:
$ sudo ufw disable
您也可以使用firewall-cmd,它已經安裝并集成到某些發行版中。
6. 安裝Fail2ban
Fail2ban是一個用于檢查服務器日志以查找重復或自動攻擊的應用程序。如果找到任何內容,它將更改防火墻以永久地或在指定的時間內阻止攻擊者的IP地址。
您可以通過鍵入以下內容來安裝Fail2ban:
$ sudo apt install fail2ban -y
然后復制隨附的配置文件:
$ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
并重新啟動Fail2ban:
$ sudo service fail2ban restart
該軟件將不斷檢查日志文件以查找攻擊。一段時間后,該應用程序將建立很多的禁止IP地址列表。您可以通過以下方法請求SSH服務的當前狀態來查看此列表:
$ sudo fail2ban-client status ssh
7.刪除未使用的面向網絡的服務
幾乎所有Linux服務器操作系統都啟用了一些面向網絡的服務。可能您希望保留其中大多數,但是,需要刪除一些內容。您可以使用ss命令查看所有正在運行的網絡服務:
$ sudo ss -atpu
ss的輸出將取決于您的操作系統。這是您可能看到的示例。它顯示SSH(sshd)和Ngnix(nginx)服務正在偵聽并準備連接:
tcp LISTEN 0 128 *:http *:* users:(("nginx",pid=22563,fd=7))
tcp LISTEN 0 128 *:ssh *:* users:(("sshd",pid=685,fd=3))
刪除未使用的服務("
要刪除Debian / Ubuntu上未使用的服務:
$ sudo apt purge
要在Red Hat / CentOS上刪除未使用的服務:
$ sudo yum remove
再次運行ss -atup以確認不再安裝和運行未使用的服務。
“保護Linux服務器的方法是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。