3、ssh暴力破解檢視
4、 驗證多次錯誤被禁止ssh
5 、注意點
6、參考資料
ssh 為 secure shell 的縮寫,由 ietf 的網路小組(network working group)所制定;ssh 為建立在應用層基礎上的安全協議。ssh 是目前較可靠,專為遠端登入會話和其他網路服務提供安全性的協議。利用 ssh 協議可以有效防止遠端管理過程中的資訊洩露問題。ssh最初是unix系統上的乙個程式,後來又迅速擴充套件到其他操作平台。ssh在正確使用時可彌補網路中的漏洞。ssh客戶端適用於多種平台。幾乎所有unix平台—包括hp-ux、linux、aix、solaris、digital unix、irix,以及其他平台,都可執行ssh。[引用](
windows 10、家庭網路不固定ip、
xshell6、xftp
檢視登入日誌檔案#vim /var/log/secure
,內容做了刪減
mar 24 07:20:24 root sshd[29081]: failed password for invalid user vnc from 104.248.227.130
mar 24 07:20:25 root sshd[29083]: failed password for invalid user newscng from 125.91.105.108
mar 24 07:20:25 root sshd[29083]: received disconnect from 125.91.105.108 port 33659:11: bye bye [preauth]
mar 24 07:20:32 root sshd[29085]: pam_unix(sshd:auth): check pass; user unknown
mar 24 07:20:32 root sshd[29085]: pam_unix(sshd:auth): authentication failure; rhost=182.61.14.224
3.1.1這些行中的ip位址,錯誤超過次數超過指定數字 /etc/hosts.deny中
3.1.2正確的也做記錄寫入記錄檔案中,方便檢視有哪些ip位址登入過系統
3.2.1vim /usr/local/bin/secure_ssh.sh
,
#! /bin/bash
cat/
var/log/secure|awk '/failed/'
|sort
|uniq -c|awk '' >/root/black.txt
define="2"
for i in `cat
/root/black.txt`
do ip=`echo
$i|awk -f= ''`
num=`echo
$i|awk -f= ''`
if[$num
-gt$define
];then
grep $ip
/etc/hosts.deny > /dev/null
if[ $? -gt 0 ]
;then
echo
"sshd:$ip:deny" >> /etc/hosts.deny
fifi
done
ps:
很多同學使用windows系統通過xshell等工具,用xftp工具開啟編輯,這種方式筆者試過出現寫入到/root/black.txt檔案變成了/root/black.txt?,導致無法寫入/etc/hosts.deny,建議使用vim的方式編輯!
3.2.2vim /usr/local/bin/secure_ssh_accepted.sh
#! /bin/bash
cat/
var/log/secure*
|awk '/accepted/'
|sort
|uniq -c|awk '' >/root/black-accepted.txt
登入成功的ip寫入 /root/black-accepted.txt檔案,登入成功關鍵字為accepted3.2.3 加入 兩個s**件到定時任務
(1)#crontab -e
*/1 ***
* sh /usr/local/bin/secure_ssh.sh
*/1 ***
* sh /usr/local/bin/secure_ssh_accepted.sh
(2)esc -> wq
生效3.3.1檢視登入失敗ip listvim /root/black.txt
筆者記錄如下
193.105.107.135=6
193.112.174.89=29
**193.112.19.189=11939**
193.112.219.176=30
193.112.40.170=30
193.112.44.102=6
193.112.53.50=6
193.112.59.163=355
193.112.93.2=1
193.142.146.21=11
193.148.69.157=9
193.70.39.58=6
195.12.137.210=25
195.214.223.84=2
195.223.211.242=60
此處發先乙個ip位址193.112.19.189
登入密碼錯誤次數 11939次,好暴力!!!,
3.3.2 檢視 host.deny檔案# vim /etc/hosts.deny
sshd:192.95.6.110:deny
sshd:192.99.151.33:deny
sshd:192.99.168.9:deny
sshd:192.99.245.135:deny
sshd:193.112.174.89:deny
*sshd:193.112.19.189:deny*
sshd:193.112.219.176:deny
sshd:193.112.40.170:deny
sshd:193.112.59.163:deny
sshd:193.142.146.21:deny
sshd:193.148.69.157:deny
sshd:195.12.137.210:deny
此檔案已經寫入到禁止ssh中,完成配置
3.3.3 檢視登入成功記錄# vim /root/black-accepted.txt
192.168.2.126=8
192.168.2.62=2
192.168.2.113=1
此處ip做了處理轉換,各位同學可以檢視自己的檔案
驗證過程大家可以用別的機器 多次錯誤使用者密碼嘗試ssh,按第二章節內容進行檢視,以及看ssh的登入提示資訊,此處就不再貼出內容。
(1)編寫shell指令碼請在linux環境vim的方式,不要像筆者這樣經常偷懶用xftp右鍵編輯.s**件,否則會出現txt檔案後面有問號
(2)錯誤次數建議設定大一點,否則如果是同事之間在公司網路訪問同一臺雲伺服器,可能因某些同事錯誤次數累加而導致被禁止ssh
[1]: ssh定義引用
[2]: ssh暴力破解指令碼參考
Centos7 安裝fail2ban防止暴力
安裝epel yum y install epel release安裝fail2ban yum y install fail2ban開機自啟fail2ban systemctl enable fail2ban啟動fail2ban systemctl start fail2ban檢視fail2ban安...
CentOS7如何修改SSH登入埠
centos7修改ssh預設登入埠和centos6差不多,就是防火牆不一樣,然後關閉selinux最好。修改ssh預設22埠 vi etc ssh sshd config 在port 22下面加一行,以埠50000為例,port 50000 然後儲存,重啟ssh服務systemctl restart...
CentOS 7 如何實現SSH自動登入
我們經常會需要從本地linux主機登入到服務端linux主機,每次登入都需要輸入密碼,以下步驟可以實現免密碼自動登入。ssh keygen t rsa出現提示預設都回車,輸出結果類似 此時會在.ssh目錄生成兩個檔案 id rsa id rsa.pub scp ssh id rsa.pub your...