Browse Source

Merge branch '55-deb-ni' into 'master'

Resolve "Debian-family Noninteractive scripts"

Closes #55

See merge request cyber5k/mistborn!32
merge-requests/32/merge
Steven Foerster 6 years ago
parent
commit
3887ae78de
  1. 14
      scripts/install.sh
  2. 4
      scripts/subinstallers/cockpit.sh
  3. 4
      scripts/subinstallers/docker.sh
  4. 8
      scripts/subinstallers/docker_manual.sh
  5. 2
      scripts/subinstallers/iptables.sh
  6. 2
      scripts/subinstallers/openssl.sh
  7. 4
      scripts/subinstallers/wireguard.sh
  8. 2
      scripts/update.sh

14
scripts/install.sh

@ -2,6 +2,8 @@
set -e set -e
export DEBIAN_FRONTEND=noninteractive
## ensure run as nonroot user ## ensure run as nonroot user
#if [ "$EUID" -eq 0 ]; then #if [ "$EUID" -eq 0 ]; then
MISTBORN_USER="mistborn" MISTBORN_USER="mistborn"
@ -97,7 +99,7 @@ git submodule update --init --recursive
sudo apt-get update sudo apt-get update
# install figlet # install figlet
sudo apt-get install -y figlet sudo -E apt-get install -y figlet
# get os and distro # get os and distro
source ./scripts/subinstallers/platform.sh source ./scripts/subinstallers/platform.sh
@ -114,7 +116,7 @@ fi
# SSH Server # SSH Server
sudo apt-get install -y openssh-server sudo -E apt-get install -y openssh-server
sudo sed -i 's/#PasswordAuthentication.*/PasswordAuthentication yes/' /etc/ssh/sshd_config sudo sed -i 's/#PasswordAuthentication.*/PasswordAuthentication yes/' /etc/ssh/sshd_config
sudo sed -i 's/PasswordAuthentication.*/PasswordAuthentication yes/' /etc/ssh/sshd_config sudo sed -i 's/PasswordAuthentication.*/PasswordAuthentication yes/' /etc/ssh/sshd_config
sudo sed -i 's/#PermitRootLogin.*/PermitRootLogin prohibit-password/' /etc/ssh/sshd_config sudo sed -i 's/#PermitRootLogin.*/PermitRootLogin prohibit-password/' /etc/ssh/sshd_config
@ -125,13 +127,13 @@ sudo systemctl enable ssh
sudo systemctl restart ssh sudo systemctl restart ssh
# Additional tools fail2ban # Additional tools fail2ban
sudo apt-get install -y dnsutils fail2ban sudo -E apt-get install -y dnsutils fail2ban
# Install kernel headers # Install kernel headers
if [ "$DISTRO" == "ubuntu" ] || [ "$DISTRO" == "debian" ]; then if [ "$DISTRO" == "ubuntu" ] || [ "$DISTRO" == "debian" ]; then
sudo apt install -y linux-headers-$(uname -r) sudo -E apt install -y linux-headers-$(uname -r)
elif [ "$DISTRO" == "raspbian" ]; then elif [ "$DISTRO" == "raspbian" ]; then
sudo apt-get install -y raspberrypi-kernel-headers sudo -E apt install -y raspberrypi-kernel-headers
fi fi
# Wireugard # Wireugard
@ -143,7 +145,7 @@ sudo systemctl enable docker
sudo systemctl start docker sudo systemctl start docker
# Unattended upgrades # Unattended upgrades
sudo apt-get install -y unattended-upgrades sudo -E apt-get install -y unattended-upgrades
# Cockpit # Cockpit
if [[ "$MISTBORN_INSTALL_COCKPIT" =~ ^([yY][eE][sS]|[yY])$ ]] if [[ "$MISTBORN_INSTALL_COCKPIT" =~ ^([yY][eE][sS]|[yY])$ ]]

4
scripts/subinstallers/cockpit.sh

@ -17,11 +17,11 @@ elif [ "$DISTRO" == "raspbian" ]; then
fi fi
sudo apt-get install -y cockpit sudo -E apt-get install -y cockpit
if $(sudo apt-cache show cockpit-docker > /dev/null 2>&1) ; then if $(sudo apt-cache show cockpit-docker > /dev/null 2>&1) ; then
# no longer supported upstream in Ubuntu 20.04 # no longer supported upstream in Ubuntu 20.04
sudo apt-get install -y cockpit-docker sudo -E apt-get install -y cockpit-docker
fi fi
sudo cp ./scripts/conf/cockpit.conf /etc/cockpit/cockpit.conf sudo cp ./scripts/conf/cockpit.conf /etc/cockpit/cockpit.conf

4
scripts/subinstallers/docker.sh

