Com iniciar regles de iptables automàticament en systemd (ArchLinux)

Sóc considerat per alguns com un paranoic quan de seguretat es tracta, és per això que l'ús d'un tallafocs m'és imprescindible. En el meu portàtil tinc informació sensible, d'alta importància per a mi; ia causa de que el tallafocs és per a la PC com un pany o caixa forta per a nosaltres, a més recordant que a l'ordinador guardem passwords d'accés a correus electrònics, dades de comptes bancaris (qui les tingui), informació de servidors, i la resta d'informació virtual que ens influeix directament en la nostra vida física ... bé, sense cap dubte caminar per la xarxa sense un tallafocs configurat, sense la deguda seguretat en el nostre ordinador no és una cosa que es recomani.

Temps enrere els vaig mostrar com iniciar regles d'iptables automàticament en distros com Debian, Ubuntu o altres que continguin l'arxiu /etc/rc.local, no obstant en ArchLinux com fa servir systemd aquest arxiu no existeix.

Llavors, la forma que vaig trobar perquè el meu iptables es configuri com jo desitjo és crear un script en bash que configuri iptables, i després modificar l'arxiu /usr/lib/systemd/system/iptables.service ... però, anem per parts 🙂

1. hem crear un script bash que contingui les nostres regles d'iptables, una mena de això: Exemple de script bash + iptables

2. Després d'haver creat l'script, escrit nostres regles en ell i donar-li permisos d'execució passem a editar el servei d'iptables de systemd:

El següent comanda ha de ser executat amb permisos d'administració, bé usant suo com jo o directament amb l'usuari root

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

Ens trobarem amb alguna cosa com això:

[Unit] Descripció = Packet Filtering Framework [Service] Type = 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 [Install] WantedBy = multi-user.target

3. Suposant que l'script que vam crear prèviament estigui ubicat a /home/miusuario/script-iptables.sh llavors deixarem l'arxiu iptables.service que tenim obert de la següent manera:

[Unit] Descripció = Packet Filtering Framework [Service] Type = oneshot ExecStart = / home / elmeuusuari / script-iptables.sh ExecReload = / home / elmeuusuari / script-iptables.sh ExecStop = / usr / lib / systemd / scripts / iptables -flush RemainAfterExit = yes [Install] WantedBy = multi-user.target

4. Després hem d'assegurar que iptables s'iniciï automàticament:

sudo systemctl enable iptables

5. El vam iniciar:

sudo systemctl start iptables

6. I podem verificar les regles:

sudo iptables -nL

Això és només la forma més simple que vaig trobar de (1) tenir el meu propi script en bash que em configuri iptables, també (2) que les regles s'iniciïn automàticament i finalment (3) que l'script mateix fos alguna cosa independent, és a dir , que si demà desig usar-lo en un Debian que em instal (per exemple) no tornar a executar molt.

En fi, espero els resulti d'utilitat 🙂

Salutacions


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   eliotime3000 va dir

    Interessant ....

  2.   Saül va dir

    No hauria estat més fàcil editar el fitxer iptables.rules, si ja es té accés de root amb sudo valdria la pena modificar-lo, no?

  3.   xphnx va dir

    Jo ho faig d'una manera una mica diferent, encara que aprofitant també l'script que has pujat per llançar les regles.

    1- Vam llançar el servei (si encara no ho hem fet):
    # systemctl enable iptables.service
    # systemctl start iptables.service

    2- Veiem quines regles tenim actives (suposem que esta tot obert si no hem tocat res) sudo iptables -nvL

    3- Canviem a les regles que volem, llançant l'script de configuració:
    # sh /home/miusuario/script-iptables.sh

    4- Veiem com han canviat les regles actives:
    # iptables -nvL

    5- Guardem la nova configuració d'iptables per a futurs reinicis:
    # iptables-save > /etc/iptables/iptables.rules

    5b- Si vam editar a mà el fitxer /etc/iptables/iptables.rules per canviar les regles, hem de recarregar la configuració:
    # systemctl reload iptables

    A el menys per a mi així resulta més fàcil. Estic intentant aprendre alguna cosa de bash i kdialog per gestionar les configuracions d'una forma mes gràfica. Posteriorment intentaré fer alguna cosa més complet amb qtcreator per exemple, per poder tenir diversos scripts de configuració en funció de l'equip que estiguem configurant (router, PC, etc ...) a veure si em surt.

  4.   caçador va dir

    Aquest captcha per als comentaris és un colador de bugs, si us plau canviïn a un altre o s'actualitzin aquest perquè es torna molest als diversos intents.

    1.    ILAV va dir

      És el mateix usat per humans, Firefoxmanía .. potser és una cosa amb la memòria cau.

      1.    caçador va dir

        Doncs jo ja ni comento en aquests dos.

  5.   mj va dir

    Salutacions,
    Aquest és un tema d'extrema utilitat.
    Sens dubte per als que interessa la seguretat de la informació emmagatzemada en la nostra PC; «Iptables» és una de les eines que s'ha d'aprendre a fer servir; encara que, per la seva pròpia importància sigui una mica complicat d'aprendre.
    Vaig trobar aquest vídeo sobre el tema de el qual espero em permetin compartir la seva adreça electrònica «http://www.youtube.com/watch?v=Z6a-K_8FT_Y»; la meva sorpresa va ser, que és una cosa diferent del que aquí es tracta. Però en fi, suposo que serà per la diversitat de distribucions que posseeix GNU / Linux (ARCH, DEBIAN, SUSE, etc.), caldrà aprendre de totes maneres.