防止暴力破解ssh的四種方法
一. 方法介紹
防止暴力破解的四種方法:
? 1 密碼要寫的足夠的復雜,通常建議將密碼寫16位,并且無連貫的數(shù)字或者字母;當然也可以固定一個時間修改一次密碼,推薦是一個月修改一次會穩(wěn)妥一些
? 2 修改ssh的端口號,給對方一些迷惑性,因為遠程linux服務(wù)器默認端口是22,修改成其他的端口,三位數(shù),四位數(shù)的都行,這樣能避免大部分的暴力破解的可能性
? 3 通常我們遠程登錄都是使用root用戶進行登錄的,我們將root用戶設(shè)置成系統(tǒng)用戶,并且不允許root賬號直接登錄,添加一個普通用戶,給它賦予root用戶的權(quán)限,這樣也能極大的避免對方破解成功的可能性。
? 4 使用秘鑰認證的方式登錄,在客戶端上生成公鑰和私鑰,將公鑰發(fā)送給需要遠程的服務(wù)端,在輸入一次正確的密碼之后,后續(xù)再次遠程,則不需要用到密碼登錄。
由于第一個密碼自主性比較強,這里就不做第一個方法的演示,下面的幾個方法一起來看看怎么設(shè)置吧。
二. 參考實例
2.1 修改端口號
#ssh配置文件 vim /etc/ssh/sshd_config修改的是第17行的端口信息,這里有個方法,ssh默認端口是22,可以將17行的信息復制一行,在18行進行修改,這里把端口修改成2222。

修改完之后一定要記得重啟服務(wù)
systemctl restart sshd
可以使用掃描端口的工具看下
[root@localhost ~]# nmap 127.0.0.1 Starting Nmap 6.40 ( http://nmap.org ) at 2023-03-05 11:44 CST Nmap scan reportforVM-12-17-centos (127.0.0.1) Host is up (0.0000050s latency). Not shown: 996 closed ports PORT STATE SERVICE 21/tcp open ftp 2222/tcp open EtherNet/IP-1 3306/tcp open mysql 9050/tcp open tor-socks
端口掃描并沒有顯示到ssh的服務(wù)信息,若多開放幾個端口,就能起到迷惑性,讓對方不知道是使用什么端口遠程的。
2.2 賦予其他用戶超級權(quán)限
vim /etc/passwd先將root用戶設(shè)置成系統(tǒng)用戶,并且不能進行遠程登錄

這里直接新增一個用戶,再給一個普通用戶超級權(quán)限(修改UID和GID)
[root@localhost ~]# useradd -s /bin/bashtest [root@localhost ~]# vim /etc/passwd [root@localhost ~]#echo"GUANzhu123//"| passwd --stdintest

這里可以測試下修改完后是否具有root用戶的權(quán)限,可以嘗試去打開shadow文件。
[root@localhost ~]# su -test 上一次登錄:日 3月 5 1113 CST 2023:0 上 ABRT has detected 1 problem(s). For more info run: abrt-cli list [root@localhost ~]#pwd /home/test [root@localhost ~]#tail-2 /etc/shadow mysql19420:::::: test1942199999::
小提示:千萬千萬要記得給要賦予超級權(quán)限的普通用戶設(shè)置一個登錄密碼,讓它可以遠程登錄,否則會出現(xiàn)上不去服務(wù)器的情況。
2.3 使用秘鑰認證
先在本地使用ssh-keygen命令生成公鑰和私鑰文件,-t表示選擇秘鑰的類型,-b表示指定長度,這里選擇長度是4096。
[root@localhost ~]# ssh-keygen -t rsa -b 4096 Generating public/private rsa key pair. Enter fileinwhichto save the key (/root/.ssh/id_rsa): Created directory'/root/.ssh'. Enter passphrase (emptyforno passphrase): Enter same passphrase again: Your identification has been savedin/root/.ssh/id_rsa. Your public key has been savedin/root/.ssh/id_rsa.pub. The key fingerprint is: SHA256:Mq/1yY0jDdMsw9DNQIUgS0mDKXxkPpxSXXg24inkl44 root@localhost.localdomain The key's randomart image is: +---[RSA 4096]----+ |. .B*.++.o. | |..B+oB +o | | o+=o *..+ | | .o.=. . o | | = ooSo | | E . +* o | | o* | | o.oo+ | | . .=.. | +----[SHA256]-----+ [root@localhost ~]# ll /root/.ssh/ 總用量 12 -rw-------. 1 root root 3243 3月 5 12:17 id_rsa -rw-r--r--. 1 root root 752 3月 5 12:17 id_rsa.pub

這里有幾個信息分別是:
輸入保存秘鑰的文件,默認是放在/root/.ssh_rsa,如果不指定其他位置,直接按回車即可。
創(chuàng)建目錄,默認是/root/.ssh這個目錄,不指定的話也是直接按enter。
輸入秘鑰的密碼,這里默認也不設(shè)置,按回車,畢竟都使用秘鑰了,就不想每次遠程服務(wù)器又要輸入一次密碼了。 再次輸入相同的密碼,這里也直接按回車吧
您的身份信息保證在/root/.ssh/id_rsa中 公鑰已保存在/root/.ssh/id_rsa.pub中 秘鑰的指紋為: RSA
4096那張圖就是這個秘鑰的指紋了,可以看出來是很復雜的。
以上都是在客戶端上設(shè)置的,下一步是將公鑰發(fā)送到服務(wù)器上面
這里又要使用一個命令ssh-copy-id.
#ip填寫要遠程服務(wù)器的IP [root@localhost ~]# ssh-copy-id root@192.168.196.23 AI寫代碼

