Ports öffnen per PHP-Backend
Dafür benötigen wir die entsprechenden iptables-Regeln und einen separaten Benutzer der Webserverrechte hat. Ich habe also per ISPConfig einen neuen Benutzer für diesen Fall angelegt.
Danach mit sudo visudo
benutzername ALL=NOPASSWD: /sbin/iptables
eintragen um dem Benutzer die Rechte zu erteilen iptables aufzurufen.
- isp_port_oeffnen.php
<?php echo 'ISP Config Port für IP-Adresse: ' . $_SERVER['REMOTE_ADDR'] . ' geöffnet'; $command = 'sudo /sbin/iptables -A open -p tcp -s ' . $_SERVER['REMOTE_ADDR'] . ' --dport 8085 -j ACCEPT'; exec ($command);
- isp_port_schliessen.php
<?php echo 'ISP Config Port für IP-Adresse: ' . $_SERVER['REMOTE_ADDR'] . ' geschlossen'; $command = 'sudo /sbin/iptables -A open -p tcp -s ' . $_SERVER['REMOTE_ADDR'] . ' --dport 8085 -j ACCEPT'; exec ($command);