Si ejecuta uno o más servidores remotos, normalmente dedica tiempo a iniciar sesión constantemente a lo largo del día.
Pero no tiene por qué ser así. Es hora de que aprenda cómo iniciar sesión de manera eficiente a través de SSH con solo un alias, transferir archivos individuales o directorios, ejecute comandos SSH remotos y monte sin esfuerzo servidores remotos en locales directorios.
Archivo de configuración SSH
Un gran ahorro de tiempo es el archivo de configuración SSH ubicado en ~ / .ssh / config. Comience creando un directorio para almacenar todas las claves SSH que usa para iniciar sesión en los servidores con el comando:
mkdir -m 0600 $ INICIO / .ssh_keys
Ahora copie todos sus archivos de clave SSH en este directorio (p. Ej. clienta.pem, clientb.pem, etc.). A continuación, abra el ~ / .ssh / config archivo en un editor de texto ejecutando el comando:
nano ~ / .ssh / config
A continuación se muestra una entrada de ejemplo que establecerá una Conexión SSH con un servidor remoto:
¿Necesita acceder a su computadora o servidor Linux de forma remota? A continuación, se explica cómo instalar y configurar SSH en Linux, Windows y dispositivos móviles.
cliente anfitrión
nombre de host 124.58.2276.80
usuario ubuntu
IdentityFile ~ / .ssh_keys / clienta.pem
Agregue secciones de líneas como la anterior al ~ / .ssh / config archivo, uno para cada servidor que desee. Luego guarde y cierre el archivo presionando Ctrl + X y siga las indicaciones. Una vez guardado, ahora puede iniciar sesión en cualquier servidor a través de SSH desde cualquier directorio dentro de la terminal con el simple comando:
ssh clienta
Esto lo iniciará instantáneamente en el servidor con la información debajo del clienta host que especificó dentro del ~ / .ssh / config expediente.
Transferir archivos con Scp / Rcp
Sin crear una sesión de inicio de sesión persistente, puede cargar fácilmente archivos o directorios individuales a un servidor remoto con el scp comando, como:
scp report.pdf clienta: ~ /
El comando anterior cargará el archivo report.pdf desde su computadora local al directorio de inicio del clienta servidor que definió en la sección anterior. Puede subir a un directorio que no sea el directorio de inicio, como:
scp about.html clienta: / home / clienta / public_html
Lo anterior cargará el archivo about.html en el /home/client/public_html directorio en el control remoto clienta servidor. También es posible cargar directorios completos usando el -r opción como:
scp -r Documentos cliente: ~ / docs
Esto cargará el ~ / Documentos directorio de su computadora local al ~ / docs directorio del servidor remoto.
Descargando archivos
De manera similar, puede descargar archivos o directorios a su computadora local sin crear una sesión de inicio de sesión persistente utilizando el rcp comando como:
rcp cliente: ~ / public_html / about.html myproject / about.html
Lo anterior descargará el public_html / about.html archivo desde el control remoto clienta servidor y colóquelo en el proyectos / about.html archivo en su computadora local.
Ejecutar comandos SSH remotos
Otro consejo rápido es que puede ejecutar una Comandos de Linux en un servidor remoto sin una sesión de inicio de sesión persistente, como:
ssh clienta ls
Lo anterior ejecutará el ls en el cliente remoto> servidor, y enumere todos los archivos / directorios sin mantenerlo conectado al servidor. Por ejemplo, si desea reiniciar un servidor, puede usar:
ssh clienta / sbin / shutdown -rf ahora
Directorio local / bin
Ampliemos esto permitiendo un fácil montaje en servidores remotos creando un directorio / bin / que sea local para nuestra cuenta de usuario. Abra el terminal en su computadora y cree un directorio / bin / ejecutando el comando:
mkdir -m 0755 ~ / bin
A continuación, abra el ~ / .profile archivo en un editor de texto con el comando:
nano $ HOME / .profile
Desplácese hasta el final del archivo y agregue las siguientes líneas copiándolas en su portapapeles, luego dentro de la terminal presionando Ctrl + Mayús + V:
si [-d "$ HOME / bin"]; entonces
RUTA = "$ INICIO / bin: $ RUTA"
fi
Guarde y cierre el archivo presionando Ctrl + Xy siga las indicaciones. Esto salvará el .perfil archivo, que verificará el directorio local / bin / recién creado para cualquier comando que intente ejecutar.
Agregar comandos de montaje remoto
Primero, verifique y vea si sshfs está instalado en su computadora con el comando:
sshfs --versión
Si imprime la versión actual de sshfs, entonces estás listo. De lo contrario, si recibe un error de "comando no encontrado", puede instalar sshfs con el siguiente comando:
sudo apt-get -y instalar sshfs
Ahora cree un directorio / mnt / que contendrá todos los directorios montados en nuestros servidores remotos. Dentro de la terminal, ejecute comandos como:
mkdir -m 0755 ~ / mnt
mkdir -m 0755 ~ / mnt / clienta
mkdir -m 0755 ~ / mnt / clientb
Continúe creando un subdirectorio para cada servidor remoto en el que potencialmente pueda montar. A continuación, creemos los comandos de shell que ejecutaremos y, por ejemplo, para el clienta servidor abre un archivo ejecutando el siguiente comando en la terminal:
nano ~ / bin / mount_clienta
Modifique la línea de abajo según sea necesario con la información adecuada del servidor, luego cópiela y péguela en el editor de texto en blanco dentro de la terminal presionando Ctrl + Mayús + V:
#! / bin / bash
sshfs -o IdentityFile = ~ / .ssh_keys / clienta.pem [email protected]: / var / www ~ / mnt / clienta
Guarde y cierre el archivo presionando Ctrl + Xy siga las instrucciones para cerrar el archivo. Finalmente, cambie los permisos del archivo para que sea ejecutable ejecutando el comando:
chmod 0755 ~ / bin / mount_clienta
Ahora, en cualquier momento que necesite montar clienta servidor remoto para transferir archivos hacia / desde él, desde cualquier directorio dentro de la terminal, simplemente puede ejecutar el comando:
mount_clienta
El directorio en su computadora local en ~ / mnt / clienta ahora se montará en el /var/www directorio del servidor remoto. Puede comenzar a copiar archivos hacia y desde el directorio como lo haría con cualquier directorio local, y las operaciones necesarias se realizarán en el servidor remoto.
Gestión de conexiones más eficiente
Es de esperar que los consejos anteriores hayan ayudado a optimizar y hacer más eficiente la administración de sus conexiones a servidores remotos. En este artículo ha aprendido todo sobre el ~ / .ssh / config archivo que le permite iniciar sesión a través de SSH con solo un alias, transferir archivos / directorios individuales, ejecutar comandos SSH remotos y cómo montar fácilmente un directorio local en servidores remotos.
Hacer una copia de seguridad con rsync es una forma poderosa de autoadministrar sus archivos locales. Aquí tiene todo lo que necesita saber.
- Linux
- Acceso remoto
- Linux
Suscríbete a nuestro boletín
¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!
Un paso más…!
Confirme su dirección de correo electrónico en el correo electrónico que le acabamos de enviar.