Debian 방화벽 설치 보안 모범 사례

Debian 방화벽 설치 보안 모범 사례

2022-06-03 last update

6 minutes reading Debian

제한적 및 라이센스 방화벽 정책


방화벽을 관리하는 데 필요한 문법 외에 방화벽의 임무를 정의하여 어떤 전략을 실시할지 결정해야 한다.방화벽 행위를 정의하고 이를 실현하는 두 가지 주요 전략이 있다.
특정 패킷, 소스, 목적지, 포트 등을 수락하거나 거부하기 위해 규칙을 추가하면 이러한 규칙은 방화벽 규칙에 분류되지 않은 데이터나 패킷의 상황을 결정합니다.
아주 간단한 예는 IP x.x.x.x가 화이트리스트인지 블랙리스트인지 정의할 때 나머지는 어떻게 됩니까?
IP x.x.x.x의 트래픽을 화이트리스트에 올린다고 가정합니다.
라이센스 정책은 x.x.x.x가 아닌 모든 IP 주소를 연결할 수 있기 때문에 y.y.y.y 또는 z.z.z를 연결할 수 있습니다.제한 정책은 x.x.x.x 주소가 아닌 모든 데이터를 거부합니다.
간단히 말하면 방화벽에 따라 그 규칙에 정의되지 않은 모든 데이터나 데이터 패키지가 통과할 수 없다는 것은 제한이 있다.규칙에 정의되지 않은 모든 데이터나 패키지를 허용하는 방화벽은 허용됩니다.
전송과 전송 데이터에 대해 정책은 다를 수 있다. 많은 사용자들은 전송 데이터에 대해 제한적인 정책을 사용하고 전송 데이터에 대해 허용적인 정책을 유지하는 경향이 있다. 이것은 보호된 장치의 사용 상황에 달려 있다.

Iptables 및 UFW


비록 Iptables는 사용자가 내부 핵 방화벽 규칙을 설정하는 전단이고 UFW는 Iptables를 설정하는 전단이지만 그들은 진정한 경쟁 상대가 아니다. 사실상 UFW는 불친절한 문법을 배우지 않고 사용자 정의 방화벽을 신속하게 설정하는 능력을 가져왔지만 일부 규칙은 UFW 응용, 즉 특정 공격을 방지하는 특정 규칙을 통과할 수 없다.
이 강좌는 UFW에 국한되지 않는 가장 좋은 방화벽 실천의 규칙을 보여 줍니다.
UFW가 설치되지 않은 경우 다음 프로그램을 실행하여 설치합니다.
# apt install ufw

UFW 시작:


먼저 다음 명령을 실행하여 시작할 때 방화벽을 사용합니다.
# sudo ufw enable

주의: 필요하면 같은 문법으로 방화벽을 비활성화할 수 있습니다. "enable"을 "disable"(sudo ufw disable) 로 바꿀 수 있습니다.
언제든지 다음 명령을 실행하여 방화벽 상태를 자세히 확인할 수 있습니다.
# sudo ufw status verbose

출력에서 보듯이 전송된 데이터의 기본 정책은 제한적이며, 전송된 데이터의 기본 정책은 허용됩니다. "disabled (routed)"열은 루트와 전송을 사용하지 않습니다.
대부분의 장치에서 제한 정책은 보안에 가장 적합한 방화벽 실천의 일부라고 생각합니다. 따라서 모든 유량을 먼저 거부합니다. 우리는 받아들일 수 있는 유량을 제외하고 제한 방화벽으로 정의합니다.
# sudo ufw default deny incoming

보시다시피 방화벽은 클라이언트에 연결할 때 고장나지 않도록 규칙을 업데이트하라고 경고합니다.Iptables에서 동일한 작업을 수행하는 방법은 다음과 같습니다.
# iptables -A INPUT -j DROP
UFW의 거부 규칙은 연결을 삭제하고 다른 측에 연결이 거부되었다는 것을 알리지 않습니다. 연결이 거부되었다는 것을 다른 측에 알리려면 규칙 거부를 사용할 수 있습니다.
# sudo ufw default reject incoming

모든 전송 트래픽을 차단하는 모든 조건에 독립적이면 우리가 받아들이고자 하는 특정한 내용을 받아들이기 위한 구분 규칙을 설정합니다. 예를 들어 웹 서버를 설정하고 웹 서버에서 온 모든 요청을 받아들이려면 포트 80에서 실행하십시오.
# sudo ufw allow 80

포트 번호나 이름을 통해 서비스를 지정할 수 있습니다. 예를 들어 위에서 설명한 prot 80이나 이름 http를 사용할 수 있습니다.

서비스 외에도 원본을 정의할 수 있습니다. 예를 들어 원본 IP를 제외한 모든 전송 연결을 거부하거나 거부할 수 있습니다.
# sudo ufw allow from 

UFW로 변환하는 일반적인 iptables 규칙:


UFW를 사용하여 rate\u limit를 제한하는 것은 매우 쉽습니다. 이것은 호스트마다 설정할 수 있는 수량을 제한함으로써 남용을 방지할 수 있습니다. UFW를 사용하여 ssh를 제한하는 속도는 다음과 같습니다.
# sudo ufw limit from any  port 22
# sudo ufw limit ssh/tcp

UFW가 다음 작업을 단순화하는 방법을 알아보려면 위의 UFW 명령을 동일한 명령으로 번역합니다.
# sudo iptables -A ufw-user-input -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW
-m recent --set --name DEFAULT --mask 255.255.255.0 --rsource

#sudo iptables -A ufw-user-input -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW
-m recent --update --seconds 30 --hitcount 6 --name DEFAULT --mask 255.255.255.255
--rsource -j ufw-user-limit

# sudo iptables -A ufw-user-input -p tcp -m tcp --dport 22 -j ufw-user-limit-accept
위의 UFW 규칙은 다음과 같습니다.
나는 당신이 이 데비안 Firewall Setup Best Practices for Security에 관한 강좌가 매우 유용하다는 것을 발견하기를 바랍니다.