나는 많은 게임 서버가 포함된 Debian 6 서버를 가지고 있는데 불행하게도 이 서버에 푹 빠졌습니다. 서버를 안전하게 보호하기 위해 강력한 방화벽을 구축하고 싶습니다.
답변1
다음 iptables 규칙을 사용하십시오.
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A INPUT -j REJECT
첫 번째 규칙은 연결 추적 모듈에서 할당한 상태를 확인하여 요청된 인바운드 트래픽을 수락합니다. 상태가 다음과 같은 경우 패킷이 허용됩니다.
ESTABLISHED(방화벽이 이전에 허용하기로 결정한 기존 연결의 일부를 구성하는 패킷) 또는 RELATED(새 연결을 시작하지만 기존 연결과 관련된 것으로 알려진 패킷).
ICMP(두 번째 규칙)는 모든 호스트가 지원해야 하는 인터넷 프로토콜의 필수 부분이기 때문에 여기서는 특별한 경우입니다. ICMP를 차단하면 약간의 보안상의 이점이 있지만 대부분의 경우 잠재적인 공격자보다는 합법적인 사용자와 관리자에게 더 큰 불편을 초래할 수 있습니다. 따라서 여기에 설명된 방법은 트래픽이 원치 않는 경우에도 인바운드 ICMP 트래픽을 허용합니다.
세 번째 규칙은 루프백 인터페이스의 모든 트래픽을 허용합니다. 루프백 인터페이스를 통해 수신된 모든 트래픽은 로컬 시스템에서 시작되어야 하므로 (어쨌든) 로컬 시스템에서 요청해야 합니다.