Ubuntu 16.0.4가 설치된 VPS가 있습니다. SSH를 통해 연결할 때마다 다음에 연결을 시도할 때뿐만 아니라 다른 종류의 연결 시도(http, git, ping, 포트 8080)에서도 시간 초과 오류가 발생합니다.
IP가 차단됐다는 의미인 것 같아요. 하지만 시스템에는 그런 흔적이 없었습니다. 전체 "ufw"를 중지해도 아무런 효과가 없습니다.
마지막으로 시스템 로그를 확인하고 다음과 같이 tcpdump를 실행했습니다.
tcpdump -i ens3 icmp and icmp[icmptype]=icmpecho
그런 다음 차단된 IP에서 ping을 시도했지만 결과가 없습니다. VPS 제공업체 서버에서 정기적으로 핑을 보내는 것을 볼 수 있으며, 차단되지 않은 장치에서 핑을 할 때도 나타납니다.
이는 내가 구매한 VPS 외부에 문제가 있다는 뜻인가요? 아니면 차단 가능성을 찾을 수 있는 다른 곳이 있나요?
Ubuntu 설치는 내가 확인한 "ufw" 외에는 다른 방화벽이 설치되어 있지 않아 거의 깨끗합니다.
답변1
tcpdump
로컬 포트 필터링에 도달하기 전에 실제로 패킷을 보는 것. tcpdump에 들어오는 패킷이 표시되지만 수신 중인 애플리케이션에 도달하지 못하는 경우 이는 패킷이 방화벽에 의해 삭제되거나 수정되고 있음을 의미합니다. 그러나 tcpdump를 통해 들어오는 패킷이 전혀 표시되지 않으면 패킷이 컴퓨터에 도달하기 전에 삭제되었음을 의미합니다.
다음은 도움이 되지 않지만 컴퓨터에서 패킷이 삭제되는지 조사하는 데 도움이 되는 Linux 방화벽에 대한 추가 정보입니다.
Ufw는 방화벽 조작 도구입니다. 방화벽 메커니즘은웹 필터. 다음 명령을 사용하여 netfilter 규칙을 나열할 수 있습니다.iptables
주문하다. 완전한 메커니즘에는 다음이 포함됩니다.많은 부분하지만 포트 차단을 조사하려면 INPUT 체인만 보면 됩니다.
iptables -nvxL INPUT
각 행은 규칙을 나타내며 규칙은 패킷(예: 패킷)에 대한 결정이 내려질 때까지 순차적으로 실행 ACCEPT
됩니다 DROP
. 체인은 다른 체인을 "서브루틴"으로 참조할 수 있습니다. 결정을 내릴 규칙이 없으면 체인의 정책이 적용됩니다. iptables -nvxL
인수 없이 모든 체인을 나열합니다. 각 규칙 옆에는 패킷 수가 표시되며, 패킷을 보내고 어디에서 손실되었는지 알고 싶다면 전후 카운터 값을 확인하는 것이 저렴한 방법인 경우가 많습니다.