web-dev-qa-db-ja.com

UbuntuがLAN経由でRaspberry Piにアクセスできないのはなぜですか?

さて、最近Raspberry Piを手に入れ、Wi-Fiに接続しました。SSHを有効にしてHiawathaをインストールしました。その時点でPuppy Linuxを実行していたデスクトップから問題なくアクセスできました。

また、Windows(PuTTY on Win XP Pro)を起動したときに問題なくアクセスでき、ネットブックもPuTTY経由でアクセスできました。 (Win 7スターター)

ただし、Ubuntuを起動すると、すべてのSSH、HTTP、およびHTTPS接続が拒否されました。接続の問題が発生していたのがUbuntuであり、Ubuntuだけであることを確認するために、Puppy Linuxで再起動し(正常に接続され、Windowsで正常に接続されました)。ネットブックは、3つのサービスすべてに問題なく接続できました。接続が拒否されたと言ったのはUbuntuだけでした。

何が問題なのかを知りたい-RPiの再起動、コンピューターの再起動、ワイヤレスルーターの再起動など、すべての基本的なトラブルシューティングを既に行っています。RaspberryPiにはファイアウォールが有効になっておらず、ルーターはLAN相互への無制限のアクセス。私は広範なテストを行いましたが、Ubuntuは疑いの影を越えて、接続を望まない唯一のものであることが証明されています。

更新:外部IP経由のアクセスをテストしたところ、すべてがUbuntuでスムーズに実行されました!ただし、UbuntuはローカルからはPiにアクセスできないため、他のOScanを再確認しました。 Ubuntuが(他のOSとは異なり)ローカル接続に問題を抱えているのは奇妙だと思いますが、外部IPを介してPiにアクセスするだけで問題ありません。

更新2:ファイアウォールを無効にすると、デバイスにaccessアクセスできますが、パスワードが間違っていると報告しますeveryシングル時間。 Geditに入力してから、SSHログイン中にパスワードプロンプトにドラッグアンドドロップしてみました。[email protected]にアクセスするときは許可されますが、[email protected]にアクセスするときは許可されません。これは信じられないほどイライラします。

9

したがって、Ubuntuマシンのデフォルト設定でufwが有効になるまで、接続は常にConnection refusedを報告しました。クライアントでufwを無効にした後、接続は確立されますが、パスワードは常に拒否されますか?

その場合、あなたの問題は192.168.2.128 ipがクライアントのUbuntuマシンに戻され、実際にUbuntuマシンで実行されているsshサーバーに接続していることだと思います。これは説明します:

  • インターネットから接続できる理由。

  • Ubuntuクライアントでファイアウォールがオンになっているときに接続が拒否された理由。

  • クライアントファイアウォールをオフにして接続が拒否されなくなった理由。

  • 接続が確立されたのに認証が失敗する理由。

この場合のトラブルシューティング:

  • ローカル接続とインターネット接続の両方について、ssh -v [email protected]を使用してサーバーのホストキーを確認します。同じキーを報告しますか?

  • または、ローカルから接続しているときに、別の端末からパスワードを入力するプロンプトが表示されている場合:Sudo netstat -tupanおよびUbuntuのsshdへの接続が確立されているかどうかを確認します。

このケースはすべてを説明しますが、これはあなたの問題であると疑うほど奇妙です。

1
falconer

あなたのubuntuマシンが予想とは異なるネットワークIPアドレスを取得している可能性は完全にあります。以下を試してください:

  • Raspiで、ifconfig | grep 192.168でIPアドレスを確認します
  • ubuntuマシンで、ifconfig | grep 192.168でIPアドレスを確認します

ローカルネットワークで互いに通信できるようにするには、両方が同じサブネットを使用している必要があります。IPアドレスの3番目のセクションを見て、そうであるかどうかを確認してください。あなたの場合、両方とも192.168.2。*サブネット上にある必要があります。

実際にdifferent IPアドレスも持っていることを確認してください。これは明白に思えるかもしれませんが、そのうちの1つがDHCPを使用しており、もう1つが静的に設定されている場合に発生する可能性があります。

すべてがチェックアウトされたら、次のコマンドを実行して、パケットの送信先を確認します。

route -n

Raspberry Piに適用される宛先サブネットの出力を確認します。実際には3行だけである必要があります。

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth0
192.168.0.0     0.0.0.0         255.255.255.0   U     1      0        0 eth0

より多くの行がある場合、または物事が奇妙な場所に行く場合、それが答えです。

私の推測では、ssh接続はRaspberry PiのSSHサーバーとは異なるSSHサーバーに到達しているため、ubuntuファイアウォールを変更すると影響を受け、ログインが機能しません。

1
ImaginaryRobots

Ubuntu 13.10では、以前に13.04とMint 16でできたのに、piにsshできませんでした。

ssh -vvv user@Host

私は得た:

debug1: expecting SSH2_MSG_KEX_ECDH_REPLY

私は、(piではなく)MachineのMTUを自動ではなく1200に設定するという提案に出くわしました。私はこれを行い、オフにしてからWiFiで、最初の試行でsshでPIに接続しました。これが誰かを助けることを願っています。

0
Priizim

Pastebinの内容によると、「接続拒否」は、そのIPアドレスにあるものからTCPリセットを取得していることを示しています。

健全性チェック:トラブルシューティング中にufwを無効にします

デスクトップファイアウォールを無効にした状態で、デスクトップからPiにpingを実行できますか? Piからデスクトップにpingできますか?

両方向でpingを試行した後、両方のマシンで「arp -n」の出力を確認します。彼らはお互いのMAC(イーサネットハードウェア)アドレスを見ますか、それともトラフィックをリダイレクト/インターセプトするものですか?

両方の方向にpingでき、「arp -n」が適切なMACアドレスが使用されていることを示している場合(反対側のマシンの「ifconfig」を確認)、次のステップはPiの/var/log/auth.logを調べることです。接続試行の何が問題なのかがわかります。

上記が役に立たない場合は、Piの次のコマンドからの出力を表示してください。

Sudo ifconfig -a
cat /etc/resolv.conf
arp -n
netstat -rn
Sudo iptables-save
Sudo grep ssh /var/log/auth.log | tail -50

そして、デスクトップ上で:

Sudo ifconfig -a
cat /etc/resolv.conf
arp -n
netstat -rn
Sudo iptables-save

このコメントの一部は上記のコメントに貼り付けられていますが、まずファイアウォールをオフにして取得することが重要です。ファイアウォールをオフにして動作させることができる場合は、ファイアウォールルールのトラブルシューティングに進むことができます。

また、IPアドレスをターゲットにしている場合でも、ホストキーの検証中にSSHがDNSを使用するため、DNS設定は重要です。

0
Luno

~/.ssh/known_hostsファイルを削除して、再試行してください。以前に同じIPアドレスsshでアクセス可能なホストがあった場合、無効なフィンガープリントを保持できます

0
jet