diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bd59350 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.credentials diff --git a/config b/config new file mode 100644 index 0000000..e2e271a --- /dev/null +++ b/config @@ -0,0 +1,3 @@ +[default] +region = us-west-2 +output = json diff --git a/get_authorized_keys b/get_authorized_keys new file mode 100755 index 0000000..a05d106 --- /dev/null +++ b/get_authorized_keys @@ -0,0 +1,12 @@ +#!/bin/sh + +# Accomodate for local install +PATH=$HOME/.local/bin:$PATH + +aws codecommit get-file \ + --repository-name authorized_keys \ + --file-path authorized_keys \ + --query 'fileContent' \ + --cli-read-timeout 1 \ + --cli-connect-timeout 1 \ + --output text |base64 -d diff --git a/makeitso b/makeitso new file mode 100755 index 0000000..81e55a1 --- /dev/null +++ b/makeitso @@ -0,0 +1,17 @@ +#!/bin/sh + +sudo adduser --disabled-login --gecos 'User for AuthorizedKeysCommand' authorizedkeysuser + +sudo sh -c "echo 'AuthorizedKeysCommand /etc/ssh/get_authorized_keys +AuthorizedKeysCommandUser authorizedkeysuser' >> /etc/ssh/sshd_config" + +sudo cp authorized_keys /etc/ssh + +sudo chmod 755 /etc/ssh/get_authorized_keys + +sudo -u authorizedkeysuser mkdir ~authorizedkeysuser/.aws +sudo -u authorizedkeysuser cp config ~authorizedkeysuser/.aws +sudo -u authorizedkeysuser cp .credentials ~authorizedkeysuser/.aws/credentials +sudo -u authorizedkeysuser chmod 600 ~authorizedkeysuser/.aws/* +sudo -u authorizedkeysuser sh -c 'command -v aws > /dev/null 2>&1 || pip install --user awscli' +sudo systemctl restart sshd