SSH Comandos Flashcards
Como se instala el servidor
apt install openssh-server
Como se instala el cliente y el servidor
apt install ssh
Qué fichero de configuración hay en el servidor
/etc/ssh/sshd_config
- Port 22
- ListenAddress 192.168.0.22
- PermitRootLogin no
- PasswordAuthentication no
- AllowUsers user1,user2
- AllowGroups sshmembers
- ClientAliveInterval 300 (timeout en segundos)
Dónde está el fichero de configuración en el cliente
/etc/ssh/ssh_config
Como generar el par de claves en el cliente SSH para acceder mediante clave pública al servidor
$ ssh-keygen -t rsa/dsa/ecdsa -b numero_bits_clave
Esas claves que se generen se guardan en el directorio
- /home/username/.ssh/id_rsa
(Habrá dos ficheros, el id_rsa (clave privada) y el id_rsa.pub (clave pública)
Qué hay que hacer con la clave pública del cliente
1 opción:
- ssh-copy-id username@remotehost (sobre el servidor)
(copiará el contenido de ~/.ssh/id_rsa.pub dentro del directorio authorized_keys del servidor)
2 opción:
Si no tenemos ese comando, habrá que hacerlo manualmente:
- $ cat ~/.ssh/id_rsa.pub
- dentro de ~/.ssh/id_rsa.pub coger la clave pública, etc, etc
Una vez que la clave pública esté en el directorio authorized_keys del servidor, cuando se acceda con:
$ ssh username@remote_host , automáticamente, por debajo, se autenticará con la clave pública y se deberá desactivar la opción de PasswordAuthentication del directorio de configuración del servidor: /etc/ssh/sshd_config
- PasswordAuthentication no
Qué fichero existe en el servidor para almacenar las claves públicas de los clientes autorizados a conectarse
- $HOME/.ssh/authorized_keys (fichero con las claves públicas de los clientes autorizados a conectarse)
Qué fichero existe en el cliente para almacenar los fingerprint (huellas) de los servidores (equipos, etc) a los que nos hemos conectado con anterioridad, y por lo tanto, serán confiables
- $HOME/.ssh/known_hosts (fichero con los fingerprint (huellas) de las claves públicas de los servidores a los que nos hemos conectado)
Como mostrar el fingerprint de la clave pública que va almacenarse en ~/.ssh/known_hosts
ssh-keygen -l -f ssh_host_ecdsa_key.pub (si las hemos generado con ecdsa, por ejemplo)
Directorios de autenticación del host
- /etc/ssh/ssh_host_rsa_key (autenticación del host con rsa)
- /etc/ssh/ssh_host_dsa_key (si ha sido con dsa)
- /etc/ssh/ssh_host_ecdsa_key (si ha sido con ecdsa)
Los públicos
/etc/ssh/ssh_host_rsa_key.pub
Cómo conectar al host e iniciar una sesión interactiva remotamente
ssh username@remote_host
Comando para recopilar claves publicas de ciertos hosts
ssh-keyscan
Cómo conectar al host e iniciar una sesión interactiva remotamente
ssh -l username@remote_host
Como se usa un comando remotamente
ssh username@remote_host comando
Qué comando se utiliza para evitar tener que teclear la passphrase al autenticarse
ssh-agent (agente de autenticación)