web-dev-qa-db-ja.com

ホームLinuxから私のサーバーにsshできませんが、Windowsから同じサーバーにsshできます

Ubuntuインストールの1つからサーバーにSSHで接続することはできませんが、別のUbuntuインストールまたはWindowsオペレーティングシステムを使用している場合、SSHで接続するとスムーズに動作します。

したがって、Ubuntuインストールの1つで何かが壊れており、正確な問題を見つけるのに苦労しています。

Ssh/openssh-client/openssh -/ sshを再インストールしてみました。

詳細な出力からの数行は次のとおりです。

ssh username@MYSERVERADDRESS -v
debug1: Offering RSA public key: /home/user/.ssh/id_rsa
debug1: Server accepts key: pkalg ssh-rsa blen 279
debug1: Authentication succeeded (publickey).
Authenticated to MYSERVER ([MYSERVERADDRESS]:22).
debug1: channel 0: new [client-session]
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: pledge: network
packet_write_wait: Connection to MYSERVERADDRESS port 22: Broken pipe

グーグルから多くの異なるソリューションを試してみましたが、まったく機能しませんでした。 .sshディレクトリを削除、/ etc/ssh/ssh_configを削除(デフォルト値で自動的に再作成).

さらにもう1つの情報は、別のOSと同じネットワークを使用してSSHでサーバーに接続できるため、サーバー側からの問題ではないということです。

更新:

  1. ファイアウォールが無効になっています

  2. クラウドでホストされているサーバー

  3. デュアルブートのWindowsとLinuxを搭載した3つの異なるマシンを使用しています。

  4. SSHは、Linuxが接続に問題を起こしているマシンを除き、すべてのマシンで完全に機能し、Windowsを使用する同じマシンでは、すべて正常に機能します。

  5. ポイント4のより明確なビュー:合計3台のマシンにそれぞれLinuxおよびWindows(デュアルブート)がロードされ、SSHに問題があるLinuxの実行中に1台のマシンのみ。

SERVER ADDRESSとUSERNAME以外のデータが必要な場合は、お知らせください。

5
Mohan Sharma

この問題の解決策を見つけました(自分の質問に答えてごめんなさい)。誰かがこの問題を抱えているなら、彼/彼女は私が見つけた解決策を使うことができるので、私はそれに答えています。

実際の問題は、クライアント側だけでなくサーバー側にもあります。

サーバー側の問題は、サーバー上の/home/<user>/.ssh/known_hostsファイルに、Ubuntuのインストールで無効なエントリがあり、オペレーティングシステムが同じハードウェアIDと同じIP(静的IP)を持っているが、キーが異なるためでした。

だから私がしたことは:

ssh-keygen -f /home/<user>/.ssh/known_hosts -R ip.ip.ip.ip

私の場合、ip.ip.ip.ipはネットワークの静的パブリックIPです。このコマンドは、ip.ip.ip.ipがそれぞれ変更されるサーバーとクライアントマシンの両方で実行します。

私はこのコマンドが何をするのかはわかりません(グーグル/試行錯誤からこの解決策を見つけました)

クライアントマシンのknown_hostsファイルを他のクライアントマシンまたはオペレーティングシステムにコピーすることもできます。

英語が下手でごめんなさい。

そして、このコマンドが何をするのか、そしてこのコマンドが問題を解決した理由を誰かが知っているなら、教えてください!ありがとうございました。

ビンゴが解決しました!

4
Mohan Sharma

サーバーからロックアウトされましたか?すぐ戻ってきなさい!

のためにサーバーからロックアウトされました:

  • ホストキー検証失敗エラー
  • SSH Bad Config
  • 悪い設定
  • ファイアウォールのロックダウン

注:これはUnixで機能します。 WindowsではなくLinux。

始めましょう。

状況に応じて2つのオプションを利用できます。

Opton 1:ターミナルアクセス(ターミナルアクセスを回復できる場合

端末アクセスオプション

システムを次のように更新します。

Sudo aptitude update && aptitude safe-upgrade -y

*または次のものを使用できます:

Sudo apt-get update && apt-get upgrade -y

壊れたsshを再インストールします

Sudo apt-get --install ssh -y

更新されたバージョンをインストールします!

Host Key Verification Failed Errorメッセージを修正するには、次のようにします。

ssh-keygen -R hostname

SSHアクセスをブロックしましたか?すぐ戻ってきなさい!

サーバーから完全にロックアウトされている場合sshを使用して接続しようとしたときにタイムアウトを受信したため、 不正なファイアウォール構成、ブロックされたポート、ディスク障害または間違ったssh構成、ホストキー検証失敗エラーなどDiskを使用しますマウントオプション。

ディスクマウントオプション(リモートサーバー

Webインターフェースを介してリモート再起動、リモートリセット、リモートハードウェアリセットを試しても、問題が解決しないと仮定します。

データセンターKVM-Consoleボックスにアクセスしてrescueモードで起動します(1時間無料で入手できます

コンソールアクセスから:ログイン:

*ubuntu@rescue#*

ディスクをマウントします

    mkdir tempDisk

    mount --bind /dev/xvda2 /tempDisk
    mount --bind /proc /tempDisk/proc
    mount --bind /dev /tempDisk/dev
    mount --bind /sys /tempDisk/sys

    chroot /tempDisk

注:プロンプトが変わります。ルートになりました

**root@your-Host#**

問題を調査して修正してください。例は、潜在的なエラーを修正するためにシステムを更新します。

Sudo apt-get update && apt-get upgrade -y
Sudo apt-get --install ssh -y

Host Key Verification Failed Errorメッセージの修正:

ssh-keygen -R hostname

終了してDKMコンソールプロンプトに戻る

`**root@your-Host#** exit `

救助中の銀行

*ubuntu@rescue#*

同じKVMコンソールを介してサーバーを再起動します。

*ubuntu@rescue#* shutdown -r now

通常のログインに戻り、準備完了です。

ローカルアクセスオプション

ローカルアクセスまたはラックアクセスがある場合は、ディスクを取り外し、同じバージョンの別の動作しているLinuxにマウントします。例:

***mytech@hostname#***

 mkdir tempDisk

mount --bind /dev/xvda2 /tempDisk
mount --bind /proc /tempDisk/proc
mount --bind /dev /tempDisk/dev
mount --bind /sys /tempDisk/sys

Chroot/tempDiskでアクセスを取得します。

注:サーバーのルートにいると、プロンプトが変わります!

myServer@hostname#;

Sudo apt-get update && apt-get upgrade -y
Sudo apt-get --install ssh -y

Host Key Verification Failed Errorメッセージの修正:

ssh-keygen -R hostname

終了しました

`**myServer@hostname#** exit `

ディスクを取り外し、元のサーバーに再度接続し、電源を入れます

1
Prince Adeyemi