Frage Wie kann ich den SSH-Zugang wiedergewinnen, nachdem ich von iptables ausgesperrt wurde?


TL: DR

Ich habe Änderungen an meiner iptables-Konfiguration vorgenommen und nun verweigert SSH alle Verbindungen. Kann ich das beheben, ohne mein Hosting-Unternehmen zu kontaktieren?


Lange Version

Ok, das ist höchstwahrscheinlich zu 100% meine eigene Schuld ...

In Vorbereitung auf den Umzug einer Website auf einen dedizierten Server, haben wir einen neuen gehosteten Rechner mit CentOS 5.6. Die Maschine hat iptables ziemlich gesperrt, nur ssh (22) und http (80) erlaubt, aber wir brauchten auch FTP über Port 20 und 21.

Heute Nachmittag habe ich Zeilen zu meinen iptables hinzugefügt, um eingehende Verbindungen zu den Ports 20 und 21 zu akzeptieren. Das hat zunächst nicht funktioniert, weil es eine reject allLinie über den Linien, die ich für ftp hinzufügte. Also habe ich diese Zeile nach unten verschoben, gespeichert und neu gestartet iptables und ftp funktionierte.

2 Stunden später, wenn ich versuche, mich wieder zu verbinden, port 22: Connection refused Gleiches gilt für http.

Ich kann also nicht über SSH zum Server gelangen, kann ich das irgendwie beheben, ohne mich an meine Hosting-Firma zu wenden?


8
2017-08-12 18:47


Ursprung




Antworten:


Unglücklicherweise nicht. Es sei denn, Sie haben eine andere Management-Schnittstelle wie eine serielle Remote-Konsole, iDRAC, iLO, etc. Reichen Sie es ein, um Erfahrungen zu sammeln, und denken Sie daran, die Einstellungen zu testen, bevor Sie sich das nächste Mal abmelden;)


11
2017-08-12 18:55



Oder wenn Sie mit iptables experimentieren, stellen Sie sicher, dass Sie vorübergehend einen Cron-Job setzen, der den Regelsatz alle 15 Minuten zurücksetzt. - mailq
Lektion gelernt :) - Jan Henckens
Wie würden Sie den SSH-Port 22 mit iDRAC aktivieren? - terrid25
@ terrid25 Sie würden sich mit der seriellen Konsole anmelden, indem Sie auf den seriellen Port hören, auf den der iDRAC Zugriff hat. Sie können dann Iptables reparieren und auf Ihrem fröhlichen Weg sein. natürlich, wenn dein Out-of-Band-Zeug nicht mit der Remote-Konsole eingerichtet ist, bist du genauso festgefahren wie dein Freund ohne Remote-Management. - Michael Lowman


Angenommen, Sie können weiterhin mit dem Server kommunizieren und Sie können sich als root über ftp (unwahrscheinlich und normalerweise unklug) in eine nicht chrootierte (etc) Umgebung einloggen:

Legen Sie eine Datei in /etc/cron.d mit diesen Inhalten:

* * * * * root /sbin/service iptables stop 

6
2017-08-12 22:47



Dies hat mir geholfen, weil ich remote ein Wiederherstellungsabbild verbinden und auf das Dateisystem zugreifen kann. - DanFromGermany


Nach diesen Anleitung, Sie können auch anhängen:

scripts2/doautofixer?autofix=iptablesflush

... zu Ihrer WHM-URL. Ich tat das und endete mit einer URL:

https://mysite:2087/SESSION_ID/scripts2/doautofixer?autofix=iptablesflush

Es hat meine iptables zurückgesetzt und alles war wieder gut mit der Welt. :)


0
2018-05-24 04:59





In CentOS haben Sie die Datei /etc/sysconfig/iptables Wenn Sie es nicht dort haben, können Sie es einfach mit erstellen iptables-save um den aktuellen Regelsatz in eine Datei zu schreiben.

iptables-save > /etc/sysconfig/iptables

Um die Datei zu laden, müssen Sie den Rechner nicht neu starten iptables-restore

iptables-restore < /etc/sysconfig/iptables

0
2018-04-09 23:30