- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會理事單位
- 安全聯(lián)盟認(rèn)證網(wǎng)站身份V標(biāo)記
- 域名注冊服務(wù)機構(gòu)許可:滇D3-20230001
- 代理域名注冊服務(wù)機構(gòu):新網(wǎng)數(shù)碼
想要你的服務(wù)器更安全,那么你就得學(xué)會好好保護你的linux服務(wù)器,因為你的服務(wù)器只要在網(wǎng)絡(luò)中就能被訪問到,就會面臨各種掃描或攻擊。
藍(lán)隊云的運維工程師,根據(jù)過往的一些經(jīng)驗,整理了一些提升云服務(wù)器安全性的方法,能夠幫助你避免一些惡意掃描和漏洞嘗試。
主要有幾點:
不使用遠(yuǎn)程登錄默認(rèn)的22端口
禁用ROOT用戶遠(yuǎn)程登錄
禁用SSH用戶名密碼登錄,只允許密鑰登錄
不要使用軟件或服務(wù)的默認(rèn)端口
開啟系統(tǒng)自帶的防火墻,啟用最小訪問原則
保持系統(tǒng)經(jīng)常性的更新
下面,進(jìn)行詳細(xì)的操作分享:
對于服務(wù)器,我們幾乎都是使用SSH進(jìn)行遠(yuǎn)程登錄操作。SSH的默認(rèn)端口是22,這個是眾所周知的。
所以,不要使用22默認(rèn)的端口,很多掃描一天24小時就是不斷的在掃描并嘗試使用22端口進(jìn)行登錄。如果你的遠(yuǎn)程登錄端口不是22,則意味著針對這一個點的掃描的可能性極大的減少了。
方法分享:
sshd的配置文件位于:/etc/ssh/sshd_config
修改這個文件
vim/etc/ssh/sshd_config
# 找到Port 22這一行,注釋掉它,在它的下面添加新的一行記錄
Port12021
# 重啟服務(wù)sudosystemctl restart sshd
這樣,你的遠(yuǎn)程端口就變?yōu)?2021,而不是12021
這樣,下次你在遠(yuǎn)程登錄時,添加-p參數(shù)就好了。
你要知道,22這個很容易知道,不是22這個則不太好猜測,就算是計算機不停的輪詢猜測sshd的端口,這個范圍也大大增加了。
而大多數(shù)情況下,對sshd的掃描都主要是針對22來的,因為不修改端口的情況太多了
Root用戶的權(quán)限太高了,無論什么情況下,都不應(yīng)該允許Root遠(yuǎn)程登錄,而是使用其它用戶來允許遠(yuǎn)程登錄。
方法分享:
找到sshd配置文件,/etc/ssh/sshd_config
vim /etc/ssh/sshd_config
找到,PermitRootLogin這樣的字樣及行
PermitRootLogin no
將這個值修改為no
# 重啟服務(wù)
sudo systemctl restart sshd
當(dāng)前,切記在禁用ROOT前,要新增了另一個用戶以供遠(yuǎn)程登錄。
有兩個效果,其一,默認(rèn)掃描很多情況下是使用ROOT用戶來嘗試登錄,一旦Root不允許登錄,則猜測用戶名的難度大大增加。
而另一方面,就算是非root用戶被攻破,如果你對這個用戶的權(quán)限進(jìn)行很好的控制,它造成的影響總相對會少一些。
計算機通過輪詢+猜測的方式來攻破總是非常有效的,網(wǎng)上的用戶名密碼庫太多了,很多人的用戶名密碼對在互聯(lián)網(wǎng)上早已泄露了。
對于服務(wù)器來說,與其想著如何強化密碼,不如直接禁用掉密碼登錄,只支持密鑰的方法來登錄
方法分享:
# 如果你還沒有ssh-key,你可以在本機先生成一個ssh-key以做使用
ssh-keygen -t rsa -C "your_email@example.com"
# 將你的key上傳到服務(wù)器(此方法僅限你使用的是Linux或Mac系統(tǒng),Win不適應(yīng)命令)
ssh-copy-id -i ~/.ssh/id_rsa -p 12021 username@ip
然后修改/etc/ssh/sshd_config
vim/etc/ssh/sshd_config
#修改或添加以下配置RSAAuthentication yes
PubkeyAuthentication yes
sudosystemctl restart sshd
最后,確認(rèn)遠(yuǎn)程登錄支持密鑰登錄后,禁用password登錄
vim /etc/ssh/sshd_config
#修改或添加以下配置
PasswordAuthentication no
完成這一步后,基本意味著互聯(lián)網(wǎng)的用戶名密碼遠(yuǎn)程掃描式攻擊基本就無效了。只要保護好你自己本機的私鑰,通過SSH掃描攻擊嘗試基本就不存在了
做過編程的人都知道,MySQL的端口端口是3306,Postgres的默認(rèn)端口是5432
要知道,但凡是軟件或服務(wù),都可能會有漏洞。
惡意掃描會對常用軟件,常用服務(wù)的端口進(jìn)行嘗試,特別是針對已知的存在漏洞的服務(wù)或軟件,進(jìn)行嘗試。
很多人壓根不會做任何修改,直接以默認(rèn)端口來運行相應(yīng)的服務(wù)。甚至更甚的,在正式環(huán)境不需要密碼都能訪問這些服務(wù)的現(xiàn)象也時有發(fā)生。
方法分享:
沒有特別的方式,針對你服務(wù)器上的軟件或服務(wù),進(jìn)行修改。每個軟件或服務(wù)的修改方式并不一致。將其修改為非默認(rèn)的端口。
還要特別注意,有些諸如Redis這樣的,一定要設(shè)置用戶名密碼,不要密碼都不要就能訪問。
還有那個原理,非默認(rèn)端口不好猜測。換了端口,誰知道你的MySQL端口是什么呢?
這同樣能極大的減少惡意軟件的攻擊與掃描。
事實上,大多數(shù)情況下,類似的服務(wù)不應(yīng)該公開對外訪問才是合理的。
Linux系統(tǒng)都有防火墻,比如Debian有ufw防火墻,CentOS有iptables等。
當(dāng)然,云服務(wù)類似阿里或騰訊云是有默認(rèn)的防火墻安全策略的。你首先可以設(shè)置這一層的策略。但似乎云服務(wù)的安全策略只針對公網(wǎng)訪問才有限。
但這不能成為你讓你的機器裸奔的理由。開啟你的防火墻。
方法分享:
以Debian上的ufw為例
#安裝
sudoapt update
sudoapt install ufw
#查看狀態(tài)
sudoufw status verbose
# 查看內(nèi)置應(yīng)用
sudoufw app list
# 允許443
sudoufw allow Nginx\\\\ https
# 允許12021遠(yuǎn)程端口
Sudouff allow 12021/tcp
#啟用防火墻
sudoufw enable
這樣,沒有必要開放的端口不需要開放。這樣當(dāng)然能更少的避免惡意軟件的攻擊與掃描。
好吧,這是非常重要的一個點。
每天都可能有新的系統(tǒng)漏洞被發(fā)現(xiàn),不同的系統(tǒng),都會及時的發(fā)布更新補丁。你應(yīng)該每天去更新你的系統(tǒng),特別是安全性的補丁。
同樣,不同的軟件也會定時發(fā)布更新,修復(fù)安全漏洞或其它。
方法分享:
其實非常簡單,每個系統(tǒng)幾乎都提供了更新機制
# debian系
sudo apt update #更新最新信息
sudo apt upgrade #升級或安裝新的補丁
只要你做的及時,這樣就能有效的防止新的漏洞
云服務(wù)器的安全和運維是一個長期的工作,需要花費大量的時間和精力還維護。想要提升云服務(wù)器的安全性,建議在選購云服務(wù)器的時候,選擇靠譜的服務(wù)商,能夠保障的基本的運維服務(wù)。
給大家分享藍(lán)隊云的云服務(wù)器,標(biāo)準(zhǔn)云的性能,輕量云的價格,提供24小時人工技術(shù)服務(wù)支持:云服務(wù)器優(yōu)惠三重好禮
提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!
這條文檔是否有幫助解決問題?
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP