며칠 전 SSH를 통해 내 우분투 호스트에 CSF를 설치했습니다. 모든 것이 잘 작동하는 것 같았고 몇 시간 동안 그걸 가지고 놀 수있는 기회가있었습니다. 어떻게 내가 포트를 닫고 열 었는지 알아 냈어. 모든 것이 잘 작동하는 것처럼 보였습니다.TCP_IN에서 포트를 제거해도 CSF에서 외부 트래픽을 차단하지 않습니다.
오늘 저는 3306 mysql 포트에 대한 제한을 만들고 특정 IP 주소에만 액세스를 허용하려고했습니다. csf.conf의 TCP_IN 및 TCP_OUT 행에서 제거되었는지 확인하고 csf.allow에 삽입했는지 확인하여이 작업을 수행했습니다.
nmap을 사용하여 포트를 검색 할 때 포트가 열려있는 것처럼 보입니다. 추가 디버깅을 한 후 현재 csf.conf 및 csf.allow 파일에서 변경 한 사항은 포트 가용성에 아무런 영향을 미치지 않는다는 것을 알았습니다.
나는 ufw 방화벽, iptables 및 csf 사이에 몇 가지 문제가있을 수 있으므로 ufw 방화벽을 중지하고 모든 iptables 규칙을 삭제하고 기본값으로 설정한다는 것을 알아 냈습니다.
:~$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
:~$ sudo service ufw status
ufw stop/waiting
그리고 지금 난 그냥 플러시는 중지 및 CSF 방화벽 시작 : 그것은 sudo는의 iptables -L 것 같아 다시 시작 후 뇌척수액 -f, 뇌척수액 -x, CSF -e
을 출력 거대한을 것이다 어디에서나 소스를 어디서나 목적지로 갖는 규칙 목록. 나는 이전의 경험이 없으므로 민감한 정보를 추출 할 수 있는지 잘 모르겠지만 그것에 대해 읽은 후에는 내 상황에 맞지 않다고 생각했습니다.
한편 csf -L에는 다른 출력이 있습니다. 대부분의 출발지 및 목적지 IP는 0.0.0.0/0입니다. csf -L 출력에서 추출한 것은 INVALID Chain이 있다는 것입니다.
Chain INVALID (2 references)
num pkts bytes target prot opt in out source destination
1 0 0 INVDROP all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID
2 0 0 INVDROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x3F/0x00
3 0 0 INVDROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x3F/0x3F
4 0 0 INVDROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x03/0x03
5 0 0 INVDROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x06/0x06
6 0 0 INVDROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x05/0x05
7 0 0 INVDROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x11/0x01
8 0 0 INVDROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x18/0x08
9 0 0 INVDROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x30/0x20
10 0 0 INVDROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:!0x17/0x02 ctstate NEW
및
Chain ALLOWIN (1 references)
num pkts bytes target prot opt in out source destination
1 210 10680 ACCEPT all -- !lo * [mysship] 0.0.0.0/0
Chain ALLOWOUT (1 references)
num pkts bytes target prot opt in out source destination
1 295 41404 ACCEPT all -- * !lo 0.0.0.0/0 [mysship]
MYSSHIP 내가이 csf.allow에 넣어 것 또한 SSH 포트가 csf.conf TCP_IN, TCP_OUT 목록에 있습니다 SSH를 사용하여 연결하는로부터 IP입니다 . 당신이 원하는 @
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
당신은 (소스) -s와 IP를 추가하거나 -d :
iptables 명령을 사용하여 수락 규칙을 변경하는 것에 대해 이야기하고 있습니까? 나는 CSF 방화벽을 사용하고 있었다. –