Last active
May 30, 2021 18:35
-
-
Save fnovoac/009acfefb8135ad8523cbc2bd8eae912 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
################################################################ | |
# copiar la imagen a la SD y luego crear un archivo llamado "SSH" para activar el ssh y configurarlo remotamente | |
################################################################ | |
# programa de configuración (activar SSH, configurar WIFI, etc) | |
sudo raspi-config | |
# nos agregamos como usuarios | |
sudo adduser newuser | |
# al grupo administradores | |
sudo gpasswd -a newuser adm | |
# al gruposudo | |
sudo gpasswd -a newuser sudo | |
# al grupo de video | |
sudo usermod -aG video newuser | |
# debemos loguearnos en otra sesion para comprobar que todo está OK | |
# probramos que tengamos los accesos necesarios | |
sudo whoami | |
# bloqueamos el acceso con el usuario "pi" | |
sudo passwd -l pi | |
# para no tener que ingresar el password dentro de una sesion | |
sudo visudo | |
# al final del arcivo agregamos: | |
newuser ALL=(ALL) NOPASSWD:ALL | |
# actualizamos el sistema | |
sudo apt update -y && sudo apt full-upgrade -y && sudo apt autoremove -y && sudo apt clean -y && sudo apt autoclean -y | |
# configuramos la red | |
sudo nano /etc/dhcpcd.conf | |
sudo nano /etc/resolv.conf | |
# configuramos actualizacions automáticas | |
sudo apt install unattended-upgrades | |
# actualizamos este archivo. | |
sudoedit /etc/apt/apt.conf.d/50unattended-upgrades | |
# tenemos que agregar éstas lineas: | |
"origin=Raspbian,codename=${distro_codename},label=Raspbian"; | |
"origin=Raspberry Pi Foundation,codename=${distro_codename},label=Raspberry Pi Foundation"; | |
# verificamos los servicios que se estan ejecutando | |
systemctl --type=service --state=active | |
# podemos desactivar los servicios que no necesitemos | |
sudo systemctl disable --now bluetooth.service | |
sudo systemctl disable --now alsa-state.service | |
sudo systemctl disable --now alsa-restore.service | |
sudo systemctl disable --now rsyslog.service | |
# podemos verificar los puertos abiertos | |
netstat -an | |
# instalamos un firewall sencillo | |
sudo apt install ufw -y | |
# en caso salga error de IpTables: | |
sudo update-alternatives --set iptables /usr/sbin/iptables-legacy | |
sudo reboot | |
sudo ufw allow 22/tcp comment "SSH" | |
sudo ufw allow 8123/tcp comment "Home Assistant" | |
... | |
sudo ufw enable # comprobamos primero en otra sesion qu tenemos acceso | |
# especificamos los usuarios que tendrán acceso por SSH | |
sudoedit /etc/ssh/sshd_config | |
# agremos el siguiente texto y grabamos | |
AllowUsers user1,user2,user3 | |
# si queremos bloquear los intentos de acceso | al final debemos abrir una nueva sesion y probar | |
sudo apt install fail2ban -y | |
sudoedit /etc/fail2ban/jail.local | |
# agregamos lo siguient al archivo vacío | |
[DEAFULT] | |
bantime = 1h | |
banaction = ufw | |
[sshd] | |
enabled = true | |
sudo systemctl enable --now fail2ban | |
sudo systemctl restart sshd |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment