InicioLinuxMontar Servidor SSH en Linux
Hola Taringueros

En mi tercer post les vengo a dejar este pequeño manual para cofigurar el servicio SSH en Ubuntu:



De rapido explico que el protocolo SSH (Secure Shell) es una herramienta que nos permite conectarnos a equiposremotos (Servidores en Producción) así mismo, nos da la capacidad de llevar a cabo tareas administrativas dentro del mismo como, activar o apagar servicios; también nos permite copiar datos de forma segura, gestionar claves RSA para no escribir claves al conectar a las máquinas y pasar los datos de cualquier otra aplicación por un canal seguro tunelizado mediante SSH.

Como les mostraré el proceso de instalación y configuración de OpenSSH les explico, OpenSSH (Open Secure Shell) es un conjunto de aplicaciones que permiten realizar comunicaciones cifradas a través de una red, usando como base al protocolo SSH.

Instalación de OpenSSH

A partir de este punto empezaremos a descargar los paquetes necesarios para el perfecto funcionamiento de openSSH, de esta manera si usted se encuentra trabajando bajo algún ambiente gráfico, sea KDE o GNOME le pedimos abra una terminal de BASH, por otra parte si
usted se encuentra trabajando bajo linea de comandos no tendrá que hacer nada.

Los paquetes a descargar son los siguientes:

● ssh

La forma en que se instalaran estos paquetes sera tecleando en consola lo siguiente:

root@server1:~$aptget install ssh

Al instalar el servicio ssh, el también instala el servidor y cliente.

Configuración de OpenSSH

OpenSSH dispone de dos conjuntos diferentes de ficheros de configuración: uno completamente dedicado al cliente (ssh, scp y sftp) y otro orientado completamente al servidor.

Archivos de configuración del servidor

La ubicación de los ficheros referentes al servidor se encuentran en la ruta: /etc/ssh/

Dentro del directorio podemos encontrar los siguientes ficheros de configuración:

moduli: Contiene grupos Diffie-Hellman usados para el intercambio de la clave Diffie-Hellman que es imprescindible para la construcción de una capa de transporte seguro. Cuando se intercambian las claves al inicio de una sesión SSH, se crea un valor secreto y compartido que no puede ser determinado por ninguna de las partes individualmente. Este valor se usa para proporcionar la autenticación del host.

ssh_config El archivo de configuración del sistema cliente SSH por defecto. Este archivo se sobrescribe si hay alguno ya presente en el directorio principal del usuario

sshd_config El archivo de configuración para el demonio sshd

ssh_host_dsa_key La clave privada DSA usada por el demonio sshd

ssh_host_dsa_key.pub La clave pública DSA usada por el demonio sshd

ssh_host_rsa_key La clave privada RSA usada por el demonio sshd para la versión 2 del protocolo SSH.

ssh_host_rsa_key.pub La clave pública RSA usada por el demonio sshd para la versión 2 del protocolo SSH.

Archivos de configuración del cliente

La ubicación de los ficheros referentes al cliente se encuentran almacenados en el directorio de trabajo de cada usuario:

Ejemplo: “/home/miusuario/.ssh/”

Dentro del directorio podemos encontrar los siguientes ficheros de configuración:
identity.pub La clave pública RSA usada por ssh para la versión 1 del protocolo SSH.
known_hosts Este archivo contiene las claves de host DSA de los servidores SSH a los cuales el usuario ha accedido. Este archivo es muy importante para asegurar que el cliente SSH está conectado al servidor SSH correcto.

Configuración de fichero sshd_config

La función que desempeñan los ficheros de configuración de openSSH son de vital importancia para la seguridad de nuestro servidor , ya que si no se llegaran a configurar apropiadamente estos ficheros la vulnerabilidad de nuestro servidor seria demasiado sensible a ataques informáticos, es por ello que le enseñaremos la manera apropiada en la que deberá ser configurado este vital fichero.

Blindando el fichero sshd_config

Este fichero lo podrá localizar en en la siguiente ruta
/etc/ssh/

