add option to configure cloud-init to allow password authentication
This patch will configure cloud-init to allow password authentication. This is usefull in case you use "devuser" element and want to ssh guest image. Change-Id: I00e38aa2753f26b4cdd34d0fd85fc8e0de78171f
This commit is contained in:
parent
be1e563524
commit
55b6101e1b
@ -6,3 +6,12 @@ Install's and enables cloud-init for systems that don't come with it
|
|||||||
pre-installed
|
pre-installed
|
||||||
|
|
||||||
Currently only supports Gentoo.
|
Currently only supports Gentoo.
|
||||||
|
|
||||||
|
Environment Variables
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
DIB_CLOUD_INIT_ALLOW_PASS_AUTH
|
||||||
|
:Required: No
|
||||||
|
:Default: password authentication disabled when cloud-init installed
|
||||||
|
:Description: customize cloud-init to allow ssh password
|
||||||
|
authentication.
|
||||||
|
22
elements/cloud-init/post-install.d/21-cloud-init-allow-password-auth
Executable file
22
elements/cloud-init/post-install.d/21-cloud-init-allow-password-auth
Executable file
@ -0,0 +1,22 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ ${DIB_DEBUG_TRACE:-0} -gt 0 ]; then
|
||||||
|
set -x
|
||||||
|
fi
|
||||||
|
set -eu
|
||||||
|
set -o pipefail
|
||||||
|
|
||||||
|
# Set cloud-init to allow password authentication
|
||||||
|
if [ -n "${DIB_CLOUD_INIT_ALLOW_SSH_PWAUTH:-}" ]; then
|
||||||
|
if [ -f "/etc/cloud/cloud.cfg" ]; then
|
||||||
|
if [ -z "$(cat /etc/cloud/cloud.cfg | grep ssh_pwauth)" ]; then
|
||||||
|
echo "ssh_pwauth not exist. append to EOF"
|
||||||
|
sudo sh -c 'echo "ssh_pwauth: 1" >> /etc/cloud/cloud.cfg'
|
||||||
|
else
|
||||||
|
echo "ssh_pwauth exist. make sure ssh_pwauth enabled"
|
||||||
|
sed -i -e 's/ssh_pwauth: *0/ssh_pwauth: 1/g' /etc/cloud/cloud.cfg
|
||||||
|
sed -i -e 's/ssh_pwauth: *False/ssh_pwauth: True/g' /etc/cloud/cloud.cfg
|
||||||
|
sed -i -e 's/ssh_pwauth: *false/ssh_pwauth: true/g' /etc/cloud/cloud.cfg
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
Loading…
Reference in New Issue
Block a user