Linux服務(wù)器安全配置實例(一)引言
引言
很多企業(yè)的服務(wù)器經(jīng)常遭受到攻擊,出現(xiàn)的攻擊方式有:http服務(wù)攻擊、操作系統(tǒng)漏洞溢出攻擊、sql注入攻擊等。
大多服務(wù)器都托管在阿里云或者騰訊云上,這些云服務(wù)也都提供殺毒軟件和防火墻功能,如:阿里云盾。上述攻擊大部分都已經(jīng)被廠商提供的云安全攔截住了,但是畢竟沒有絕對的安全。
這里記錄下我平時對服務(wù)器的安全配置,希望對大家有一些幫助,還是沒有絕對的安全,但是能夠防患未然還是好的。另外這里指出,在描述攻擊我們的那些人,我拒絕使用黑客這個詞語,黑客的含義已經(jīng)被現(xiàn)在的社會涂上了一層讓人憎恨討厭的色彩,但是實際的含義并不是入侵、攻擊、破解,所以在以后的描述中我與其他文章作者不同,采用另外的稱號,就是惡意攻擊者或惡意的小伙伴。
服務(wù)器配置
對于Linux操作系統(tǒng),可以啟動selinux和iptables對系統(tǒng)的訪問進行過濾,同時可以降低用戶權(quán)限,降低一些進程的運行權(quán)限。來保證服務(wù)器被滲透后的威脅降到最低。另外需要及時修復(fù)應(yīng)用的漏洞,升級內(nèi)核版本到穩(wěn)定版,web應(yīng)用程序足夠強壯,降低數(shù)據(jù)庫用戶權(quán)限。
下面拿我的服務(wù)器舉例,我的服務(wù)器配置如下:
- 阿里云服務(wù)深圳可用區(qū)B
- 帶寬:2Mbps
- CPU: 1核
- 內(nèi)存: 1024 MB
- 帶寬:2Mbps
- 操作系統(tǒng): CentOS 7.0 64位
在服務(wù)器上配置有tomcat7.0、jre7、nginx1.9.9、mariadb5.5、php5.4.16。對外提供我的blog和微信公眾平臺的接口。
站長站端口掃描結(jié)果如下:
可以看到,從掃描的結(jié)果來看幾乎沒有可利用的。
使用nmap在服務(wù)器上對本機進行掃描,結(jié)果:
而在外網(wǎng)對其進行掃描,是無法得出結(jié)果的:
這些配置相當(dāng)簡單,相對而言,對付真正的攻擊還差很多,所以我們還需要進行其他的一系列配置。
ssh服務(wù)
ssh服務(wù)是最常用的遠(yuǎn)程登錄服務(wù),雖然其比telnet安全多,但是也存在一定的安全漏洞。一些不友好的小伙伴們會使用一些不和諧程序?qū)sh服務(wù)進行暴力破解。對ssh服務(wù)進行適當(dāng)?shù)呐渲每梢酝耆沤^暴力破解。同時對sshd服務(wù)進行優(yōu)化配置可以加快連接速度,減少耗費帶寬。
編輯/etc/ssh/sshd_config:
修改如下配置(注意如果配置前面有#,代表配置被注釋,這里我只羅列出需要配置的,如果你的服務(wù)器上的配置被注釋掉,去掉#打開注釋即可。另外我會在配置旁邊加上配置說明的注釋):
注意,這里使用了公鑰認(rèn)證,所以需要生成登陸的私鑰和公鑰,將公鑰上傳到服務(wù)器上,并寫入到上面的AuthorizedKeysFile配置指定的公鑰文件中。對于這個文件有如下要求:
①、該文件權(quán)限必須是640,所以需要執(zhí)行sudo chmod 640 公鑰文件,如:sudo chmod 640 /home/kid/.ssh/authorized_keys。
②、該文件的上層目錄必須為700權(quán)限,所以需要執(zhí)行sudo chmod 700 上層文件夾路徑,如:sudo chmod 700 /home/kid。
③、該文件可以放多個公鑰,注意公鑰由于特別長,有的生成工具會把一個公鑰拆分成多行,但sshd服務(wù)要求一個公鑰只能一行存放,所以一定要編輯成一行才好使。
上述配置完成后,重啟sshd服務(wù),sudo systemctl restart sshd,即可使用公鑰認(rèn)證遠(yuǎn)程登錄到服務(wù)器,如果之前沒使用過公鑰登錄的小伙伴,建議改完配置不要退出當(dāng)前登錄,等待重啟完后再開一個連接測試下公鑰認(rèn)證能否發(fā)登錄成功。如果不成功,需要注意上面的要求!!!同時可以使用沒斷開連接的終端執(zhí)行sudo tail -f /var/log/message檢查sshd服務(wù)的日志信息,同樣也需執(zhí)行sudo tail -f /var/log/secure檢查sshd服務(wù)的認(rèn)證日志信息。在tail -f 是實時從尾部監(jiān)聽一個服務(wù),經(jīng)常用于動態(tài)查看相關(guān)日志文件,由于是監(jiān)聽要退出的話需要按ctrl+c結(jié)束。這樣sshd服務(wù)的安全性就有很大的提升了,當(dāng)然在sshd服務(wù)中還可以配置允許登陸的ip和禁止登陸的ip,這個以后我會單開文章詳細(xì)說明。另外為了我們的配置不被惡意篡改可以執(zhí)行,可以執(zhí)行sudo chattr +i /etc/ssh/sshd_config 和sudo chattr +i 公鑰文件(如:sudo chattr +i /home/kid/.ssh/authorized_keys),chattr +i 命令會多某個文件設(shè)置隱藏狀態(tài)位,設(shè)置后該文件即使是root和文件所有者都無法對該文件進行刪除、修改、移動等操作,保證了該文件的安全。

即使惡意登陸者想對sshd服務(wù)進行重新配置,把自己的公鑰加入公鑰文件都是無法操作的。但當(dāng)你確實想要修改這個文件的時候,可以使用
sudo chattr -i /etc/ssh/sshd_config以及sudo chattr +i /home/kid/.ssh/authorized_keys然后編輯這兩個文件。
今天的分享就到這里了,下一篇我們會繼續(xù)講解服務(wù)器配置的實例。