¿Cómo puedo usar SSH con un servidor remoto para poder examinar archivos y editarlos? Tengo un nombre de usuario y contraseña para usar.
SSH viene por defecto en todas las versiones de Ubuntu, por lo que ahorra tener que instalarlo (+1 por tenerlo ya allí;))
Excepto, por supuesto, en el caso en que desee un servidor SSH para su servidor Ubuntu. En ese caso lo harías
sudo apt-get install openssh-server
lo que debería hacer que su computadora / servidor esté listo para ser un servidor ssh.
Usarlo es bastante fácil:
ssh USER@SITE
por ejemplo, si mi nombre de usuario es cyrex y el sitio es ubuntu.com, entonces haría esto:
ssh [email protected]
Ahora supongamos que desea copiar un archivo llamado bubblegum.txt
desde su computadora a su sitio de ubuntu y desea dejar ese archivo en la /var/www
carpeta en el sitio de ubuntu. puede hacer esto (suponiendo que su usuario tenga suficientes permisos en el sitio de ubuntu) utilizando Brother, SCP de SSH (que también viene por defecto en Ubuntu):
scp bubblegum.txt [email protected]:/var/www
Observe la relación :
entre el USUARIO @ SITIO y la carpeta donde desea copiarlo. Es el que separa ambos elementos.
Ahora digamos que está cargando un archivo enorme con scp y luego sucede lo peor, el mundo explota. ¿Cómo puedes seguir subiendo ese archivo al servidor? Luego tienes el hermano mayor de SCP, rsync (viene por defecto en Ubuntu). En muchos sentidos, scp y rsync hacen lo mismo, pero aquí hay algunas grandes diferencias entre ellos:
De todos modos, en el caso de que scp no pueda cargar todo el archivo, aquí es donde rsync entra a rescatar. (Gracias a Marco Ceppi por el consejo. Vote su comentario si le gustan los gatos ... y / o los perros)
Digamos que hiciste la mención de carga anterior de scp y llegó al 60%. ¿Cómo puede continuar en ese 60% sin perder el valor de sus tiempos para la carga? Harías esto:
rsync --progress --partial bubblegum.txt [email protected]:/var/www
Esto le dice a rsync que muestre el progreso de una manera agradable y legible con la --progress
bandera. También le dice a rsync que verifique y continúe desde donde llegó el archivo bubblegum.txt con la --partial
bandera. También puede simplificar la cantidad a escribir con el parámetro -P que es el mismo que --progress y --partial, por lo que lo anterior se vería así:
rsync -P bubblegum.txt [email protected]:/var/www
Incluso puede CTRL+ Ccargar y reanudarlo haciendo el comando de rsync anterior. Es genial tener la capacidad de reanudar algo en cualquier momento y cantidad de veces.
Para obtener más información sobre rsync, que viene por defecto con Ubuntu, puede escribir los siguientes comandos de terminal:
man rsync
info rsync
rsync --help
Ahora para especificar un puerto para SSH. Para especificarlo, puede hacerlo así:
ssh [email protected] -p PORT
. Por ejemplo: ssh [email protected] -p 1234
para decirle que use el puerto 1234 para el servicio SSH. Esto debe configurarse primero en el servidor para que funcione.
Para configurarlo simplemente abra en el servidor el archivo ssh_config así: nano /etc/ssh/ssh_config
y cambie la línea que dice # port 22
a otro puerto. También recuerde eliminar el comentario de esa línea. Debería verse así: port 1234
en el caso del ejemplo anterior.
Ahora solo reinicie el servicio ssh en el servidor y ya está. Para reiniciar el servicio solo haz esto:
sudo restart ssh
o
sudo /etc/init.d/ssh restart
NOTA - También puede usar SSH desde herramientas GUI como las filezilla
que ofrecen la opción de usar ssh en lugar de ftp. También se puede acceder a ssh desde el menú de Ubuntu:
que le da acceso a varias opciones, incluyendo Windows share, SSH y FTP :
Para obtener más información sobre SSH, puede usar uno de los siguientes comandos en la consola en su cuadro de Ubuntu:
man ssh
info ssh
ssh --help
Si desea navegar por el servidor a través de Nautilus como lo hace con los archivos en su máquina local:
Vaya a "Archivo" -> "Conectar al servidor"
Seleccione "SSH" en "Tipo de servicio"
Ponga la dirección IP o dominio bajo "Servidor"
Agregue su nombre de usuario y marque "Agregar marcador" si desea guardar la ubicación en sus marcadores.
La carpeta debería abrirse para ti.
fuente
Puede usar
sshfs
para montar un directorio remoto en su sistema de archivos local.Ver https://help.ubuntu.com/community/SSHFS :
Uso de línea de comando
Ahora, suponiendo que tenga un servidor SSH ejecutándose en una máquina remota, simplemente ejecute el comando SSHFS para montar el directorio remoto. En este ejemplo, el directorio remoto es / projects en el host remoto lejos. El punto de montaje local es ~ / far_projects.
Para desmontar,
Para agregarlo a su / etc / fstab,
Tenga en cuenta que debe cambiar $ USER a su nombre de inicio de sesión al editar fstab, pero no es necesario al escribir comandos (el shell lo hace por usted en ese caso).
fuente
Suponiendo que el servidor ssh ya está configurado, abra una terminal y escriba:
Se le pedirá su contraseña; solo ingrésalo. Si necesita un número de puerto, agregue
-p PORTNUM
.fuente
Si puede usar Vim, Pico, etc., puede usar el terminal:
Ingrese su contraseña y estará listo. A partir de ahí, es como una terminal normal, excepto que no tiene GUI.
Tenga en cuenta que puede agregar la opción '-X', y si su servidor tiene un servidor X configurado, puede ejecutar programas GUI. Simplemente escriba su nombre si agregó -X y se abrirá una ventana GUI.
Ahora, probablemente desee configurar un inicio de sesión sin contraseña. Si aún no tiene una clave, escriba
ssh-keygen
y simplemente presione Intro para todos los valores predeterminados. Entonces hazlossh-copy-id [email protected]
. Una vez hecho esto, simplemente escribassh [email protected]
y no tendrá que ingresar su contraseña.Si su nombre de usuario es el mismo que el de su computadora portátil, no es necesario
MYUSER@
. Solo puedes hacerssh mysite.com
. También puede usar la-l MYUSER
opción en lugar deMYUSER@
Si desea una GUI, Nautilus puede hacer esto. File
->
Connect to Server->
[seleccione 'SSH', luego complete los datos de inicio de sesión]->
Connect.Si solo desea copiar un solo archivo, use scp [copia segura].
scp [email protected]:path/to/file.dat ./
Esto copia el archivo "~ / ruta / a / file.dat" en su directorio actual. Tenga en cuenta que si no tiene una barra inclinada o tilde después
:
, actuará como si estuviera en su directorio de inicio [~/
]. Si desea cargar,scp ./local_file.dat [email protected]:
eso lo colocará en el directorio de inicio.fuente
ssh -X -C user@host nautilus --no-desktop
ir en modo gui :)fuente