linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

文本編輯器 Linux OpenSSH 路由器 技術互聯網 2017-05-22

sshd服務暴力破解步驟

sshd暴力破解方法

防止暴力破解調優

1. 變更默認端口

2. 變更root用戶

3. 日誌監控-->防止暴力破解(fail2ban應用)

fail2ban詳解

在初始化的服務器中,20種ssh服務調優方法!

第三步:運行暴力破解程序,破解密碼

為了防止我們的密碼被暴力破解,服務器的密碼一定不要使用弱口令!!!而且在企業中,一般會要求半個月或多長時間變更一次密碼(公司中運維工程師會要求的)

弱口令:簡單的密碼,如下:

123456

awp@host

12HLad^

強口令: ---> 密碼長度大於8位(最好不少於14位),且有字母 數字 和特殊符號混合構成的高複雜度的字符串

防止暴力破解調優

安裝sshd-server

查詢服務是否安裝:

rpm -qa | grep openssh-server

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

若沒有安裝,可使用如下命令進行安裝:

yum -y install openssh* #安裝所有openssh軟件包

通過如下命令,查看openssh生成的文件列表:

rpm -ql openssh

1. 變更默認端口

sshd服務配置文件位於/etc/ssh目錄下!

ls /etc/ssh

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

ssh_config ---> 客戶端配置文件

sshd_config ---> 服務器端配置文件

我們修改服務器端文件(別人訪問我們時,我們是sshd服務器!!!)

vim /etc/ssh/sshd_config

修改默認端口配置:

#Port 22

改為:

Port 123

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

保存退出,並重啟sshd服務:

service sshd restart

/etc/init.d/sshd restart

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

查看監聽端口是否生效:

netstat -anlpt | grep ssh

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

通過本機遠程連接測試!(本機遠程連接本機!)本機即使客戶端,也是服務端

ssh 192.168.31.222 -p 123 #指定端口遠程連接

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

2. 掃描某IP地址開放端口

nmap 192.168.171.120

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

這裡我發現,當設置ssh開放端口在1000以內是掃描不出來的!!!而且若是指定到其他服務的端口上時,掃描到的服務名稱就是該服務的名稱!!!linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

這就是為什麼我們要修改端口的意思!!!讓別人不知道我們的哪個端口是sshd服務的端口!

修改:root:x:0:0:root:/root:/bin/bash

為:root:x:0:0:root:/root:/bin/nologin #禁止root用戶登錄

修改:xg:x:500:500::/home/xg:/bin/bash

為:xg:x:0:0::/home/xg:/bin/bash #普通用戶提權

遠程連接測試:

root用戶連接測試

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

xg用戶連接測試:

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

另外,改下面內容後,xg用戶也是登錄不上的。只判斷UID是否為0,不查看用戶名的:

vim /etc/ssh/sshd_config

改:

#PermitRootLogin yes

為:

PermitRootLogin no

service sshd restart

測試:

ssh [email protected]

[email protected]'s password:

Permission denied, please try again.

一般情況這個就可以解決了暴力破解的問題了。

到目前為止小的暴力破解已經解決了!!!

但是,雖然我們有效的降低了別人破解我們系統的可能性,但是,別人在攻擊時,會造成sshd服務器系統資源佔用(可能導致癱瘓!)

為有效防止系統資源無辜被佔用導致系統緩慢或癱瘓,我們可以使用防火牆!!!---->一般公司不使用防火牆.

我們還可以使用fail2ban軟件,實現一些規則的制定!!避免別人惡意攻擊服務器造成不必要的損失!

fail2ban ---> 系統日誌監控

通過匹配日誌的錯誤信息(正則式匹配)執行相應的屏蔽動作(一般情況下是防火牆),而且可以發送e-mail通知系統管理員,很好 很實用 很強大!

#ban (bæn)禁令

簡單來說其功能就是防止暴力破解。工作的原理是通過分析一定時間內的相關服務日誌,將滿足動作的相關IP利用iptables加入到dorp列表一定時間。

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --name ROUTER-SSH --update --seconds 1800 --hitcount 5 -j DROP

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --name ROUTER-SSH --set -j ACCEPT

設置條件:ssh遠程登錄5分鐘內3次密碼驗證失敗,禁止用戶ip訪問主機1小時,1小時該限制自動解除,此ip可以重新登錄

具體配置:

/etc/fail2ban/action.d #動作文件夾,內含默認文件。iptales以及mail等動作

/etc/fail2ban/fail2ban.conf #定義了發ilban日誌級別、日誌位置及sock文件位置

/etc/fail2ban/filter.d #條件文件夾,內含默認文件。過濾日誌關鍵內容設置

/etc/fail2ban/jail.conf #主要配置文件,模塊化,主要設置啟用ban動作的服務及動作閥值

[ssh-iptables]

enabled=true #是否激活此項

logpath=/var/log/secure #驗證系統的登錄日誌文件,這裡要寫sshd服務日誌文件

findtime=300 #在5分鐘內出現規定次數就開始工作,默認時間單位秒

maxtery=3 #3次密碼驗證失敗

bantime=3600 #禁止用戶IP訪問主機1小時

linux系統sshd服務防止暴力破解應對策略,你的安全嗎?

本文是收集來的防止暴力破解的方法提供參考

相關推薦

推薦中...