Скрипт запуска AWS LightSail - PullRequest
       12

Скрипт запуска AWS LightSail

0 голосов
/ 07 сентября 2018

Я был необъяснимо заблокирован из моего экземпляра Lightsail. У меня настроен SSH, чтобы он запрашивал не только ключ, но и аппаратный токен. Я использовал это в течение нескольких месяцев, но после недавнего перезапуска он больше не принимает мой аппаратный токен.

При контакте с Amazon выясняется, что после создания моментального снимка сбойного экземпляра при первом запуске в экземпляр можно вставить сценарий однократного запуска. Учитывая этот факт, я написал простой скрипт для изменения /etc/pam.d/sshd и / etc / ssh / sshd_config, чтобы запросить только сертификат ключа.

Вот в чем проблема, несмотря на то, что я стараюсь, кажется, что скрипт запуска полностью игнорируется. Я даже написал вывод в HTML-файл, чтобы увидеть, что происходит, но он никогда не существует. вот мой скрипт запуска:

#!/bin/bash

#Test to see if script executed & create file
/bin/echo "Script Running" > /var/www/html/games/public/script.html


#Remove yubico
/usr/bin/apt remove --purge libpam-yubico >> /var/www/html/psychoticgames/public/script.html

#Correct Pam files to remove yubikey
/bin/grep "#@" /etc/pam.d/sshd | /usr/bin/tr -d '#' | /bin/grep -v "^$" | /bin/grep -v "yubi"> /etc/pam.d/sshd.new
/bin/grep -v "#" /etc/pam.d/sshd | /bin/grep -v "^$" | /bin/grep -v "yubi">> /etc/pam.d/sshd.new
/bin/mv /etc/pam.d/sshd /etc/pam.d/sshd.bak
/bin/mv /etc/pam.d/sshd.new /etc/pam.d/sshd

/bin/grep "#@" /etc/pam.d/sudo | /usr/bin/tr -d '#' | /bin/grep -v "^$" | /bin/grep -v "yubi"> /etc/pam.d/sudo.new
/bin/grep -v "#" /etc/pam.d/sudo | /bin/grep -v "^$" | /bin/grep -v "yubi">> /etc/pam.d/sudo.new
/bin/mv /etc/pam.d/sudo /etc/pam.d/sudo.bak
/bin/mv /etc/pam.d/sudo.new /etc/pam.d/sudo

#Test to see if script PAM complete
/bin/echo "Script Pam Complete" >> /var/www/html/games/public/script.html


#Correct /etc/ssh/sshd_config to not ask for Yubikey
/usr/bin/find /etc/ssh/sshd_config -type f -exec sed -i 's/ChallengeResponseAuthentication yes/#ChallengeResponseAuthentication yes/g' {} \;
/usr/bin/find /etc/ssh/sshd_config -type f -exec sed -i 's/AuthenticationMethods/#AuthenticationMethods/g' {} \;

#Test to see if script complete
/bin/echo "Script Complete" >> /var/www/html/games/public/script.html
/bin/chown ubuntu:www-data /var/www/html/games/public/script.html
/bin/chmod 644 /var/www/html/games/public/script.html

service ssh restart

Все, о чем я могу думать, это то, что Amazon запускает сценарии запуска или этот формат неверен. Как bash-скрипт, он отлично работает на моей тестовой машине, поэтому я понятия не имею, LightSail игнорирует его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...