如何維護SSH安全

2022-02-03 12:33:25 字數 2136 閱讀 3246

遇到兩次,一次是公司伺服器搭建好後,有人嘗試ssh暴力破解,auth.log不停出現錯誤提示

還有買的公尺國vps,很榮幸地遭到來自波蘭的ssh破解嘗試

不得不重視ssh的安全

方法:修改sshd_config的預設配置。

- 禁用root遠端登入

# vi /etc/ssh/sshd_config

permitrootlogin no

- 僅使用ssh 協議2

protocol 2

- 禁用基於主機的身份認證

hostbasedauthentication no

- 禁用使用者的rhost檔案

ignorerhosts yes

- 將ssh監聽繫結到特定埠

- 禁用空密碼

permitemptypasswords no

- 增加日誌的詳細粒度

- loglevel debug

使用iptables控制

-a input -i eth0 -p tcp -m tcp --dport 22 -m state --state new -m recent --update --seconds 60 --hitcount 4 --name default --rsource -j drop

-a input -i eth0 -p tcp -m tcp --dport 22 -m state --state new -m recent --set --name default --rsource

60s內輸錯四次密碼的ip禁止登入

注:關於iptables中的模組,檢視:

root@silee:/proc/net/xt_recent# cat /proc/net/ip_tables_matches 

state

recent

udplite

udptcp

icmp

其中tcp/udp/icmp這些模組在指定-p(protocol) 時候就預設使用了。

比較新鮮但又很有用的是state和recent模組

state模組:

引數有一下幾種:invalid,established,related,new

invalid:對於不能識別的包,為invalid,其中包括icmp errors,running out of memory

established:指已建立的連建並且已經有了雙向發包

new:指新發起的乙個連線,或者新建立的連線但兩個方向都沒有發包

related,指新發起的乙個鏈結,但它與已經存在的乙個連線有關,比如ftp 資料傳輸,或者icmp error、

recent模組包含的引數

--name 指定生成的列表檔案使用的名稱,不指定用default

--set 新增源位址到列表檔案,如果列表檔案中已經存在了該ip,它會更新已存的條目

--rsource匹配recent列表檔案中的源位址,這是預設選項

--rdest匹配recent列表中的目的位址

--rcheck 檢查源位址是不是在位址列表中

--update如果匹配上位址,則更新「最新出現」的時間戳

--remove檢查源位址是不是在當前的列表檔案中,如果是,刪除並返回true,否則,返回false

--seconds 與--rcheck或--update配合使用,增加匹配限制條件,表明僅匹配在列表中,且給定時間出現的位址

--hitcount 必須與--rcheck 或--update匹配使用,表明在列表中,且命中數大於等於給定值,也可與--seconds一起使用。

寫ssh路由策略的思路

1.控制input chain

2.對於input鏈預設為accept的情況:a檢查recent檔案列表看最近給定1分鐘內嘗試次數是不是達到了4次,如果是丟棄,如果不是,匹配下一條規則,將該ip資訊記錄到default檔案中

iptables -a input -p tcp --dport 22 -i eth0 -m state --state new -m recent --seconds 60 --hitcount 4 -j drop

iptables -a input -p tcp --dport 22 -i eth0 -m state --state new -m recent --set 

SSH如何保證通訊安全

ssh的通訊步驟主要包括建立加密通道 認證和通訊三個階段。分析下來風險主要是在建立加密通道階段,分析和應對總結如下。階段一 協商加密通訊連線。即通過非對稱加密方式先在client和server之間安全的協商對稱金鑰 即會話金鑰 1 雙方協商ssh版本 採用的非對稱加密演算法等資訊 2 server傳...

如何做伺服器安全維護?

伺服器的維護就好比 守天下 稍亂分寸即會使整個網路陷入癱瘓,作為網路管理的一員,筆者在實際維護工作中碰到過不少問題,也因此稍有些經歷。維護可以分為硬體維護和軟體維護兩種,而同時,維護伺服器又需要對伺服器的硬體系統 作業系統 應用軟體系統有比較深入的認識。硬體維護篇 硬體維護跟軟體具有同等重要的地位。...

Ubuntu遠端ssh維護teamviewer

wgetsudo dpkg i teamviewer 15.9.4 amd64.deb解決依賴問題 sudo apt get install fsudo vim opt teamviewer config global.conf開啟後在末尾新增以下內容,第 一 二行表示接受安裝協議,第三行表示允許t...