Raspberry Pi Firewall?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Läuft auf dem Raspberry ein Webserver? Dann kannst Du dort einen Reverse Proxy aufsetzen, der auf die 10.8.8.10 zeigt. Der Port wäre sogar frei wählbar, Du kannst auch von Port 80 auf 10.8.8.10:8080 zeigen.

Die vHost-Konfiguration eines Apache müsste so aussehen:

<VirtualHost *:80>
    ServerAdmin email@domain.com
    ServerName subdomain.dyndns.com
    ProxyRequests off
    ProxyPass / http://10.8.8.10:8080
    ProxyPassReverse / http://10.8.8.10:8080
CustomLog ${APACHE_LOG_DIR}/access.log vhost_combined
ErrorLog ${APACHE_LOG_DIR}/error.log
</VirtualHost>

Alternativ wäre möglich, in iptables ein NAT zu konfigurieren:

sudo iptables -t nat -A PREROUTING -d 10.7.7.49/32 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.8.8.10:8080

--dport 80 musst Du Deinen Begebenheiten entsprechend anpassen. Ich habe das jetzt nicht getestet, aber so sollte es funktionieren.

PaulKaulSaul 
Fragesteller
 29.07.2021, 22:37

Hallo franzhartwig,

genau, es läuft ein Apache2 drauf. Der lauscht schon am Port 80. Den Client habe ich mit 8080 verbunden. Habe mich für die iptables entschieden. Funktioniert prima.

Vielen dank für deine schnelle Hilfe.

Beste Grüße,

Paul

1
franzhartwig  29.07.2021, 23:08
@PaulKaulSaul
genau, es läuft ein Apache2 drauf. Der lauscht schon am Port 80

Das wäre kein Hindernis, weil die vHosts über den Namen unterschieden werden. Ich habe hier einen Apache laufen, der auf Port 80 und 443 lauscht. Dort laufen knapp 30 vHosts, die teilweise als Reverse Proxy auf andere Server und Docker-Container auf die unterschiedlichsten Ports weiterreichen. Über den Reverse Proxy habe ich den Vorteil, immer über Port 443 zuzugreifen und so keiner Firewall-Regel zum Opfer zu fallen. Außerdem bieten die Server teilweise kein TLS, was durch den Reverse Proxy erledigt wird.

0

Klingt als möchtest du ein destination NAT.

Könntest auch n Reverse Proxy auf dem Pi selber machen eventuell.

Neuer als iptables wäre nftables, ich finds auch übersichtlicher und einfacher. Iptables Befehle sind oft unübersichtlich, bei nftables hat man relativ verständliche Befehle und Config files. Ich hab damit schon ein paar Sachen gemacht und fand es relativ angenehm.

Es gibt auch Tools die Firewall Regeln vereinfachen sollen wie firewalld oder ferm, aber ausprobiert habe ich das noch nicht.

Wenn du Nftables nutzen möchtest findest du hier infos über NATing:

https://wiki.nftables.org/wiki-nftables/index.php/Performing_Network_Address_Translation_(NAT)#Destination_NAT

sudo apt install nftables
sudo nano /etc/nftables.conf # Regeln in dieses File eintragen
systemctl enable --now nftables.service

Beachte aber, dass der letzte Befehl potenziell dazu führen könnte das du dich selber aussperrst wenn du die Firewall Regeln falsch schreibst oder es auch Probleme mit anderen Programmen verursachen könnte.

Nftables und IPtables sind by default übrigens nicht persistent, also wenn du über die commandline Regeln hinzufügst sind die nach einem neustart weg. Das config file und der Systemd service sind dafür um die Regeln immer automatisch zu laden.

Woher ich das weiß:Berufserfahrung – Privat und beruflich damit zu tun
PaulKaulSaul 
Fragesteller
 29.07.2021, 22:39

Hallo BeamerBen,

danke für deine Unterstützung. Du hast recht, iptables sind nicht wirklich übersichtlich.

Beste Grüße,

Paul

1

Reverse Proxy von http://meine.domain:8080 zu 10.8.8.10:8080. Normalerweise eigentlich von http://meine.domain zu 10.8.8.10:8080

Woher ich das weiß:Studium / Ausbildung – Studium in theoretischer Informatik (Master)
PaulKaulSaul 
Fragesteller
 29.07.2021, 22:40

Hallo GrakaVII,

du hast natürlich absolut recht. So würde man es richtig machen.

Grüße,

Paul

0