SSH에서 너무 많은 로그인 시도 실패를 차단하는 iptables에 대한 규칙이 있습니다. 그러나 새 서버에서는 더 이상 작동하지 않는 것 같습니다. 10번 실패하더라도 즉시 로그인할 수 있습니다.
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -A INPUT -p tcp -m tcp --dport 53300 -m state --state NEW -m recent --set --name DEFAULT --rsource
iptables -A INPUT -p tcp -m tcp --dport 53300 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --name DEFAULT --rsource -j DROP
iptables -A INPUT -p tcp -m tcp --dport 53300 -j ACCEPT
sudo iptables -L -v
Chain INPUT (policy ACCEPT 17 packets, 796 bytes)
pkts bytes target prot opt in out source destination
2 120 tcp -- any any anywhere anywhere tcp dpt:53300 state NEW recent: SET name: DEFAULT side: source mask: 255.255.255.255
0 0 DROP tcp -- any any anywhere anywhere tcp dpt:53300 state NEW recent: UPDATE seconds: 60 hit_count: 4 name: DEFAULT side: source mask: 255.255.255.255
42 6906 ACCEPT tcp -- any any anywhere anywhere tcp dpt:53300
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 59 packets, 6974 bytes)
pkts bytes target prot opt in out source destination
(53300은 내 SSH 서버의 기본 포트가 아닙니다)
iptables가 예상대로 작동하지 않는 원인은 무엇입니까? 우분투 20.04,iptables 1.8.4
답변1
실제로 작동한다.
간단히 말해서, 저는 비밀번호 시도 횟수를 세고 있으며 hit_count
여기서 실제로 계산되는 것은 비밀번호 철자를 너무 많이 틀렸기 때문에 다시 연결을 시작해야 하는 시간입니다(이것은 다시 /etc/ssh/sshd_config
에서 구성 가능 합니다 MaxAuthTries
).