web-dev-qa-db-ja.com

sshを適切なユーザーとしてログインさせる方法は?

私はさまざまなマシン、主にLinuxでsshを使用しています。これらのマシンのアカウントは命名規則が異なります。私の名前がFirstLastの場合、アカウントがあります:first、flast、last_f、lastf、場合によってはrootとしてログインする必要があります。使用するマシンごとに、コマンドラインで指定しない場合に使用するアカウントをopensshクライアントに認識させたいと思います。

したがって、問題は、ユーザー名が指定されていない場合にssh server Do the RightThingを作成するにはどうすればよいですか。

8
bstpierre

ホームの.sshディレクトリにconfigファイルを作成できます。このファイルには、デフォルトのユーザー、IDファイルなどを指定し、接続に使用できるエイリアスに割り当てることができます。

たとえば、これを~/.ssh/configファイルに入れることができます。

Host example
    HostName example.com
    User first_last
    IdentityFile ~/.ssh/example_rsa
    Port 22
    RSAAuthentication yes
    PubkeyAuthentication yes

Host example2
    HostName example2.com
    User last_first
    # other parameters as needed

次に、コマンドラインでssh exampleまたはssh example2と入力するだけで接続できます。

したがって、接続するマシンごとに、関連するユーザーと一緒に1つを設定できます。次に、エイリアスを使用して、ユーザーを指定せずに接続します。 pattern を使用して、複数のホストを照合することもできます。

ssh_configのマニュアルページ の設定ファイルで指定できる情報と詳細があります。

18
Rich Adams

Rich Adamの回答 によると、設定が保存されているPuTTYを見つけました。

すべてレジストリツリーに保存されており、HKEY_CURRENT_USER\Software\SimonTathamの下にあります(Simon TathamはPuTTYの開発者です)。
ここで、ホストがどのように定義されているかを確認できます。

1
guerda

すべてのサイトで変更したい場合:

~/.ssh/configを編集して、次のようにします。

Host *
    User buck
1
hopeseekr