web-dev-qa-db-ja.com

ホスト名でUbuntuサーバーにsshできません

ルーターを介してイーサネットに接続された古いボックスにUbuntu 12.04サーバーをセットアップしました。リモートアクセスの指示に従ってopenssh-serverを設定しましたが、ホスト名を使用してラップトップからsshにSSH接続することはできません。

不思議なことに、IPアドレスを使用してsshすることができます。便宜上、これを修正したいと思います。似たような質問がいくつかあることに気づきましたが、これらの人々は皆、問題を解決するためにどの方向に進むべきかについてある程度の考えを持っていて、私の質問の少し具体的で技術的に表現されたバージョンを尋ねていたようです。

ホームネットワーキングの完全な初心者として、ここからどこに行くべきかを誰かが教えてくれれば幸いです。

16
Richard Stokes

ホスト名を中央の場所で設定しない限り、ラップトップがUbuntuサーバーで設定したホスト名を知る方法はありません。

そのため、ubuntuサーバーをインストールしたときに「bonkers」という名前を付けた場合、ラップトップではssh bonkersが何もしないことは理解できます。

可能な解決策:

  • ラップトップ上で(実行しているOSを言っていませんか?)、UbuntuサーバーのIPアドレスの行を/ etc/hostsファイルに追加します(Ubuntuサーバーの実際のIPを使用)。

    10.15.30.41 ubuntu-server

    その後、ssh ubuntu-serverを実行すると、動作するはずです。 hostsファイルの場所は、ラップトップのOSによって異なることに注意してください。たとえば、Windowsのどこにあるのかわかりません。

  • Ubuntuサーバーにavahi-daemonパッケージをインストールします。これは、mDNSプロトコルを使用して、ローカルネットワーク上でホスト名を「アドバタイズ」します。インストールして実行すると、ssh ubuntu-server.local.localドメインに注目)してサーバーにアクセスできるようになります。繰り返しますが、ラップトップがWindowsを実行している場合、mDNSをサポートしているかどうかは言えません。 Ubuntu(およびavahi-daemonがインストールされている他のLinux)とMac OS Xはすぐにサポートしています。

15
roadmr

私は同様の問題を抱えており、roadmrが示唆したように、Avahi-daemonをインストールして解決しようとしましたが、明らかに結果はありませんでした。それから私はタイプしました

Host myhostname

そして、ターミナルは私に答えました:

myhostname.lan has address 192.168.1.68
Host myhostname.lan not found: 3(NXDOMAIN)

ホスト名myhostname.lanとして使用したゲストマシンでは、正常に機能しました。 DHCPに接続するまで。割り当てられたIPでは機能しません...

2
Notte