#CREATING YOUR OPENSSH KEY IF YOU DON'T ALREADY HAVE IT ON YOUR LOCAL MACHINE
ssh-keygen -t ed25519 -C "name"
#THEN COPY PUBLIC SSH KEY TO YOUR SERVER
ssh-copy-id -i ~/.ssh/name_id_ed25519.pub Username@000.000.000
Update System and Installation of Basic Validator Package
# Login to the server as "root user" and add a new admin user
adduser "new_user"
# Add your new user to sudo group
usermod -aG sudo "new_user"
# Then swicth from your root to the new User you created
su "new_user"
cd #to go back to home directory
# upgrade system packages
sudo apt-get update && sudo apt upgrade -y
sudo apt install mc tmux curl wget smartmontools
# disable root login, disable password authentication, use ssh keys only
sudo sed -i 's|^PermitRootLogin .*|PermitRootLogin no|' /etc/ssh/sshd_config
sudo sed -i 's|^ChallengeResponseAuthentication .*|ChallengeResponseAuthentication no|' /etc/ssh/sshd_config
sudo sed -i 's|^#PasswordAuthentication .*|PasswordAuthentication no|' /etc/ssh/sshd_config
sudo sed -i 's|^#PermitEmptyPasswords .*|PermitEmptyPasswords no|' /etc/ssh/sshd_config
sudo sed -i 's|^#PubkeyAuthentication .*|PubkeyAuthentication yes|' /etc/ssh/sshd_config
sudo systemctl restart sshd
# install and configure firewall
sudo apt install -y ufw
sudo ufw default allow outgoing
sudo ufw default deny incoming
sudo ufw allow "new_ssh_port"
sudo ufw allow 9100
sudo ufw allow 26656
sudo ufw allow 26657
# make sure you expose ALL necessary ports, only after that enable firewall
sudo ufw enable
# install fail2ban
sudo apt install -y fail2ban
# now you can logout (exit) and login again using ssh "new_username"@IP_ADDRESS