公鑰發(fā)送過去后,就可以直接使用ssh遠程登錄;
[root@localhost ~]# ssh 192.168.196.23 Last login: Sun Mar 5 1228 2023 from 192.168.196.166 [root@node1 ~]# AI寫代碼
無須輸入密碼即可遠程登錄,這個就是秘鑰登錄的優(yōu)勢了。
三. 使用Fail2ban軟件
fail2ban是一款安全保護工具,觸發(fā)限制后會創(chuàng)建防火墻規(guī)則封鎖IP,諸如對ssh暴力破解、ftp/http密碼窮舉等場景提供強有力的保護。
1.這里會使用到兩臺虛擬機做測試分別是192.168.196.166、192.168.196.23
2.需要用到iptables和ssh服務(wù)
3.2 安裝Fail2ban
這個程序默認是未安裝的,需要先安裝好epel源,再安裝這個程序
yum install epel-release -y yum install fail2ban -y
3.2 修改配置文件(服務(wù)端進行)
配置文件的位置在:
/etc/fail2ban/jail.conf
這里填寫如下信息
[root@localhost fail2ban]# vim jail.conf [root@localhost fail2ban]#tail-10 jail.conf [ssh-iptables] #用到的服務(wù) enabled =true #開機自動啟用服務(wù) filter = sshd #添加動作是sshd action = iptables[name=SSH,port=ssh,protocol=tcp] logpath = /var/log/secure #要監(jiān)控的站點日志文件 #這三個代表的是 將5分鐘內(nèi)頻繁訪問失敗3次的IP屏蔽3600秒 maxretry = 3 #設(shè)定失敗次數(shù) findtime = 300 #一定時間內(nèi) bantime = 3600 #屏蔽多長時間
重啟服務(wù)
systemctl restart fail2ban.service systemctlenablefail2ban.service
以上的都是在服務(wù)端進行的
3.3測試遠程登錄(客戶端)
這里測試登錄失敗次數(shù)超過三次后會提示什么
[root@node1 ~]# ssh 192.168.196.166 root@192.168.196.166's password: Permission denied, please try again. root@192.168.196.166's password: Permission denied, please try again. root@192.168.196.166's password: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). [root@node1 ~]# ssh 192.168.196.166 ssh: connect to host 192.168.196.166 port 22: Connection refused [root@node1 ~]# [root@node1 ~]# ssh 192.168.196.166 ssh: connect to host 192.168.196.166 port 22: Connection refused [root@node1 ~]# ssh 192.168.196.166 ssh: connect to host 192.168.196.166 port 22: Connection refused AI寫代碼
測試過后顯示連接失敗,以上配置是已經(jīng)成功了
3.4 查看有哪些IP被拉入黑名單(服務(wù)端)
1 [root@localhost fail2ban]# iptables -L -n |tail 2 Chain IN_public_log (1 references) 3 target prot optsourcedestination 4 5 Chain OUTPUT_direct (1 references) 6 target prot optsourcedestination 7 8 Chain f2b-SSH (1 references) 9 target prot optsourcedestination REJECT all -- 192.168.196.23 0.0.0.0/0 reject-with icmp-portunreachable 10 11 RETURN all -- 0.0.0.0/0 0.0.0.0/0 12 13 [root@localhost fail2ban]# fail2ban-client status 14 Status |- Number of jail: 1 15 `- Jail list: ssh-iptables 16 17 [root@localhost fail2ban]# fail2ban-client status ssh-iptables 18 Statusforthe jail: ssh-iptables 19 |- Filter 20 | |- Currently failed: 0 | |- Total failed: 6 21 | `- File list: /var/log/secure 22 23 `- Actions 24 |- Currently banned: 1 |- Total banned: 2 25 `- Banned IP list: 192.168.196.23
如果不慎是其他認識的人登錄失敗了,可以使用以下方式將他移除黑名單
[root@localhost fail2ban]# fail2ban-clientsetssh-iptables unbanip 192.168.196.23
總結(jié)
防止暴力破解的內(nèi)容就是這么多了,當然也可以通過腳本的方式來屏蔽一段時間頻繁訪問的IP,若覺得以上內(nèi)容還行的,可以點贊支持一下!
鏈接:https://blog.csdn.net/rhn_111/article/details/129343874
-
Linux
+關(guān)注
關(guān)注
87文章
11496瀏覽量
213225 -
服務(wù)器
+關(guān)注
關(guān)注
13文章
9749瀏覽量
87547 -
端口
+關(guān)注
關(guān)注
4文章
1046瀏覽量
32820
原文標題:防止暴力破解ssh的四種方法
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
labview密碼破解
labview如何寫暴力破解密碼 密碼4位數(shù) 由1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ 如何每次讀取一個數(shù)進行測試完成后進行下一個測試
何為暴力破解呢
對目前流行的ssh密碼暴力破解工具進行實戰(zhàn)研究、分析和總結(jié)

為什么不能隨便暴力破解比特幣私鑰
暴力破解比特幣私鑰可能會實現(xiàn)嗎
字符串硬核暴力破解法講解

IP知識百科之暴力破解
如何通過Python腳本實現(xiàn)WIFI密碼的暴力破解

評論