web-dev-qa-db-ja.com

リモートサーバーへのSSH接続を誤って禁止しました...次は何ですか?

もう一度言いましょう私たちは皆間違いを犯します、そして私はちょうどそれを作りました。

簡単な歴史:私がレンタルしているVPS(Debian)でいくつかのことをしていましたが、奇妙な動作に気づきました。 netstatコマンドを使用して、SSH経由の不正な接続を確認しました。どうすればよいかわからなかったので、iptablesを使用して彼の接続を閉じることにしました。

iptables -A INPUT -p tcp --dport ssh -s IP -j DROP

でも疲れたので書いた

iptables -A INPUT -p tcp --dport ssh -j DROP

そして私(そして他のみんな)を追い出した...

どうすれば修正できますか?

61
tomatoGuy

いくつかの選択肢があります:

  • サーバーにIPMI/"KVM" /コンソールアクセスがあり、物理キーボードが接続されているかのようにサーバーを制御できるかどうかを確認します。
  • 提供していない場合は、VMをリカバリLinux CD(一部のプロバイダーが提供しています)で起動できるかどうかを確認し、ファイアウォールルールをそのように修正して、通常どおり起動します。
  • コンソールにアクセスできない場合は、起動して回復するか、ボリュームを別のVM(Amazonの場合のように、user3550767の答えを信用する)に接続する前に)する前に、Ankh2054の最初の再起動の答えを試すことができます。ルールを保存していない場合(保存する前に自分を追い出したために発生した可能性があります)コントロールパネルを使用するか、正常でないリセット/電源オフ(別名、ハードリブートまたはハードシャットダウン)正常に再起動したときにinitスクリプトがルールを自動的に保存する場合(クレジット@ jfalcon、@ joshudson)。

    これの欠点を考慮してください(再起動中に書き込まれたデータが失われる可能性があり、起動時にファイルシステムチェックが必要になる可能性があるため、起動時間が長くなりますが、その遅延は、起動して回復するよりは短い場合があります)。

60
g491

IPtablesルールをまだ保存していない場合は、VPSでサーバーを再起動(可能な場合)を実行すると、ルールが消えます。

47
Ankh2054

これが、人が配置されたヘルプラインの目的です。サービスプロバイダーに連絡し、オペレーターの1人にルールを削除してもらいます。

30
RobertG

壊れたインスタンスを修正する一般的な方法は、インスタンスをシャットダウンして、ルートボリュームを稼働中のインスタンスに接続することです。次に、そこにボリュームをマウントして、ログを表示したり、構成ファイルを編集したりできます。その後、ボリュームを切り離して、独自のインスタンスで起動できます。

3
user3550767

正式な回答:VPS管理パネルに移動し、何らかの方法でローカルアクセス(仮想KVM)を取得するか、呼び出します。

再び落ちないようにするための手順/ルールの説明:

  1. IP、ルーティング、ファイアウォールルールの変更があり、問題が発生してアクセスがブロックされる可能性があります。
  2. vPSだけではなく、専用ネットワークデバイス構成にも適用されます

したがって、100%確実に回復できる場合を除いて、ネットワーク構成を以前の状態にリセットする方法を常に作成することをお勧めします。たとえば、screenNohupのいずれかでバックグラウンドセッションを開く、またはtmuxcronでもこれに対応し、iptables -Fまたは何かを以前の状態にリセットするための他の望ましい手段。

3
kagali-san