web-dev-qa-db-ja.com

iptablesによってロックアウトされた後、SSHアクセスを回復するにはどうすればよいですか?

TL:DR

Iptablesの設定を変更したところ、SSHがすべての接続を拒否しています。ホスティング会社に連絡せずにこれを修正できますか?


ロングバージョン

わかりました、これはおそらく100%私自身のせいです...

Webサイトを専用サーバーに移動する準備として、CentOS 5.6を実行する新しいホストマシンを入手しました。マシンにはiptablesがかなりロックダウンされており、ssh(22)とhttp(80)のみが許可されていますが、ポート20 en 21でFTPを受け入れるためにも必要です。

今日の午後、ポート20と21への着信接続を受け入れるために、iptablesに行を追加しました。最初に、reject alllineは、ftpに追加した行の上にあります。そのため、その行を下に移動し、iptablesを保存して再起動すると、ftpが機能していました。

2時間後、もう一度接続しようとすると、port 22: Connection refused httpについても同様です。

SSH経由でサーバーにアクセスできないので、ホスティング会社に連絡せずにこれを修正する方法はありますか?

9
Jan Henckens

残念だけど違う。リモートシリアルコンソール、iDRAC、iLOなど、他の管理インターフェイスを使用できる場合を除きます。次にログアウトする前に、設定をテストして忘れないようにしてください。;)

12
Michael Lowman

まだサーバーにftpでき、ftp経由でrootとして(通常は不適切な方法である可能性が高い)非chroot(etc)環境にログインできると仮定します。

次の内容を含むファイルを/etc/cron.dに配置します。

* * * * * root /sbin/service iptables stop 
7
Mark Wagner

CentOSでは、ファイル/etc/sysconfig/iptablesがない場合、iptables-saveを使用して現在のルールセットをファイルにダンプするだけで作成できます。

iptables-save > /etc/sysconfig/iptables

マシンを再起動する必要のないファイルをロードするには、iptables-restoreを使用できます

iptables-restore < /etc/sysconfig/iptables
0
Janus Rokkjær

これらの instructions に従って、以下を追加することもできます:

scripts2/doautofixer?autofix=iptablesflush

... WHMのURLに。私はそれをして、URLで終わりました:

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

それは私のiptablesをリセットし、すべてが再び世界で良かった。 :)

0
coderama