A principal forma de conectarse a un servidor Linux é a través do protocolo SSH . Este tipo de conexión é segura, porque todos os datos que se transfiren a través dela están cifrados. Para establecer unha conexión SSH, debes configurala no servidor remoto ao que queres conectarte e o cliente no lado do usuario. Hai moitísimo software para a conexión SSH. En canto a Linux, o paquete OpenSSH é o máis popular e para Windows a xente usa principalmente PuTTY.
Vexamos máis de cerca a configuración do servidor usando Ubuntu Server 18.04 como exemplo e, a continuación, intente conectarse ao servidor desde Linux e Windows.
Todo o que fagamos será desde a conta dun usuario normal. Neste caso, creamos o usuario " mihail " e a conta " root " está desactivada por defecto.
Configuración do lado do servidor
Configure o paquete executando este comando:
sudo apt install openssh-server
Despois de rematar a instalación, asegúrese de que o servizo estea en execución. Use este comando:
systemctl status sshd
O estado " Activo (en execución) " significa que o servizo está activado e funciona con normalidade.
Para evitar o bloqueo das conexións entrantes polo firewall, asegúrate de desactivalo, porque non imos configurar o firewall de rede neste artigo.
Use este comando:
sudo ufw disable
Nesta fase xa pode conectarse ao servidor. Coa configuración predeterminada, o servidor permite a conexión ao porto estándar 22 cunha autenticación baseada en contrasinal.
Conexión SSH desde Linux
Como regra xeral, o cliente OpenSSH está instalado en Linux por defecto e non require configuración manual adicional. A conexión pódese establecer desde o terminal coa axuda do comando ssh. Os parámetros neste caso serían o nome de usuario e o enderezo IP do servidor remoto. No noso servidor de proba que estamos usando como exemplo só hai unha conta "mihail", polo que usaremos esta.
ssh [email protected]
Na primeira conexión terás que confirmar a adición da chave pública do servidor á base de datos, polo que responde " si ". Despois diso, podes introducir o contrasinal. Se a conexión se establece correctamente, verás un texto de benvida na liña de comandos do servidor. Agora todos os comandos executaranse directamente no servidor remoto.
SSH desde Windows
Abre Putty e configura os parámetros de conexión. Asegúrate de que o interruptor " Tipo de conexión " estea activado en SSH . Introduce o enderezo IP no campo " Nome do host ", o valor predeterminado 22 en " Porto " e fai clic en " Abrir ".
Na primeira conexión, Putty pedirache que confirmes que confías neste servidor, así que fai clic en " Si ".
Despois de introducir o inicio de sesión e o contrasinal, verá a liña de comandos do servidor remoto.
Autenticación por clave. Aumento do nivel de seguridade
Cando un cliente está tentando establecer unha conexión segura co servidor a través de SSH, antes de permitir a conexión, o servidor precisa autenticar (verificar) o cliente. Como se mencionou antes, a autenticación baseada en contrasinal adoita utilizarse por defecto. Non ofrece unha seguridade robusta, porque sempre hai unha forma de forzala bruta. Ademais, a autenticación de contrasinal non é aplicable ás conexións SSH co uso de scripts.
Para este tipo de tarefas existe un método especial de autenticación por clave. A cuestión é que o cliente xera claves públicas e privadas e despois envíase a clave pública ao servidor. Despois diso, non necesitas contrasinal para conectarte ao servidor, porque a autenticación realízase en función de claves públicas e privadas do cliente. Para proporcionar un bo nivel de seguridade, o acceso á chave privada debe estar restrinxido. Debido ao feito de que a clave privada está almacenada no lado do cliente e non se transfire a través da rede, crese que este método é máis seguro.
Autenticación por clave en Linux
Imos xerar claves públicas e privadas no cliente coa axuda do software de utilidade ssh-keygen. A ferramenta suxerirá cambiar o camiño á clave privada e introducir unha frase de paso para obter máis seguridade. Deixe todos os parámetros por defecto premendo Intro en todas as solicitudes.
Como resultado, no directorio principal da carpeta .ssh atoparás dous ficheiros xerados: id_rsa e id_rsa.pub que conteñen claves privadas e públicas segundo corresponda.
Despois diso, terás que enviar a chave pública ao servidor. Para iso, copia o contido do ficheiro " id_rsa.pub " ao ficheiro " ~/.ssh/authorized_keys " no servidor. Imos do xeito máis sinxelo coa axuda da ferramenta " ssh-copy-id ". Introduce o inicio de sesión e o enderezo IP do servidor, igual que no caso dunha conexión normal. Despois de introducir o contrasinal, a chave pública do cliente copiarase automaticamente no servidor. Executa este comando:
ssh-copy-id [email protected]
Despois de facer todo iso, o servidor xa non necesitará introducir o contrasinal.
Autenticación por clave en Windows
Abre PUTTYGEN e fai clic en “ Xerar ”. Para xerar as claves, só tes que mover o rato pola pantalla e a ferramenta xeraraas aleatoriamente.
Despois de xerar as claves, fai clic en " Gardar clave privada " e gárdaa no ficheiro coa clave privada no teu disco. Podes definir a ruta que queiras, pero un pouco máis tarde terás que especificala en Putty. Despois, copia a clave pública da parte superior da xanela.
Enviemos a clave pública simplemente copiándoa ao terminal. Abramos Putty e conectémonos ao servidor como de costume. Agora creemos " .ssh/authorized_keys " e restrinxamos o acceso ao ficheiro a outros usuarios, para que só estea dispoñible para o creador.
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
Despois de crear o ficheiro, coloque nel a chave pública do cliente. Na fase anterior copiamos a clave pública no portapapeis. Para gravar o que hai no portapapeis no ficheiro use o comando cat e a redirección de saída.
cat > .ssh/authorized_keys
Despois de introducir o comando, fai clic co botón dereito do rato na xanela do terminal e pega o que hai no portapapeis. Para confirmar a entrada, preme o atallo " Ctrl+D " e desconecta do servidor.
Agora imos especificar o camiño á chave privada en Putty e conectemos de novo ao servidor.
A partir de agora, para conectarse ao servidor só terás que introducir o nome de usuario. Se estás tentando conectarte ao servidor desde outro dispositivo que non ten a clave privada correcta, o servidor solicitará o contrasinal. Despois de configurar a autenticación baseada en claves, podes non permitir o acceso mediante contrasinal.