#!/usr/bin/bash ### for RPI # quickstartsh="/usr/local/bin/quickstart.sh" # cronline="@reboot $quickstartsh && crontab -l | grep -v $quickstartsh > /etc/crontab" # cat quickstart.sh > $quickstartsh # chown root:root $quickstartsh # chmod u+x $quickstartsh # echo $cronline >> /etc/crontab ### print_ylw(){ echo -e "\033[33m$1\033[0m" } function is_x64 { print_ylw "[ determine architecture ]" arch=$(lscpu | grep -i architecture | cut -d ":" -f2) if [ $arch != "x86_64" ]; then false else true fi } function choose_packages { if is_x64 ; then print_ylw "[ install with docker ]" packages="curl openssh-server iptables git nmap tcpdump net-tools wireguard tmux mc docker docker-compose" else print_ylw "[ install without docker ]" packages="curl openssh-server iptables git nmap tcpdump net-tools wireguard tmux" fi } function disable_ipv6 { print_ylw "[ ipv6 turn off ]" cat << EOF >> /etc/sysctl.conf net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6=1 net.ipv4.ip_forward=1 EOF sysctl -p } function sshd_cfg_bup { print_ylw "[ sshd_config backup ]" cat /etc/ssh/sshd_config > /etc/ssh/sshd_config_BUP } function sshd_config { print_ylw "[ configuring sshd ]" cat << EOF > /etc/ssh/sshd_config Include /etc/ssh/sshd_config.d/*.conf Port 22 ListenAddress 0.0.0.0 PermitRootLogin yes PubkeyAuthentication yes PasswordAuthentication no PermitEmptyPasswords no KbdInteractiveAuthentication no UsePAM yes X11Forwarding yes PrintMotd no AcceptEnv LANG LC_* Subsystem sftp /usr/lib/openssh/sftp-server EOF } function add_authorized_keys { print_ylw "[ appending ssh-keys ]" echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDAPCabE6gKZkksoYdCCclvqBwPLMHM7Wasi3OtzgYmfyJzCPy2twMBZ35HbmuXd0oUE6IBScosGwgs3+5EQ/21b5BUosdZy82DDGG8vXwY2oxqd0U3GzebLmks8TRvdnZ2KXyMlbM9tB5lxrT8kaCdNWtj3Zbipjj2U6LDfvl9J5qojW4F7sNuh3qQ5T7FJA0R/X3F2K3VVk+ZD0PXy1pIauXck3K7iHtTjjHmBw73Ym0d+cg8MEOY7Y+tU4s8f2dOHN9VOSFONoYw0tOxUzZwYGNplEj3xDFUTsbm5wpWd6rGF9ilAqAnwB5Uwbq39ThikKi72PwIFr1e4QIf1AIOdci+yfrezZ/CwHw3AgaCY1PMbX50EZfa3Y9YhZH4bT7mVMCOVkOtIURiHEdcGeqjCe73eizTvDPE+0/xLPqIkJLI9Q4EeJESzRDNUkGiL6/L7Yi38pY+TqRz2dpyvuN9CHAmNPc9kmU9sdOOfAvSv7wGzTG3zB5NCU7UlWW3wPRYLTvYbRXHDROF8OlFjhLYGG6AYdJbNXTfQFHymKOJRjWiVaeBKMlAmhosdlEyRN1zYBb0bHdptEWpsqjv6mPQ3W20pS1h4zRT2P71TsA7UPlHTAeLgUuv9NW49VpdoKBId8cfJOmLesft1bGHfjgg8UNTbCpnOi0lRjoT4vxBPQ==" >> ~/.ssh/authorized_keys echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAEAQDMT0hLA/p00VWu98mPQg0aSe/9FbP/wCyg2YGGHEffFPs8zmfJAa6xIAFM3mIc2FhcNPOrAdbA/YpqxrA/3kf7G2JmaDSlRxlUeWXHvXkEVFvfEV2ItKp3sK4pj1kfw2b8K1Ymz5Q25ko51Z9crfBy5Y8Vsz9mjVjzh8t+gfhDevzz6rUiOOzViQIclrbqSHMBWkL2WRTOL8nw5CGz0JgYgdrgX1rLEMYMr6WGV+qRxiIgLc3U6odnJ/m3szU7KNL9+rkreJvcukLIJtRunJAdIc+ann4gJFXDgjr/s0+wh3xL3HQAhOJflgw7FOTSh3MEerMC72d6DS01wJc6QY291cTPCqHBFrtAFBcupoHQCLgcTmYVB3BKjGnKHCXtOQRjYvS5Oe+bQQccv3csxIn2xlz0yVBwC+10fzjDixiRwJyQ75hcz9KEyur52Dc9hIC6tJ9CSFN9IMDoFXBeav41S2gGyjMxtuxxcbY5YlsGT+XeTpArue+MPyovyng+XXO8GSCyOxymHXivqCqx1mHOiL976gMZ/m09FoEWyd8cLLn56HcQlURs04htn9ghYKGZOjBnoyCfY5CRLFE/O+Nmbl37roRKZvqNJjx2+FTbHZ8qos+JEZBW+nEg4gp85LnygSdFyNPfkVPVccI4HLwdm1FVR+O8kN5Q7zrOllOPoj1rsPnavjtCd6UXOG5wlLsliHDHPmJwkEvBaxcEh3N6l4cZeD7teMlfE4XDxKTRXRZd7IVHGrGIP+dqd+RKVezObz8IqBTCoDwBkXqZudLdlXULRsaEuYo+HaGjBug0dQRYbFTllj52ypnjfeiWRP6yvvlcLHT3GpDbbW8kzMXlwYmlyQQbgQf/Z4cU10PHqJbGOlQlEgN7gUsAI+Isl9UaEx5haDnXapbM4PFxGzhtjZ+YuIMYC8b19oXjKm0oLZhwN3S/vB54pPnmb3OQH+vc6pMZPeHX6G3sH9vwVe1qYlBspV5ICVrpV27j4f7cnCH7MJpcanw3VHqcSn0gC30EQBbi+iCOyMJZy2x0P2FZ8W5dvIarewoUu/dTkQ+hGea5Cs4wSW53YhEK0rEKr8HYRXhmrEtnf4B8MhJ5DGBzHueKOYAM5BdwXp7GU4xPGWq5g0kTCSqGOQJWVDOdYyqsdhNned2rg+HybVDyb+XaF8j3aa48qN02I2bhbOr0iJEfBJzjVPcsB61M/VQ3xbt6+AET5wqAbZu1pVH+Dion4YyYjWy1DX802h2WNDvOzRwC82qeOUbZf3CTolBeKucdnLx5o8w9wsjxK80ArxRFx472Q45QkE61NLgcSfBHy+JywOxdP/fc0bwI/sFtAqEX5LCEkgqtB8r1w9bzCeeH u0_a294_trr" } function restart_sshd { print_ylw "[ restart sshd ]" systemctl restart sshd } function install_packages { print_ylw "[ packages installation: $packages ]" apt install $packages -y } disable_ipv6 sshd_cfg_bup sshd_config add_authorized_keys restart_sshd choose_packages install_packages print_ylw "[ DONE ]"