systemd (ArchLinux)에서 자동으로 iptables 규칙을 시작하는 방법

일부 사람들은 보안과 관련하여 편집증이라고 생각하기 때문에 방화벽을 사용해야합니다. 내 노트북에는 매우 중요한 민감한 정보가 있습니다. 방화벽은 자물쇠와 같은 PC 용이기 때문에 안전한 우리는 또한 컴퓨터에 이메일 액세스 암호, 은행 계좌 데이터 (누군가), 서버 정보 및 신체 생활에 직접적인 영향을 미치는 기타 가상 정보를 저장한다는 사실을 기억합니다. 의심 할 여지없이 네트워크를 통해 컴퓨터에 적절한 보안없이 구성된 방화벽은 권장되지 않습니다.

얼마 전에 iptables 규칙을 시작하는 방법을 보여 드렸습니다. Debian과 같은 배포판에서 자동으로, Ubuntu 또는 /etc/rc.local 파일을 포함하는 다른 파일이 있지만 ArchLinux에서는 systemd를 사용하므로이 파일이 존재하지 않습니다.

그래서, 내가 원하는대로 구성 할 iptables에 대해 찾은 방법은 iptables를 구성하는 bash 스크립트를 만든 다음 /usr/lib/systemd/system/iptables.service 파일을 수정하는 것입니다 ...하지만 들어가 보겠습니다. 부품 🙂

1. 우리는해야한다. bash 스크립트 생성 다음과 같은 iptables 규칙을 포함합니다. Bash + iptables 스크립트 예제

2. 스크립트를 만들고 규칙을 작성하고 실행 권한을 부여한 후 systemd iptables 서비스를 편집합니다.

다음 명령은 나와 같은 sudo를 사용하거나 루트 사용자와 직접 관리 권한으로 실행해야합니다.

sudo nano /usr/lib/systemd/system/iptables.service

우리는 다음과 같은 것을 보게 될 것입니다.

[단위] 설명 = 패킷 필터링 프레임 워크 [서비스] 유형 = oneshot ExecStart = / usr / bin / iptables-restore /etc/iptables/iptables.rules ExecReload = / usr / bin / iptables-restore /etc/iptables/iptables.rules ExecStop = / usr / lib / systemd / scripts / iptables-flush RemainAfterExit = yes [설치] WantedBy = multi-user.target

3. 이전에 만든 스크립트가 /home/myuser/script-iptables.sh에 있다고 가정하면 다음과 같이 열어 놓은 iptables.service 파일을 그대로 둡니다.

[단위] 설명 = 패킷 필터링 프레임 워크 [서비스] 유형 = oneshot ExecStart = / home / myuser / script-iptables.sh ExecReload = / home / myuser / script-iptables.sh ExecStop = / usr / lib / systemd / scripts / iptables -flush RemainAfterExit = yes [설치] WantedBy = multi-user.target

4. 그런 다음 iptables가 자동으로 시작되는지 확인해야합니다.

sudo systemctl enable iptables

5. 시작합니다.

sudo systemctl start iptables

6. 그리고 우리는 규칙을 확인할 수 있습니다.

sudo iptables -nL

이것은 (1) 나를 위해 iptables를 구성하는 내 자신의 bash 스크립트를 갖는 가장 간단한 방법 일뿐입니다. 또한 (2) 규칙이 자동으로 시작되고 마지막으로 (3) 스크립트 자체가 독립적이라는 것입니다. 내일 설치 한 데비안에서 사용하고 싶습니다 (예를 들어). 많이 재구성 할 필요가 없습니다.

어쨌든 유용하다고 생각하길 바랍니다 🙂

안부


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   엘리오타임3000

    흥미 롭군요….

  2.   사울

    iptables.rules 파일을 편집하는 것이 더 쉽지 않을 것입니다. 이미 sudo에 대한 루트 액세스 권한이 있다면 수정할 가치가 있습니다.

  3.   xphnx

    규칙을 실행하기 위해 업로드 한 스크립트를 활용하지만 약간 다른 방식으로 수행합니다.

    1- 서비스를 시작합니다 (아직 수행하지 않은 경우) :
    # systemctl enable iptables.service
    # systemctl start iptables.service

    2- 우리는 우리가 활성화 한 규칙을 봅니다 (아무것도 건드리지 않으면 모든 것이 열려 있다고 가정합니다) sudo iptables -nvL

    3- 원하는 규칙으로 변경하여 구성 스크립트를 시작합니다.
    # sh /home/miusuario/script-iptables.sh

    4- 활성 규칙이 어떻게 변경되었는지 살펴 보겠습니다.
    # iptables -nvL

    5- 향후 재부팅을 위해 새 iptables 구성을 저장합니다.
    # iptables-save > /etc/iptables/iptables.rules

    5b- 규칙을 변경하기 위해 /etc/iptables/iptables.rules 파일을 수동으로 편집하는 경우 구성을 다시로드해야합니다.
    # systemctl reload iptables

    적어도 저에게는 그렇게하는 것이 더 쉽습니다. 좀 더 그래픽적인 방식으로 설정을 관리하기 위해 bash 및 kdialog를 배우려고합니다. 나중에 나는 예를 들어 qtcreator로 좀 더 완전한 작업을하려고 노력할 것입니다. 예를 들어 우리가 구성하는 장비 (라우터, PC 등 ...)에 따라 여러 구성 스크립트를 사용하여 나오는지 확인할 수 있습니다.

  4.   사냥꾼

    댓글에 대한이 보안 문자는 버그 스트레이너입니다. 여러 번 시도하면 성 가실 수 있으므로 다른 것으로 변경하거나 업데이트하십시오.

    1.    엘라 브

      humanOS, Firefoxmanía ..에서 사용하는 것과 동일합니다. 아마도 캐시가있는 것입니다.

      1.    사냥꾼

        글쎄, 나는 더 이상 그 두 가지에 대해 언급하지 않습니다.

  5.   mj

    감사합니다,
    이것은 매우 유용한 주제입니다.
    의심 할 여지없이 우리 PC에 저장된 정보의 보안에 관심이있는 사람들을 위해; "Iptables"는 사용하기 위해 배워야하는 도구 중 하나입니다. 비록 그 자체의 중요성 때문에 배우는 것은 약간 복잡합니다.
    이메일 주소 "http://www.youtube.com/watch?v=Z6a-K_8FT_Y"를 공유 할 수 있기를 바랍니다. 놀랍게도 그것이 여기에 관한 것과 다른 것입니다. 하지만 어쨌든 GNU / Linux가 가지고있는 배포판 (ARCH, DEBIAN, SUSE 등)의 다양성 때문이라고 생각합니다. 어쨌든 배워야 할 것입니다.