iT邦幫忙

0

SSH連線限制

各位大大好,目前手上有個關於SSH限制的棘手問題。

情境如下:
客戶的CentOS主機前,有一個實體防火牆,主機接在內網。
但是不清楚客戶的網路外包商是怎麼設定的,從LINUX中看到的所有經過防火牆進來的外部封包,來源通通是防火牆的IP,也就是看不出這些封包是從哪邊來的。

問題來了,這個客戶的LINUX一直被try ssh,我們是軟體廠商,只要我們的軟體變慢,他們就反應問題,而多次查詢的結果可以確定是網路連線被他這些大量try連線的封包塞住。雖然已經多次建議他們要從實體防火牆把22僅針對我們的IP開放,但是不知是溝通不良還是客戶不懂(應該是後者),總之無法從這條路下手。

嘗試過從LINUX中的防火牆阻擋,但是因為上述原因,無法分辨封包來自哪裡,所以會把我們自己擋在外面。

目前想尋求的方法是可以緩解大量建立連線的問題。

我用過pam_tally2的方式去阻擋,但是pam_tally雖然會在錯誤嘗試多次之後,讓他變成鎖定,但是無法杜絕建立連線的這一段。
從ssh設定檔去禁止root登入的設定也做了,但是實測發現,連線還是可以建立,只是輸入密碼會被拒絕而已。

想請問有沒有可以從帳號去封鎖連線建立的方式? 目前觀察到是這台機器一直被用root去嘗試登入,所以想先做的是:嘗試連線建立時使用的帳號是root,可以讓他連密碼都不用試就直接中斷連線。

看更多先前的討論...收起先前的討論...
slime iT邦大師 1 級 ‧ 2019-01-18 12:33:00 檢舉
1. 可能客戶的主機往外的防火牆設定成 NAT 模式, 所以顯示的是防火牆 IP .
2. 建議還是先考慮請客戶改防火牆那邊, 其次是考慮在客戶那邊架 VPN .
rewrite iT邦新手 4 級 ‧ 2019-01-18 12:46:32 檢舉
如果公司對外的ip是固定的,用iptables 設定可以連線的白名單就好,如果是浮動ip的話,那就用下面邦友的方式「fail2ban」那套很好用
vc0528 iT邦新手 5 級 ‧ 2019-01-18 13:01:44 檢舉
fail2ban不錯, 有多少人會使用ssh? 不多的話那鎖22port, ssh port 改自訂
weiclin iT邦高手 4 級 ‧ 2019-01-18 14:53:35 檢舉
來源通通是防火牆 ip, 就沒辦法用 fail2ban了...
你 sshd 換個 port 比較實際
froce iT邦高手 1 級 ‧ 2019-01-18 15:18:33 檢舉
都做,防火牆僅開該開的,fail2ban也開,改個port。
cshalove iT邦新手 5 級 ‧ 2019-01-18 16:50:46 檢舉
可以試試看 knock 這套軟體,
http://linux.vbird.org/linux_security/knockd.php
不同的是原本ssh port先關閉,當自訂的連線程序打通後才允許 ssh port連線,這是另類的開門方式。
yui81424 iT邦新手 5 級 ‧ 2019-01-18 16:53:05 檢舉
謝謝大家的回覆建議,我這邊統一回覆~
我明白最治標的方式是smile大大說的直接從實體防火牆下手,一旦LINUX端看的到真正來源後,軟體防火牆也可以多一層阻擋。 這個部分也只能再請業務那邊積極聯繫了。

而改port也有想過,但是一樣會需要配合客戶的網路外包商那邊將實體防火牆的設定調整,如果他那邊可以配合修改,照理講應該就從policy調好只針對我們開放ssh就好...(汗)

fail2ban的方案在這個情境不能使用,如我問題描述一樣,來源IP都同一組無法做阻擋。
echochio iT邦研究生 5 級 ‧ 2019-01-19 21:27:16 檢舉
看來是 實體防火牆 廠商問題 ... 應該是小經銷商
求助防火牆 代理商 , 不行就求助 防火牆原廠呀 ....
看不到 source IP 問題會很大 ...
那 mail server 不就一大堆問題 ?
web server 只看到來源是 防火牆 IP ? 沒法做客戶分析 .....
防火牆政策改鎖 source IP 與 改 port 應該相當容易的 ........ 有經驗的 MIS 都會吧
LINUX一直被try ssh ... 應該不會掛才是 ... DDOS 大量封包才會掛
0
haoming
iT邦好手 1 級 ‧ 2019-01-18 12:15:02

查了你用的 pam_tally2 , 只是阻擋特定user. 但是port 仍然是開放可以持續被try.
我建議你使用 fail2ban 這個工具, 偵測到異常的時候 會直接從 網路封鎖. 時間到在打開
這樣系統壓力才會降低.

yui81424 iT邦新手 5 級 ‧ 2019-01-18 16:49:03 檢舉

謝謝您的建議,但是因為來源IP通通都會是防火牆IP,無法用這個方式做阻擋(會把我們自己也完全擋在外面)

haoming iT邦好手 1 級 ‧ 2019-01-19 11:02:20 檢舉

不然就是搭配黑魔法.. 用autossh 建立 反向通道連到自己公司的機器. 不過這個有時候會掛掉就是了

0
hsiang11
iT邦研究生 4 級 ‧ 2019-01-18 17:06:49

LINUX中看到的所有經過防火牆進來的外部封包,來源通通是防火牆的IP

這看起來是網路規劃上的錯誤
大多是真正的來源在進入防火牆中經過一層NAT
導致目的端收到的封包來自於防火牆IP
所以還是要從網路設定的調整處理
不然怎麼分辨到底哪裡來的攻擊

以前就在某家公司看過 NAS的連線全部都是同一個IP
例如一個帳號同時多個登入 根本就沒辦法分辨誰真誰假
網路會亂調的真的不少

yui81424 iT邦新手 5 級 ‧ 2019-01-18 18:21:39 檢舉

呵呵,這種規劃錯誤還真不少,至少我接觸到的客戶大概有2成都會有這種錯誤的設置,實在很困擾。

0
浩瀚星空
iT邦高手 1 級 ‧ 2019-01-19 09:36:05

有沒有打算將ssh的port改個port。

我早期的主機也是常被這樣被試著連線。也很困擾。
後來我將22port改到6622 5522 4422 ....反正就是一個不會影響的port。
這個問題就解決了。

不過防火那邊就得要去開通這個port就是了。

yui81424 iT邦新手 5 級 ‧ 2019-01-19 09:39:13 檢舉

其實如果防火牆那邊能夠確實聯繫到對方的網路外包,應該要改什麼都不是問題才對XD 還是謝謝建議~

所以重點還是遇到一個無法配合的網路商。這還真無解啊。

yui81424 iT邦新手 5 級 ‧ 2019-01-19 10:00:32 檢舉

我在想對方應該也不是很專業的網路商,可能只是客戶的硬體外包商,只會基本安裝...哈。
的確是無解,但是我們提供軟體,客戶只知道速度很慢要找我們,就算解釋了瓶頸不出在軟體上,提供LOG他們也看不懂...

0
stevekwok
iT邦新手 5 級 ‧ 2019-01-19 10:05:18

防火牆port 22的政策關掉snat 你的服務器就會收到外來的ip

我要發表回答

立即登入回答