web-dev-qa-db-ja.com

Ubuntu Cloudサーバーイメージのログイン資格情報

VMを使用してクラウドインフラストラクチャを構築しようとしています

Openstackのマニュアルでは、 このリンク のイメージにはOpenstackがプリインストールされていることが記載されています。

trusty-server-cloudimg-AMD64-disk1.imgファイルをダウンロードし、KVMを使用してロードしました。このイメージを使用して仮想マシンをインスタンス化しましたが、ログイン(コンソールを使用)またはsshできません。

そのOSのデフォルトのユーザー名とパスワードがわかりません。

また(別の質問)、2つの仮想マシンを使用してクラウドを構築したいのですが、同じイメージを使用できますか?

17

Ubuntuイメージのデフォルトのユーザー名はubuntuです。
デフォルトのパスワードはありません。ユーザー名/パスワードを使用してマシンにSSH接続したり、VNCコンソールから接続したりすることはできません。 sshで公開/秘密キー認証方法を使用する必要があります。また、ubuntuアカウントのSudo昇格はパスワードなしです。

仮想マシンに初めてアクセスした後、これらの設定を変更して、sshのユーザー名/パスワード認証を有効にできます。

2番目の質問については、
はい、複数の仮想マシンに同じイメージを使用できます。

4
Athafoud

これはどう:

$ virt-customize -a bionic-server-cloudimg-AMD64.img --root-password password:coolpass
4
rofrol

18.04セットアップ手順

要するに、ホスト上で必要なもの:

Sudo apt-get install cloud-image-utils

cat >user-data <<EOF
#cloud-config
password: asdfqwer
chpasswd: { expire: False }
ssh_pwauth: True
EOF

cloud-localds user-data.img user-data

# user-data.img MUST come after the rootfs. 
qemu-system-x86_64 \
-drive file=ubuntu-18.04-server-cloudimg-AMD64.img,format=qcow2 \
-drive file=user-data.img,format=raw \
-m 1G
...

そして今、あなたはでログインできます:

  • ユーザー名:ubuntu
  • パスワード:asdfqwer

ここでは、完全な最小限の詳細な作業QEMUの例を説明します: https://askubuntu.com/questions/281763/is-there-any-prebuilt-qemu-ubuntu-image32bit-online/1081171#1081171

Ubuntu 18.04ホストでテスト済み。

@Athafoudの答えを補完するために、新しいUbuntuインスタンスに初めてログインする方法に関する詳細を以下に示します。

OpenStack GUIで、[プロジェクト]> [コンピューティング]> [アクセスとセキュリティ]で公開/秘密キーを管理します。 SSHキーを作成し(LinuxまたはmacOSでssh-keygenを使用するなどして)、[Import Key Pair]をクリックしてOpenStackキーに追加します。 (または、OpenStack GUI内から「キーペアを作成」してから、ワークステーションにキーをエクスポートできます。)

新しいインスタンス(VM)を作成するとき、このキーを初めてログインするときに使用する「キーペア」として指定する必要があります。

新しいインスタンスが稼働したら、次のようにSSH経由で接続します。

ssh -i <keyfile> ubuntu@<instance>

ここで、<keyfile>はインスタンスに関連付けたSSHキーの名前であり、<instance>はインスタンスのホスト名またはIPアドレスです。このコマンドは、パスワードを要求せずにインスタンスのubuntuアカウントにログインします。

ubuntuユーザーはSudo特権を持っているので、ログイン後にSudo -iと入力することでrootになり、必要に応じてVMを管理できます:- )。

0
Laryx Decidua

次のコードを使用して、Ubuntu cloudimgをDebian 7.2(wheezy)マシンで使用可能にすることができます。

apt-get install pwgen
apt-get install genisoimage
git clone -b master https://git.launchpad.net/cloud-utils

printf "#cloud-config\n" > user-data
printf "password: `pwgen 8 1`\nchpasswd: { expire: False }\nssh_pwauth: True\n" >> user-data
./cloud-utils/bin/cloud-localds user-data.img user-data

その後、 tmux ウィンドウ内からこのようなイメージを開始して、ログアウトしても実行し続けるようにします:

kvm -m 2048 -smp 2 -hda ubuntu-18.10-server-cloudimg-AMD64.img -hdb user-data.img -net nic -Net User,hostfwd=tcp::1810-:22 -nographic

その後、ユーザーubuntuとしてマシンにログインし、user-dataファイル内で生成されたパスワードを使用できます。ログインは、kvmで印刷されたシリアルコンソール(通常、その上にssh接続がある場合でもかなり遅い)、またはssh ubuntu@localhost -p1810sshを介して行うことができます。ユーザーubuntuは、デフォルトでrootとしてパスワードなしのSudoアクセスを取得します。


追伸ssh-authorized-keysを追加して遊んでもみましたが、cloud-config形式は非常に壊れやすいようです。トップレベルでは無視されますが、以下のusers:レベルでは、ubuntuユーザー全体が(少なくともパスワードの部分)が壊れているようです。以下は、cloud-configで読み取り可能な形式にキーを取得するコードです。

printf "users:\n  - name: ubuntu\n    ssh-authorized-keys:\n" >> user-data
cat ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys | sed 's/^/      - /g' >> user-data

passwordは、usersハッシュを持っているため、passwd仕様の有効なフィールドではないようです。ユーザーubuntuがパスワードなしで作成されるため、全体が以前のコードを壊します。)

0
cnst