Aprenent SSH: Bones practiques a realitzar en un Servidor SSH
En aquest present, sisè i darrer post, de la nostra sèrie de publicacions sobre Aprenent SSH abordarem de forma pràctica, la configuració i ús de les opcions especificades al fitxer de configuració d'OpenSSH que es manegen del costat del servidor SSH, és a dir, l'arxiu «SSHD Config» (sshd_config). Les quals, abordem al lliurament anterior.
De manera tal, que puguem conèixer de forma breu, senzilla i directa, algunes de les millors bones pràctiques (recomanacions i consells) a l'hora de configurar un servidor SSH, tant a la llar, com a una oficina.
Aprenent SSH: Opcions i paràmetres del fitxer SSHD Config
I abans d'iniciar el tema d'avui, sobre les millors «bones pràctiques a aplicar a les configuracions d'un servidor SSH», deixarem alguns enllaços a publicacions relacionades, per a la posterior lectura:
Índex
- 1 Bones pràctiques en un servidor SSH
- 1.1 Quines bones pràctiques apliquen a l'hora de configurar un servidor SSH?
- 1.1.1 Especificar els usuaris que poden iniciar sessió SSH amb l'opció AllowUsers
- 1.1.2 Indiqueu a SSH per quina interfície de xarxa local escoltareu amb l'opció ListenAddress
- 1.1.3 Establiu l'ingrés per SSH mitjançant claus amb l'opció PasswordAuthentication
- 1.1.4 Desactivar l'inici de sessió com a root mitjançant SSH amb l'opció PermitRootLogin
- 1.1.5 Canviar el port per defecte de SSH amb l'opció Port
- 1.2 Altres opcions útils a establir
- 1.3 Altres bones pràctiques
- 1.1 Quines bones pràctiques apliquen a l'hora de configurar un servidor SSH?
- 2 Resum
Bones pràctiques en un servidor SSH
Quines bones pràctiques apliquen a l'hora de configurar un servidor SSH?
A continuació, i basant-nos en les opcions i paràmetres del fitxer «SSHD Config» (sshd_config), abans vists al post anterior, aquestes serien algunes de les millors bones pràctiques a realitzar quant a la configuració del dit arxiu, per assegurar tan bé com sigui possible les nostres connexions remotes, entrants i sortints, sobre un determinat Servidor SSH:
Especificar els usuaris que poden iniciar sessió SSH amb l'opció AllowUsers
Atès que aquesta opció o paràmetre no sol no venir inclosa per defecte en aquest fitxer, es pot inserir al final del mateix. Fent ús d'una llista de patrons de nom d'usuari, separats per espais. De manera tal, que, si s'especifica, l'inici de sessió, llavors només es permetrà el mateix per a les coincidències de noms dusuari i host que coincideixin amb un dels patrons configurats.
Per exemple, tal com es veu a continuació:
AllowUsers *patron*@192.168.1.0/24 *@192.168.1.0/24 *.midominio.com *@1.2.3.4
AllowGroups ssh
Indiqueu a SSH per quina interfície de xarxa local escoltareu amb l'opció ListenAddress
Per això, cal habilitar (descomentar) la opció ListenAddress, que ve de forma predeterminada amb el valor «0.0.0.0», però en realitat funciona a manera ALL, és a dir, escoltar per totes les interfícies de xarxa disponibles. Per tant, després s'ha d'establir aquest valor de manera que s'especifiqui quin o quins adreces IP locals seran utilitzades pel programa sshd per escoltar peticions de connexió.
Per exemple, tal com es veu a continuació:
ListenAddress 129.168.2.1 192.168.1.*
Establiu l'ingrés per SSH mitjançant claus amb l'opció Autenticació de contrasenya
Per això, cal habilitar (descomentar) la opció Autenticació de contrasenya, que ve de forma predeterminada amb el valor «yes». I després, establir aquest valor com «No», per exigir així la utilització de claus pública i privada per aconseguir l'autorització d'accés a una màquina en específic. Aconseguint que, únicament puguin ingressar els usuaris remots, des de l'o els ordinadors, que siguin autoritzats prèviament. Per exemple, tal com es veu a continuació:
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no
PubkeyAuthentication yes
Desactivar l'inici de sessió com a root mitjançant SSH amb l'opció PermitRootLogin
Per això, cal habilitar (descomentar) la opció PermitRootLogin, que ve de forma predeterminada amb el valor «prohibit-password». No obstant això, si es vol que de forma total, no es permeti que un usuari root arrenqui una sessió SSH, el valor adequat a configurar és «No». Per exemple, tal com es veu a continuació:
PermitRootLogin no
Canviar el port per defecte de SSH amb l'opció Port
Per això, cal habilitar (descomentar) la opció Port, que ve per defecte amb el valor «22». No obstant això, és vital canviar aquest port a qualsevol altre disponible, per així, mitigar i evitar el nombre d'atacs, manuals o de força bruta, que puguin fer-se per aquest port molt conegut. És important assegurar-se que aquest nou port està disponible i pot ser usat per les altres aplicacions que es connectaran al nostre servidor. Per exemple, tal com es veu a continuació:
Port 4568
Altres opcions útils a establir
Finalment, i atès que, el programa SSH és massa ampli, i al lliurament anterior ja abordem més a detalls cadascuna de les opcions, a continuació només mostrarem algunes opcions més, amb alguns valors que poguessin arribar a ser adequats en múltiples i variats casos dús.
I aquestes són les següents:
- Banner /etc/issue
- ClientAliveInterval 300
- ClientAliveCountMax 0
- LoginGraceTime 30
- LogLevel INFO
- MaxAuthTries 3
- MaxSessions 0
- MaxStartups 3
- PermitEmptyPasswords no
- PrintMotd yes
- PrintLastLog yes
- Modes estrictes Sí
- SyslogFacility AUTH
- X11 Reenviament sí
- X11DisplayOffset 5
Nota: Tingueu en compte que, depenent del nivell d'experiència i expertícia del o els sysadmins i els requeriments de seguretat de cada plataforma tecnològica, moltes d'aquestes opcions poden amb tot dret i lògica variar de maneres molt diferents. A més, que altres opcions molt més avançades o complexes poden arribar a habilitar-se, perquè són útils o necessàries en diferents entorns d'operació.
Altres bones pràctiques
entre altres bones practiques a implementar en un Servidor SSH podem esmentar les següents:
- Configurar una notificació d'advertiment per correu per informar sobre totes o determinades connexions SSH.
- Protegir l'accés SSH als nostres servidors contra atacs de força bruta fent ús de l'eina Fail2ban.
- Revisar periòdicament amb l'eina Nmap als servidors SSH i altres, a la recerca de possibles ports oberts no autoritzats o requerits.
- Reforçar la seguretat de la plataforma informàtica mitjançant la instal·lació d'un IDS (Sistema de Detecció d'Intrusions) i un IPS (Sistema de Prevenció d'intrusions).
Resum
En resum, amb aquest darrer lliurament sobre «Aprenent SSH» finalitzem el contingut explicatiu sobre tot allò relacionat amb OpenSSH. Segurament, en un curt temps, estarem compartint una mica més de coneixement essencial sobre el protocol SSH, i pel que fa a la seva ús per consola mitjançant Shell Scripting. Així que, esperem que aquestes «bones practiques en un servidor SSH», hagin aportat molt valor, tant personalment com professionalment, a l'hora d'utilitzar GNU/Linux.
Si us ha agradat aquesta publicació, no deixeu de comentar-la i de compartir-la amb altres. I recorda, visitar la nostra «pàgina d'inici» per explorar més notícies, a més d'unir-te al nostre canal oficial de Telegram de Des de Linux, O aquest grup per a més informació sobre el tema actual.
2 comentaris, deixa el teu
Espero amb ànsies la segona part d'aquest article on t'estenguis més sobre l'últim punt:
Reforçar la seguretat de la plataforma informàtica mitjançant la instal·lació d'un IDS (Sistema de Detecció d'Intrusions) i un IPS (Sistema de Prevenció d'intrusions).
Gràcies!
Salutacions, Lhoqvso. Estaré pendent per a la realització. Gràcies per visitar-nos, llegir els nostres continguts i comentar-ho.