In Ubuntu 12.10, ho creato un LXC di tipo 'ubuntu' usando l'utility lxc-create. Quindi creo contenitori effimeri basati su questo contenitore usando l'utilità lxc-start-effimera e devo collegarmi a quelli che usano ssh senza password. Tuttavia, devo mantenere le loro cartelle / home / ubuntu intatte, quindi non posso inserire il solito file .ssh / authorized_keys.
La sezione "home directory crittografata" qui mi spiega come spostare le chiavi autorizzate fuori dalla home directory. Dopo aver seguito queste istruzioni dall'interno del contenitore di base, posso accedere a ssh nel contenitore di base senza fornire una password.
Tuttavia, quando lancio un contenitore effimero dal contenitore di base, non posso accedere senza una password. (Confusamente, ssh senza password al contenitore effimera fa lavoro quando authorized_keys è al suo solito posto in /home/ubuntu/.ssh.) Come posso risolvere questo problema?
Ecco cosa ha detto ssh -v, a partire da quando accetta la chiave host:
debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/ubuntu/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /home/ubuntu/.ssh/id_dsa
debug1: Trying private key: /home/ubuntu/.ssh/id_ecdsa
debug1: Next authentication method: password
Ecco le parti rilevanti di /var/log/auth.log sul contenitore effimero:
Apr 11 00:06:52 test-temp-SNeWevO sshd[306]: Authentication refused: bad ownership or modes for directory /
Apr 11 00:06:54 test-temp-SNeWevO sshd[306]: Accepted password for ubuntu from 10.0.3.1 port 59677 ssh2
Apr 11 00:06:54 test-temp-SNeWevO sshd[306]: pam_env(sshd:setcred): Unable to open env file: /etc/default/locale: No such file or directory
Apr 11 00:06:54 test-temp-SNeWevO sshd[306]: pam_unix(sshd:session): session opened for user ubuntu by (uid=0)
Ho fatto questo test su una nuova microistanza AWS basata sullo standard Ubuntu 12.10 AMI e posso fornire istruzioni dettagliate su come riprodurlo se ciò aiuta.