Herramientas de usuario

Herramientas del sitio


notas:openssh

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
notas:openssh [2012/08/22 13:15] – [Compartir conexion SSH] cayunotas:openssh [2017/08/17 15:10] (actual) – [Eliminar banner de OpenSSH en Debian] cayu
Línea 1: Línea 1:
 ====== OpenSSH ====== ====== OpenSSH ======
 +===== Configuración general =====
 +== TCPKeepAlive yes ==
 +Significa que el servidor sshd enviara mensajes de keepalive a el cliente después de que detecta alguna inactividad (idle), este método puede ser spoofable.
 + 
 +== UsePrivilegeSeparation yes ==
 +Significa que después de que la sesión ssh se ha establecida se pasaran los privilegios de ese proceso a el usuario de quien inicie la conexión, sin
 +esto el proceso estará a nombre de root, muy bueno esto para evitar elevaciónn de privilegios.
  
 +== LoginGraceTime 30 ==
 +El número indica la cantidad de segundos en que la pantalla de login estará disponible para que el usuario capture su nombre de usuario y contraseña, si no lo hace el login se cerrará, evitando así dejar por tiempo indeterminado pantallas de login sin que nadie las use, o peor aun, que alguien este intentando mediante un script varias veces el adivinar un usuario y contraseña. Aqui conviene identificar en nuestros usuarios el tiempo promedio que tardan en ingresar su usuario y contraseña y darles unos cuantos segundos más de margen por los usuarios lentos para que ingresen sus credenciales. Si somos el único usuario del sistema considero que con 20 o 30 segundos es mas que suficiente.
 +
 +== PermitRootLogin no ==
 +
 +El usuario root no tendrá permiso de acceder mediante ssh y por lo tanto cualquier intento de ataque directo a root será inútil. Con esto siempre tendremos que ingresar como un usuario normal y ya estando adentro entonces mediante su o sudo podremos usar funciones de root.
 +
 +== MaxAuthTries 2 ==
 +El número indica la cantidad de veces que podemos equivocarnos en ingresar el usuario y/o contraseña, en este caso después de dos intentos, se perderá o cerrará la conexión. Claro, es totalmente posible volver a intentarlo, pero como son dos intentos por vez, evitaremos ataques basados en la persistencia de la conexión, como se perderá al tercer intento de conexión, el ataque cesará.
 +
 +== MaxStartups 3 ==
 +El número indica la cantidad de pantallas de login, o cantidad de conexiones simultaneas de login que permitirá el sshd por ip que intente conectarse. Hay ataques muy efectivos que dividen el ataque en decenas y puede ser que en cientos (si el sistema atacado lo permite) de conexiones de login. Es decir, el ataque divide en una gran cantidad de logins los intentos por ingresar, aumentando sus posibilidades de más rapidamente adivinar al usuario y contraseña. Con esta directiva limitamos a tan solo 3 pantallas de login. Que quede claro, una vez logueados en el sistema, es posible tener mas de 3 terminales de ssh, se refiere exclusivamente a pantallas de login.
 +
 +== AllowUsers ==
 +En sistemas donde se tiene varios usuarios, quizás existan varios que solo pueden acceder desde la LAN por ejemplo, o quizás solo desde ciertos equipos. Con esta directiva podemos indicar los usuarios que pueden ingresar via ssh. Si solo indicamos al usuario:
 +<code>
 +AllowUsers sergio
 +</code>
 +El usuario sergio podrá ingresar desde cualquier PC en cualquier lugar, no se está validando el host.
 +Si se quiere mas seguridad, es posible indicar también el host mediante el símbolo @
 +  * **Solo desde la IP indicada**
 +    * AllowUsers sergio@192.168.0.25
 +  * **Toda la red indicada**
 +    * AllowUsers sergio@192.168.0.*
 +  * **sergio desde su equipo del dominio**
 +    * AllowUsers sergio@pc.dominio.com
 +  * **sergio desde cualquier equipo del dominio indicado**
 +    * AllowUsers sergio@*.dominio.com
 +
 +== AllowGroups ==
 +Idem a la directiva anterior, pero define que grupos de usuarios se pueden logguear por SSH.
 +<code>
 +AllowGroups linux-admin linux-ssh
 +</code>
 +
 +
 +
 +===== TIPS varios =====
 ===== Autenticación con clave pública/privada (RSA) ===== ===== Autenticación con clave pública/privada (RSA) =====
  
Línea 113: Línea 158:
  
 ===== Eliminar banner de OpenSSH en Debian ===== ===== Eliminar banner de OpenSSH en Debian =====
- 
 <code> <code>
 DebianBanner " " DebianBanner " "
 +</code>
 +===== Actualizar en masa los host keys =====
 +Ejemplo si usamos algun sistema que nos deja la configuración en archivos con nombres de ip y queremos que se actualicen todas sus host keys podemos ejecutar el siguiente comando :
 +<code>
 +for i in `find  |grep -v CVS | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b"` ; do ssh-keyscan $i >> ~/.ssh/known_hosts ; done
 </code> </code>
notas/openssh.1345641324.txt.gz · Última modificación: 2012/08/22 13:15 por cayu