@ -4,11 +4,11 @@
figlet "Mistborn: Installing Docker" figlet "Mistborn: Installing Docker"
sudo apt update sudo apt update
sudo apt install -y python python3-pip python3-setuptools libffi-dev python3-dev libssl-dev sudo -E apt install -y python python3-pip python3-setuptools libffi-dev python3-dev libssl-dev
if [ "$DISTRO" == "ubuntu" ] && [ "$VERSION_ID" == "20.04" ]; then if [ "$DISTRO" == "ubuntu" ] && [ "$VERSION_ID" == "20.04" ]; then
echo "Automated Docker install" echo "Automated Docker install"
sudo apt-get install -y docker-compose sudo -E apt-get install -y docker-compose
else else
echo "Manual Docker installation" echo "Manual Docker installation"
source ./scripts/subinstallers/docker_manual.sh source ./scripts/subinstallers/docker_manual.sh

8
scripts/subinstallers/docker_manual.sh

@ -2,7 +2,7 @@
# dependencies # dependencies
echo "Installing Docker dependencies" echo "Installing Docker dependencies"
sudo apt-get install -y \ sudo -E apt-get install -y \
apt-transport-https \ apt-transport-https \
ca-certificates \ ca-certificates \
curl \ curl \
@ -42,9 +42,9 @@ echo "Installing docker"
sudo apt-get update sudo apt-get update
if [ "$DISTRO" == "ubuntu" ] || [ "$DISTRO" == "debian" ]; then if [ "$DISTRO" == "ubuntu" ] || [ "$DISTRO" == "debian" ]; then
sudo apt-get install -y docker-ce docker-ce-cli containerd.io sudo -E apt-get install -y docker-ce docker-ce-cli containerd.io
elif [ "$DISTRO" == "raspbian" ]; then elif [ "$DISTRO" == "raspbian" ]; then
sudo apt install -y --no-install-recommends \ sudo -E apt install -y --no-install-recommends \
docker-ce \ docker-ce \
cgroupfs-mount cgroupfs-mount
fi fi
@ -59,7 +59,7 @@ echo "Installing Docker Compose"
# sudo chmod +x /usr/local/bin/docker-compose # sudo chmod +x /usr/local/bin/docker-compose
#elif [ "$DISTRO" == "raspbian" ]; then #elif [ "$DISTRO" == "raspbian" ]; then
# Install required packages # Install required packages
sudo apt install -y python-backports.ssl-match-hostname sudo -E apt install -y python-backports.ssl-match-hostname
# Install Docker Compose from pip # Install Docker Compose from pip
# This might take a while # This might take a while

2
scripts/subinstallers/iptables.sh

@ -102,7 +102,7 @@ if [ ! "$(dpkg-query -l iptables-persistent)" ]; then
echo iptables-persistent iptables-persistent/autosave_v6 boolean true | sudo debconf-set-selections echo iptables-persistent iptables-persistent/autosave_v6 boolean true | sudo debconf-set-selections
# install # install
sudo apt-get install -y iptables-persistent ipset sudo -E apt-get install -y iptables-persistent ipset
else else
echo "Saving iptables rules" echo "Saving iptables rules"
sudo bash -c "iptables-save > /etc/iptables/rules.v4" sudo bash -c "iptables-save > /etc/iptables/rules.v4"

2
scripts/subinstallers/openssl.sh

@ -8,7 +8,7 @@ CRT_PATH="$KEY_FOLDER/$CRT_FILE"
KEY_PATH="$KEY_FOLDER/$KEY_FILE" KEY_PATH="$KEY_FOLDER/$KEY_FILE"
# ensure openssl installed # ensure openssl installed
sudo apt-get install -y openssl sudo -E apt-get install -y openssl
# make folder # make folder
mkdir -p $KEY_FOLDER mkdir -p $KEY_FOLDER

4
scripts/subinstallers/wireguard.sh

@ -11,7 +11,7 @@ if ! $(sudo apt-cache show wireguard > /dev/null 2>&1) ; then
# Wireguard # Wireguard
if [ "$DISTRO" == "raspbian" ]; then if [ "$DISTRO" == "raspbian" ]; then
echo "Adding Wireguard repo keys" echo "Adding Wireguard repo keys"
sudo apt-get install -y dirmngr sudo -E apt-get install -y dirmngr
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8B48AD6246925553 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8B48AD6246925553
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7638D0442B90D010 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7638D0442B90D010
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 04EE7237B7D453EC sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 04EE7237B7D453EC
@ -29,4 +29,4 @@ fi
echo "Installing Wireguard" echo "Installing Wireguard"
sudo apt-get update sudo apt-get update
sudo apt-get install -y openresolv wireguard sudo -E apt-get install -y openresolv wireguard

2
scripts/update.sh

@ -2,6 +2,8 @@
set -e set -e
export DEBIAN_FRONTEND=noninteractive
sudo git -C /opt/mistborn pull sudo git -C /opt/mistborn pull
sudo git -C /opt/mistborn submodule update --init --recursive sudo git -C /opt/mistborn submodule update --init --recursive

Loading…
Cancel
Save