どうすればADログインからrootに切り替えてSSHキーを/root/.ssh/authorized-keysに送信できますか?

どうすればADログインからrootに切り替えてSSHキーを/root/.ssh/authorized-keysに送信できますか?

シェル スクリプトを使用して、ジャンプ サーバーから複数のサーバーに SSH キーを送信しようとしています。AD アカウントからログインして、その後 root に切り替えることしかできず、root として直接ログインすることはできません。このような状況で、/root/.ssh/authorized-keys の下にコピーする必要があるサーバーに SSH キーを送信するにはどうすればよいでしょうか。

答え1

他のサーバーに root としてアクセスするために、ジャンプ サーバーで root になる必要はありません。

ssh 設定ファイルがまだない場合は、まずこれを作成します。このファイルは通常、~/.ssh/config (~ は $HOME の省略形) に存在します。

まず最初に知っておく必要があるのは、ジャンプ サーバーからアクセスしようとしているサーバーの IP 範囲です。それらの IP がジャンプ サーバーと同じサブネットにないことが望まれます。

以下にサンプルを示します。

# save as ~/.ssh/config
CheckHostIP             no
StrictHostKeyChecking   no
AddKeysToAgent          yes
ForwardAgent            yes
UserKnownHostsFile      /dev/null

# Servers to get to via jump server
# (note their subnet defined by a range using an asterisk, you need to provide)
# This establishes root as login id for every server in the range 
# and uses the JumpServer (can leave that name as is) as a proxy.
Host                    192.168.122.*
    ProxyJump           JumpServer
    User                root

# JumpServer info. Provide its IP or FQDN and your user id
# IP or FQDN set in the HostName; you can leave Host set as JumpServer
# since this is referred to above in ProxyJump line
Host                    JumpServer
    HostName            ip-or-fqdn-of-jumpserver
    User                your-user-id

上記のサンプルでは、​​環境に合わせて変更する必要があるのは次の 3 つの点だけです。

  • 192.168.122.*サーバーのIP範囲に置き換えます
  • ip-or-fqdn-of-jumpserverジャンプサーバーのIPまたはFQDN(完全修飾ドメイン名)に置き換えます。
  • your-user-idSSH接続に使用したジャンプサーバーのユーザーIDに置き換えます

ファイルが作成されると、以下のコマンドを使用して、すべてのサーバーのルート authorized_keys ファイルに公開キーを配置できますssh-copy-id。もちろん、最初は資格情報を提供する必要がある場合があります。

また、デフォルトでは、ほとんどのサーバーは ssh ルートへの直接アクセスを禁止するように設定されています。その場合は、各サーバーで sshd_config をさらに変更する必要があります。

次に、実行して、ssh-copy-id 192.168.122.10公開キーをサーバーのルート authorized_keys ファイルにコピーします。もちろん、IP を自分のサーバー IP に置き換えます。各サーバーで繰り返します。

ssh some-server-IP各サーバーにキーが存在すると、ユーザー ID を使用してジャンプ サーバーに自動的に接続され、リモート サーバーに root としてアクセスするためのポート転送が確立されるはずです。

関連情報