Rootログインを拒否するubuntuクラウドバージョンのデフォルト設定を微調整しています。
このようなマシンに接続しようとすると、次のようになります。
maxim@maxim-desktop:~/workspace/integration/deployengine$ ssh [email protected]
The authenticity of Host 'ec2-204-236-252-95.compute-1.amazonaws.com (204.236.252.95)' can't be established.
RSA key fingerprint is 3f:96:f4:b3:b9:4b:4f:21:5f:00:38:2a:bb:41:19:1a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'ec2-204-236-252-95.compute-1.amazonaws.com' (RSA) to the list of known hosts.
Please login as the ubuntu user rather than root user.
Connection to ec2-204-236-252-95.compute-1.amazonaws.com closed.
Sshによるルートブロッキングが構成されている構成ファイルと、出力されたメッセージを変更する方法を教えてください。
古い質問ですが、実際には誰も答えていません。同じ質問がありました。この構成はどこから来たのですか?
それはcloudinitから始まり、正確にはcc_ssh.py
内の/usr/lib/python2.7/dist-packages/cloudinit/config
にあります
これは、ファイル/etc/cloud/cloud.cfg
に直接依存しています。あなたは行disable_root: true
を見つけます。
ユーザーデータを調整してdisable_root: false
を追加することで、これを上書きできるはずです。クラウドプロバイダーは、ユーザーデータを構成可能にする必要があります。
Sshd構成にPermitRootLogin yes
。
Sudo grep "login as the ubuntu user" /root/.??*
ただし、マイクスコットが提供したリンクは、よく読んで注意することを強くお勧めします。
ルートSSH
最後に、Ubuntuのセキュリティ標準を回避して、ルートとしてsshとrsyncを許可する以前の慣例に戻したい場合、このコマンドは公式のUbuntuイメージの新しいインスタンス用にそれを開きます。
ssh -i KEYPAIR.pem ubuntu@HOSTNAME 'Sudo cp /home/ubuntu/.ssh/authorized_keys /root/.ssh/'
これは推奨されませんが、これは、上記のSudoプラクティスにアップグレードできるまで、既存のEC2自動化コードを引き続き機能させる方法となる場合があります。
SSHが有効になっている公開サーバーは、犯罪ボットネットからのrootログイン試行によって昼夜を問わず継続的に攻撃されるため、私はroot SSHログインを無効にしています。
他の場所でドキュメントが警告する
Rootアカウントを有効にする必要はめったにありません。Ubuntuシステムの管理者として行う必要があるほとんどすべてのことは、Sudoまたはgksudoを介して行うことができます。永続的なrootログインが本当に必要な場合、最善の代替策は、Rootログインをシミュレートすることです。次のコマンドを使用したシェル...
Sudo -i
答えはここにあります: http://alestic.com/2009/04/ubuntu-ec2-Sudo-ssh-rsync
Authorized_keysファイルをubuntuアカウントからrootアカウントにコピーします。パスワードによるログインは無効になっているため、どのアカウントにもログインするには有効なSSHキーが必要です。
/ etc/ssh/sshd_configを確認します。オプションは「Permit root login」と呼ばれます
PermitRootLogin
Specifies whether root can log in using ssh(1). The argument
must be “yes”, “without-password”, “forced-commands-only”, or
“no”.
より有用な設定の1つは、「-passwordなし」です。これは、ルートでログインできるようにしますが、公開鍵認証を使用する場合に限られます。詳しくはman sshd_configをご覧ください:)