linux - authentication for SSH into EC2 with new user failing -
i working chef on ec2 instances, , created user data script passed in through knife ec2 command, creates new user, copies public key file default ec2-user , sets correct ownership , permissions.
#!/bin/bash chefuser="$(date +%s | sha256sum | base64 | head -c 32)" useradd $chefuser echo $chefuser 'all=(all) nopasswd:all' | tee -a /etc/sudoers cp -f /home/ec2-user/.ssh/authorized_keys /tmp/ chown $chefuser /tmp/authorized_keys runuser -l $chefuser -c 'mkdir ~/.ssh/' runuser -l $chefuser -c 'mkdir ~/.aws/' runuser -l $chefuser -c 'chmod 700 ~/.ssh/' runuser -l $chefuser -c 'mv -f /tmp/authorized_keys ~/.ssh/' runuser -l $chefuser -c 'chmod 600 ~/.ssh/authorized_keys'
checking ownership , permissions seems return expected after running script:
# ls -l .ssh/authorized_keys -rw-------. 1 nwyzmthimdbmnzljotgxzmu1nde1zme0 root 396 may 29 11:28 .ssh/authorized_keys # stat -c '%a %n' .ssh/ 700 .ssh/ # stat -c '%a %n' .ssh/authorized_keys 600 .ssh/authorized_keys
if ssh new user, key rejected. on new instance, if copy/paste same commands root in terminal (which how script runs according amazon), works fine , can ssh in new user.
Comments
Post a Comment