1:キーペアを使用せずにAWSインスタンスにログインする方法はありますか?1つのインスタンスにいくつかのサイト/ユーザーを設定したいと思います。ただし、クライアントがログインするためのキーペアを提供したくありません。
2:別々のディレクトリを指す異なるドメインを持つ1つのAWSインスタンスでホスティングサイト/ユーザーを設定する最も簡単な方法は何ですか?
1:キーペアを使用せずにAWSインスタンスにログインする方法はありますか?1つのインスタンスにいくつかのサイト/ユーザーを設定したいと思います。ただし、クライアントがログインするためのキーペアを提供したくありません。
2:別々のディレクトリを指す異なるドメインを持つ1つのAWSインスタンスでホスティングサイト/ユーザーを設定する最も簡単な方法は何ですか?
質問1への回答
これが私がしたことUbuntu EC2
です:
A)キーペアを使用してrootとしてログインします
B)必要なユーザーとそのパスワードを
# sudo adduser USERNAME
# sudo passwd USERNAME
C)/etc/ssh/sshd_config
設定を編集する
PasswordAuthentication yes
PermitRootLogin yes
D)でssh
デーモンを再起動します
# sudo service ssh restart
centOSを使用している場合は、sshをsshdに変更するだけです。
ec2
これで、キーペアなしでインスタンスにログインできます。
/etc/ssh
1)ssh構成を変更し(Ubuntuではこれは通常または/etc/sshd
にあります)、パスワードログインを再度有効にできるはずです。
2)これについてはAWS固有のものは何もありません-ApacheはVHOSTS(仮想ホスト)をすぐに処理できます-特定のドメインが特定のディレクトリから提供されるように指定できます。詳細については、Googleで確認してください。
AWSでPasswordAuthenticationを無効にしないようにクラウドinitを設定する方法の答えを探してGoogleからここに来ました。どちらの答えも問題に対処していません。これがないと、AMIを作成すると、インスタンスの初期化時にクラウドinitがこのオプションを再び無効にします。
これを行う正しい方法は、sshd_configを手動で変更する代わりに、cloud initの設定を修正する必要があります(プロビジョニング中にインスタンスを構成するために使用されるオープンソースツール。詳細については、https ://cloudinit.readthedocs.org/en/を参照してください)。最新/)。cloud initの構成ファイルは、/ etc / cloud/cloud.cfgにあります。
このファイルは、cloudinitで使用される多くの構成をセットアップするために使用されます。cloud-initで構成できる項目の例については、このファイルをお読みください。これには、新しく作成されたインスタンスのデフォルトのユーザー名などの項目が含まれます)
SSH経由のパスワードログインを有効または無効にするには、パラメータssh_pwauthの値を変更する必要があります。ファイル/etc/cloud/cloud.cfgでパラメータssh_pwauthを0から1に変更した後、AMIをベイク処理します。この新しくベイクされたAMIから起動すると、プロビジョニング後にパスワード認証が有効になります。
これは、他の回答で説明されているように、ssh構成のPasswordAuthenticationの値を確認することで確認できます。
最近、AWSはSessionsManagerと呼ばれる機能をSystemsManagerサービスに追加しました。これにより、秘密鍵を設定したり、ポート22を開いたりすることなく、インスタンスにSSHで接続できます。認証はIAMとオプションでMFAを使用して行われます。
あなたはここでそれについてもっと知ることができます:
su - root
後藤/etc/ssh/sshd_config
vi sshd_config
PermitRootLogin yes
PermitEmptyPasswords no
PasswordAuthentication yes
:バツ!
次に、sshサービスを再起動します
root@cloudera2:/etc/ssh# service ssh restart
ssh stop/waiting
ssh start/running, process 10978
次に、sudoersファイル(/ etc / sudoers)に移動します。
root ALL=(ALL)NOPASSWD:ALL
yourinstanceuser ALL=(ALL)NOPASSWD:ALL / This is the user by which you are launching instance.
AWSは、オープンポートなしでインスタンスに接続するための新機能であるAWS SSMSessionManagerを追加しました。 https://aws.amazon.com/blogs/aws/new-session-manager/
ターゲットインスタンスへの接続中に、公開sshキーをターゲットインスタンスに一時的に追加する、きちんとしたSSHProxyCommandスクリプトを作成しました。これの良いところは、ssh接続がssmセッションマネージャを介してトンネリングされるため、セキュリティグループにssh(22)ポートを追加する必要なしに接続できることです。
AWS SSM SSH ProxyComand-> https://gist.github.com/qoomon/fcf2c85194c55aee34b78ddcaa9e83a1
アマゾンは追加しましEC2 Instance Connect
た。
プロセスを自動化するための公式スクリプトがありますhttps://pypi.org/project/ec2instanceconnectcli/
pip install ec2instanceconnectcli
それならただ
mssh <instance id>