Debian - uniwersalna instalacja/Konfigurowanie iptables: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Nie podano opisu zmian
Dodanie skryptu firewall dla systemd, ciężko było ;)
Linia 76:
Tworzymy skrypt firewalla, który będzie się uruchamiał wraz ze startem naszego komputera.
 
Uruchamiamy edytor tekstu ''geditGedit''(może to być dowolny edytor jak: nano,leafpad,mousepad), wpisując w terminalu
 
gedit
Linia 83:
 
<source lang="bash">
#!/bin/bash
 
### BEGIN INIT INFO
Linia 101:
<source lang="bash">
#!/bin/bash
 
### BEGIN INIT INFO
Linia 145:
</source>
 
Następnie zapisujemy nasz plik nadając mu nazwę firewall w katalogu ''Dokumenty''
 
Teraz uruchamiamy ''Terminal z prawami roota'' - zostaniemy poproszeni o hasło
Linia 315:
</source>
 
==Tworzenie skryptu firewalla dla SystemDSystemd==
 
Możemy utworzyć skrypt firewalla dla systemd wykorzystując tym razem sam systemd.
 
Tworzymy skrypt firewalla, który będzie się uruchamiał wraz ze startem naszego komputera.
 
Uruchamiamy edytor tekstu ''Gedit'', wpisując w terminalu
 
gedit
 
Tam wklejamy przykładowy skrypt firewalla - możesz użyć innego lecz pamiętaj do niego dołączyć na początku ten kod
 
<source lang="bash">
#!/bin/bash
 
### BEGIN INIT INFO
# Provides: firewall.sh
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
 
</source>
 
Przykładowa konfiguracja iptables blokująca połączenia przychodzące
 
<source lang="bash">
#!/bin/bash
 
### BEGIN INIT INFO
# Provides: firewall
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
 
# Czyszczenie reguł
 
iptables -F
 
iptables -X
 
# Polityka bezpieczeństwa
 
iptables -P INPUT DROP
 
iptables -P FORWARD DROP
 
iptables -P OUTPUT DROP
 
# Reguły dla pętli zwrotnej
 
iptables -A INPUT -i lo -j ACCEPT
 
iptables -A FORWARD -o lo -j ACCEPT
 
iptables -A OUTPUT -o lo -j ACCEPT
 
# Reguły dla łańcucha wejściowego
 
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
 
# Reguły dla łańcucha wyjściowego
 
iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 
</source>
 
Następnie zapisujemy nasz plik nadając mu nazwę firewall w katalogu ''Dokumenty''
 
Teraz uruchamiamy ''Terminal z prawami roota'' - zostaniemy poproszeni o hasło
 
root@debian-linux:/home/linux#
 
W terminalu musimy przejść do katalogu ''Dokumenty''
 
wpisujemy
 
ls
 
Teraz widzimy nasze katalogi
 
root@debian-linux:/home/linux# ls
Dokumenty Muzyka Obrazy Pobrane Publiczny Pulpit Szablony Wideo
 
Wpisujemy
 
cd Dokumenty
 
Widzimy że jesteśmy w katalogu ''Dokumenty''
 
root@debian-linux:/home/linux/Dokumenty#
 
Wpisujemy ponownie ls by zobaczyć czy tam jest nasz plik firewall
 
ls
 
Jeśli widzimy plik firewall to przystępujemy do następnej czynności.Kopiujemy nasz plik firewall do katalogu ''/etc/systemd/system/'.
 
W terminalu wpisujemy
 
cp firewall /etc/systemd/system/
 
Następnie jeśli nie ma błędów nadajemy naszemu plikowi firewall prawa uruchamiania
 
chmod 755 /etc/systemd/system/firewall
 
{{Infobox|chmod (ang. change mode - zmiana atrybutu) — polecenie zmiany zezwoleń dostępu do plików w systemach uniksowych.}}
 
Następnie tworzy usługę firewall.service w terminalu wpisujemy
 
gedit /etc/systemd/system/firewall.service
 
W edytorze Gedit wyświetli nam się pusty dokument tam wklejamy skrypt usługi dla systemud.
 
<source lang="bash">
[Unit]
Description=firewall
After=network.target
 
[Service]
RemainAfterExit=yes
ExecStart=/etc/systemd/system/firewall start
ExecStop=/etc/systemd/system/firewall stop
 
[Install]
WantedBy=multi-user.target
 
</source>
 
Następnie zapisujemy plik. Jesteśmy znów w terminalu i uruchamiamy usługę firewall.service wpisując
 
systemctl enable firewall.service
 
Następnie uruchomiamy firewalla wpisując
 
systemctl start firewall.service
 
Następnie sprawdzamy czy działają nasze reguły w iptables wpisując
 
iptables -L
 
Powinny wyświetlić się nam nasze reguły. Ponadto możemy sprawdzić status firewalla wpisując
 
systemctl status firewall.service
 
Powinniśmy otrzymać mniej więcej komunikat
 
<source lang="bash">
firewall.service - firewall
Loaded: loaded (/etc/systemd/system/firewall.service; enabled; vendor preset:
'''Active: active (exited)''' since Thu 2017-03-16 16:24:03 CET; 1min 44s ago
Main PID: 525 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 4915)
CGroup: /system.slice/firewall.service
 
'''mar 16 16:24:03 debian systemd[1]: Started firewall.'''
 
</source>
 
Komunikaty '''Active: active (exited)''' i '''mar 16 16:24:03 debian systemd[1]: Started firewall.''' oznaczają że usługa firewall.service działa prawidłowo.