El siguiente paso sera abrir el fichero con la ayuda del editor de textos VI
[root@server1:~$ vim /etc/ssh/sshd_config

A partir de este punto comenzaremos a blindar SSH.

Cambiando el puerto

SSH tiene asignado por defecto el puerto 22, esto es algo que conocen todos nuestros posibles atacantes , por lo que es una buena idea cambiarlo.

Para modificar esta opción y las siguientes que iremos mencionando editaremos el fichero de configuración sshd_config, que por defecto se encuentra en el directorio /etc/ssh/. Se recomienda usar un puerto cualquiera por encima del 1024, así que usted puede elegir el que quiera. En el ejemplo usaremos el 59345, por lo que tendrá que editar el parámetro Port del fichero de configuración el cual deberá quedar así:

Port 59345


Protocolos ssh


Hay dos versiones de ssh en cuanto a su protocolo de comunicación, estas son:

● Versión 1
● Versión 2.

La versión 1 de openSSH hace uso de varios algoritmos de cifrado de datos mas sin embargo, algunos de estos algoritmos han dejado de ser mantenidos por sus creadores y por lo tantopresenta serios huecos de seguridad que potencialmente permite a un intruso insertar datos en el canal de comunicación. Para evitar el uso del protocolo 1 y sus posibles ataques a este, basta con indicar que solo admita comunicaciones de ssh basadas en el protocolo 2.

Por default en debian/ubuntu ya viene configurado en el versión 2 del protocolo.

Parámetro PermitRootLogin

Este es quizá el parámetro mas importante de seguridad que podemos indicar para blindar nuestro servidor. Prácticamente la mayoría de sistemas operativos Linux crean por defecto al usuario root , es por ello que la mayoría de los ataques informáticos se concentran en atacar al equipo a través de la cuenta de root y mucho mas si la cuenta tiene asignada una contraseña débil, una manera de deshabilitar el logeo al sistema a través de la cuenta de root es poner en 'no' la variable PermitRootLogin , con esto 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 un su – cambiarnos a la cuenta de root.

Para llevar a cabo estos cambios tendrá que editar el parámetro PermitRootLogin del fichero de configuración el cual deberá quedar de la siguiente manera:

PermitRootLogin no

Parámetro X11Forwarding

Si nuestro servidor no tienen entorno gráfico instalado, o no queremos que los usuarios se conecten a él, definiremos esta opción en el fichero de configuración:

Para llevar a cabo estos cambios tendrá que editar el parámetro X11Forwarding del fichero de configuración el cual deberá quedar de la siguiente manera:

X11Forwarding no

Parámetro LoginGraceTime

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. Si somos el único
usuario del sistema considero que con 20 o 30 segundos es mas que suficiente.

Para llevar a cabo estos cambios tendrá que editar el parámetro LoginGraceTime del fichero de configuración el cual deberá quedar de la siguiente manera:

LoginGraceTime 30

Permitiendo AllowUsers
Este parámetro solo permitirá la conexión a los usuario que este registrados del archivo de configuración del openssh, el parámetro no existe nosotros lo podemos agregar el parámetro al final del archivo.

AllowUsers curso

Donde curso sería el nombre del usuario.

Guardamos la nueva configuración y con esto ya tendremos configurado nuestro servicio OpenSSH.

Iniciando el servicio SSH

Llegado a este punto usted ya deberá contar con las configuraciones de seguridad apropiadas, por lo que solo faltaría iniciar el servicio de SSH.

Para iniciar el servicio de SSH tendrá que teclear en consola y como root lo siguiente:

root@server1:~# /etc/init.d/ssh restart

*Restarting OpenBSD Secure Shell server sshd [ OK ]

Igualmente existen otras opciones:

start Inicia el servicio
stop Detiene el servicio

restart Reinicia el servicio.-La diferencia con reload radica en que al ejecutar un restart este mata todos los procesos relacionado con el servicio y los vuelve a generar de nueva cuenta
reload Recarga el servicio.-La diferencia con restart radica en que al ejecutar un reload este solamente carga las actualizaciones hechas al fichero de configuración del servicio sin necesidad de matar los procesos relacionados con el mismo, por lo que podría entenderse que hace el ambio en caliente.

Para establecer la conexión SSH a nuestro Servidor Ubuntu:


1. Desde Linux: ir a la consola y escribir " [root@localhost]# ssh usuario@ipservidor, en caso de estar por default el puerto 22
pero como nosotros cambiamos el puerto: " [root@localhost]# ssh -p[puerto] usuario@ipservidor

Bueno eso es todo en este basico manual

Si les sirvie dejen comentarios

Saludos
Datos archivados del Taringa! original
14puntos
4,994visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
14visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

d
dukker🇦🇷
Usuario
Puntos0
Posts11
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.