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 ''
gedit
Linia 83:
<source lang="bash">
### BEGIN INIT INFO
Linia 101:
<source lang="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
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.
|