有一天突然收到一封郵件,郵件內容告知我的ECS服務器作為肉雞在攻擊別的機器,期初一想,一定是我機器的賬號密碼被泄露,或者是被人暴力破解,於是乎,我就查詢了一下我機器的賬號登錄記錄。
如何判斷自己正在遭受ssh暴力破解
使用root賬號ssh登錄服務器后使用lastb命令,就會會顯示最近錯誤登錄的日志,包括通過ssh服務錯誤登錄的日志。
如果結果和上面的內容一致,出現大量的輸出說明你的服務器正在遭受黑客們的暴力破解。
下面,海南SEO教下大家防止暴力破解的方式
方法一:修改ssh或者ftp遠程登錄的端口
修改vim /etc/ssh/sshd_config文件中的Port 將前方的#注釋刪除,並將22修改為你想要使用遠程登錄的端口,例如9999。
在防火牆上添加運行端口:
iptables -I INPUT -p tcp –dport 9999 -j ACCEPT
如果您使用的ubuntu系統並使用ufw,可以使用命令:sudo ufw allow 54231
如果您使用CentOS7系統並使用firewalld,可以使用命令:
firewall-cmd –zone=public –add-port=54231/tcp –permanent
如果是使用雲服務器,雲服務商有提供外部防火牆,例如阿里雲的安全組的情況下還要在外部的安全組中增加允許tcp端口54231端口的策略。
最后使用serivce sshd restart重啟sshd服務即可。
CentOS7用戶使用systemctl restart sshd。
重啟服務之后登錄服務器都需要輸入指定的遠程端口才能夠登錄服務器,大大降低了黑客攻擊服務器的概率。
方法二:限制登錄IP
如果你的公司或者常常需要登錄服務器的工作網絡環境擁有固定的IP地址時,限制登錄IP地址就可以很好的保護服務器免受黑客攻擊。如果沒有上述的條件,我們也可以通過搭建堡壘機,將所有服務器都設置為允許堡壘機的IP地址登錄即可保護您的服務器。
操作起來相當簡單,首先在vim /etc/hosts.allow中加入如下信息:
sshd:46.16.*.*
這條信息表示sshd服務允許向IP地址為46.16開頭的IP地址提供服務。
其次在vim /etc/hosts.deny中加入如下信息:
sshd:all:deny
這條信息表示sshd服務不允許向所有IP地址提供服務。
如此一來服務器將只有指定的IP地址可以訪問。
方法三:使用非root用戶登錄
禁止root用戶登錄並且設置允許其他用戶登錄后切換至root進行操作。這樣黑客如果想要通過ssh登錄服務器除了密碼之外首先他還需要知道服務器允許登錄的用戶,這樣將大大降低黑客攻破ssh的可能性,禁止root賬號登錄是最常用的一種安全策略,所有大公司的服務器都是把root賬號禁用了的
首先,在服務器內創建一個用戶,useradd itwgy.com
並且設置密碼:passwd itwgy.com ,當然密碼需要盡量復雜,包含字符,大小寫字母,數字,長度盡量大於15位
接下來我們需要允許此用戶能夠以root用戶身份運行命令。
使用visudo命令進入文本編輯模式,於92行附近
## Syntax:
##
## user MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
itwgy.com ALL=(ALL) NOPASSWD:ALL
添加紅色字體信息:”ALL=(ALL) NOPASSWD:ALL”,保存退出后可以驗證一下。
[root@localhost ~]#visudo
[root@localhost ~]# su itwgy.com
[itwgy.com@localhost root]$ sudo su -
Last login: Tue May 22 12:55:36 CST 2018 on pts/1
[root@localhost ~]#whoami
root
首先使用su itwgy.com切換至itwgy.com用戶,接下來我們可以使用sudo su -命令切換到root用戶。
同樣我們也可以通過遠程登錄方式驗證,使用ssh客戶端以itwgy.com用戶登錄系統后,再使用sudo su -命令進行切換。
在設置可以通過itwgy.com用戶登錄系統並能夠自由切換至管理員用戶操作后,我們需要禁止root用戶通過遠程方式登錄系統。
在vim /etc/ssh/sshd_config文件內添加“PermitRootLogin no”,后重啟sshd服務,重啟命令為service sshd restart ,啟動后,root用戶就將無法通過ssh服務直接連接到服務器。
來源:承德SEO