From 874d2903c3407fc2f07f7aff8c85bb12e10ce328 Mon Sep 17 00:00:00 2001 From: Tai Date: Thu, 24 Dec 2020 21:01:10 -0800 Subject: [PATCH] Added setup scripts Putty tutorial in progress --- .../part-1-ubuntu-initial-setup.sh | 92 ++++++++++++++++++ initial ubuntu setup/part-2-docker-scripts.sh | 25 +++++ initial ubuntu setup/putty tutorial/README.md | 21 ++++ .../putty tutorial/search-putty-gen.png | Bin 0 -> 48091 bytes 4 files changed, 138 insertions(+) create mode 100644 initial ubuntu setup/part-1-ubuntu-initial-setup.sh create mode 100644 initial ubuntu setup/part-2-docker-scripts.sh create mode 100644 initial ubuntu setup/putty tutorial/README.md create mode 100644 initial ubuntu setup/putty tutorial/search-putty-gen.png diff --git a/initial ubuntu setup/part-1-ubuntu-initial-setup.sh b/initial ubuntu setup/part-1-ubuntu-initial-setup.sh new file mode 100644 index 0000000..eb8835c --- /dev/null +++ b/initial ubuntu setup/part-1-ubuntu-initial-setup.sh @@ -0,0 +1,92 @@ +#!/bin/bash +set -euo pipefail + +######################## +### SCRIPT VARIABLES ### +######################## + +# Name of the user to create and grant sudo privileges +USERNAME=yourusername +RACKNERDHOSTNAME=hostnameyouwant + +# Whether to copy over the root user's `authorized_keys` file to the new sudo +# user. +COPY_AUTHORIZED_KEYS_FROM_ROOT=false + +# Additional public keys to add to the new sudo user +# OTHER_PUBLIC_KEYS_TO_ADD=( +# "ssh-rsa AAAAB..." +# "ssh-rsa AAAAB..." +# ) + +#This is my public key insert your own public key here +OTHER_PUBLIC_KEYS_TO_ADD=( + "ssh-rsa AAAAB3NzaC1S1eqP9n9bAmxw1X3CGP1DM7cJPssLZVB1oA/m6AswYbLl2Un0hzKrQUXK4HPpMn2mzUn3JuyBfHSGDkmpWAa5XQRdARdN0DeUm7Qyu463jRD/QI7Zkft4CxG5H4YTud3Gn2QzpZy3eoDf1tNhxA03xNCkDJ2FS2p11Ov/dxnmCbOBfpxDm1neYZWhcDVimweCFSmZrx62I+Z2jXFIjEQ9caHFCSXyRtVHbpFK0M0LATuTt61mvlBT7WLA0iHwcpj17V0I0As8AtOaoyPuFtGPPVnMPm77nCnrn0VEfDZsb9aGt8BmcUHKSWF+dQAH5tAR42GfSmvTAYABEh7RmBPaRiNvSClZ7QGHkHAi== 96:2c:83:0f:2c:48:fc:cc:fa:89:28:98:4d:f1:91:e6 rsa-key-20200223" +) + +#################### +### SCRIPT LOGIC ### +#################### + +# Add sudo user and grant privileges +useradd --create-home --shell "/bin/bash" --groups sudo "${USERNAME}" + +# Check whether the root account has a real password set +encrypted_root_pw="$(grep root /etc/shadow | cut --delimiter=: --fields=2)" + +if [ "${encrypted_root_pw}" != "*" ]; then + # Transfer auto-generated root password to user if present + # and lock the root account to password-based access + echo "${USERNAME}:${encrypted_root_pw}" | chpasswd --encrypted + passwd --lock root +else + # Delete invalid password for user if using keys so that a new password + # can be set without providing a previous value + passwd --delete "${USERNAME}" +fi + +# Expire the sudo user's password immediately to force a change +# chage --lastday 0 "${USERNAME}" + +# Create SSH directory for sudo user +home_directory="$(eval echo ~${USERNAME})" +mkdir --parents "${home_directory}/.ssh" + +# Copy `authorized_keys` file from root if requested +if [ "${COPY_AUTHORIZED_KEYS_FROM_ROOT}" = true ]; then + cp /root/.ssh/authorized_keys "${home_directory}/.ssh" +fi + +# Add additional provided public keysex +for pub_key in "${OTHER_PUBLIC_KEYS_TO_ADD[@]}"; do + echo "${pub_key}" >> "${home_directory}/.ssh/authorized_keys" +done + +# Adjust SSH configuration ownership and permissions +chmod 0700 "${home_directory}/.ssh" +chmod 0600 "${home_directory}/.ssh/authorized_keys" +chown --recursive "${USERNAME}":"${USERNAME}" "${home_directory}/.ssh" + +# Disable root SSH login with password. 2nd line disables PasswordAuthentication for sudo user +sed --in-place 's/^PermitRootLogin.*/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config +sed --in-place 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config +if sshd -t -q; then + systemctl restart sshd +fi + +# Add exception for SSH and then enable UFW firewall +#ufw allow OpenSSH +#ufw --force enable + +# Make sudo user passwordless sudo +echo "${USERNAME} ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers + +# RackNerd Fix hostname issue +hostnamectl set-hostname $RACKNERDHOSTNAME + +# Change Time Zone to PST +timedatectl set-timezone America/Los_Angeles + +# RackNerd Fix hostname issue continued +# Open the /etc/hosts file and change the old hostname to the new one. +# This one is more complicated to automate so do this manually. diff --git a/initial ubuntu setup/part-2-docker-scripts.sh b/initial ubuntu setup/part-2-docker-scripts.sh new file mode 100644 index 0000000..461b719 --- /dev/null +++ b/initial ubuntu setup/part-2-docker-scripts.sh @@ -0,0 +1,25 @@ +#!/bin/bash +set -euo pipefail + +######################## +### SCRIPT VARIABLES ### +######################## + +# Name of the user to create and grant sudo privileges +USERNAME=yourusername + +# Change Time Zone to PST +timedatectl set-timezone America/Los_Angeles + +apt update +apt install apt-transport-https ca-certificates curl software-properties-common +curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - +add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable" +apt update +apt-cache policy docker-ce +apt install docker-ce +systemctl status docker +usermod -aG docker ${USERNAME} + +curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose +chmod +x /usr/local/bin/docker-compose \ No newline at end of file diff --git a/initial ubuntu setup/putty tutorial/README.md b/initial ubuntu setup/putty tutorial/README.md new file mode 100644 index 0000000..83ab9f5 --- /dev/null +++ b/initial ubuntu setup/putty tutorial/README.md @@ -0,0 +1,21 @@ +This guide was written for Windows Users using PuTTY + +In order to setup SSH access to a linux machine by keys you need to paste in the public key on the linux machine in a file located in /home/yourusername/.ssh/authorized_keys + +To get that public key you need to generate a private key first. + +It’s important that you don’t share your private key. Your public key can be shared without any issues. You only need one private key to SSH to multiple machines. + + +## 1.0 Best Practices +Only use one private key per physical machine. Public key however can be on many Linux machines. If you have a Desktop and a Laptop for example. They both should have their own private keys. However their public keys should be on each of the Linux machines you want to access. + + +## 1.1 Generating Public Private Key Pair + +Download putty somewhere on the Internet and install it. Personally I use ninite.com, check PuTTY, download, then run the installer. + +After putty is installed search for PutTTYgen in Windows and run it. + + + diff --git a/initial ubuntu setup/putty tutorial/search-putty-gen.png b/initial ubuntu setup/putty tutorial/search-putty-gen.png new file mode 100644 index 0000000000000000000000000000000000000000..781b8df81e4830e1401ad6be660bf23d293966d5 GIT binary patch literal 48091 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

$e(=wYXH)2-GB?7mQbLJ^!F*`JTST0}2jB^CZt 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