#!/bin/bash # basics APT_PKGS="sudo net-tools fail2ban " # network login and filesystems # don't need this for hosted vms #APT_PKGS+="nfs-common openssh-server smbclient cifs-utils " # editors, convenience APT_PKGS+="emacs-nox screen htop " # dev APT_PKGS+="build-essential python3 " # version control APT_PKGS+="git-core subversion git-svn mercurial " # net utils APT_PKGS+="wget curl links " # KVM packages, add user to libvirt group to talk to hypervisor # APT_PKGS+="libvirt-clients libvirt-daemon libvirt-daemon-system-systemd libvirt-daemon-system virtinst libosinfo-bin virt-manager " # # docker # APT_PKGS+="docker " apt-get install $APT_PKGS # adduser # NB: useradd is a low-level util # usermod -G sudo # turn off rootlogin in /etc/ssh/sshd_config # sed -i 's/^PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config # possibly disable root pwd? # sed -i 's/^\(root:\)[^:]*\(:.*\)/\1\*\2/g' shadow # hostnamectl set-hostname # modify /etc/hosts # clear /etc/motd echo -n > /etc/motd # dot files cat >> ~/.screenrc <> ~/.emacs <