La instalación openssh-server
le permitiría acceder a toda su unidad de forma segura a través de Internet o desde dispositivos en su hogar, siempre que admitan sFTP. Si alguno no lo hace por alguna razón, un recurso compartido de Samba podría complementar eso como se detalla en otra respuesta. Así es como configuro el mío:
Instale el servidor OpenSSH :apt-get install openssh-server
Abra el puerto 22 : utilizo varias formas de hacerlo gufw
(puede que necesite instalarlo, no estoy seguro de si es el predeterminado). Si desea abrirlo a Internet en una etapa posterior, deberá reenviar el puerto 22 al servidor desde su enrutador. Normalmente puede hacer esto a través de una interfaz web en el enrutador. Si puede, asigne al servidor una IP estática allí también (es decir, apague el DHCP para el servidor).
Edite la configuración de ssh : haga una copia de seguridad y abra el archivo /etc/ssh/sshd_config
y cambie / agregue la configuración
PermitRootLogin no
AllowUsers guarav_java other_user_if_necessary
Para obtener la máxima seguridad, puede configurar inicios de sesión basados en claves como se detalla aquí https://help.ubuntu.com/community/SSH/OpenSSH/Keys , pero sería suficiente si configura una contraseña realmente segura y la guarda en Cada máquina cliente.
Es posible que desee crear un usuario para cada persona que se conecta. Si hace eso, puede agregarlos a todos al mismo grupo (ssh_users, por ejemplo) y permitir que todos en ese grupo se conecten usando AllowGroups ssh_users
. (Para obtener más información, consulte http://knowledgelayer.softlayer.com/learning/how-do-i-permit-specific-users-ssh-access )
Verifique que la configuración sea válida : puede verificar si ha cometido algún error de sintaxis en el archivo de configuración consshd –t
Conéctese desde el servidor a sí mismo : en este punto, debería poder conectarse a la máquina desde sí mismo en un terminal ssh localhost
(suponiendo que ya lo haya hecho openssh-client
). Luego inténtelo desde otra máquina en su red ssh <ip-address>
,.
Si la IP del servidor es estática en su red doméstica, puede agregar una entrada /etc/hosts
en una computadora Ubuntu que se conecte a ella con la línea
server_ip_address theserver
Esto significará que puede conectarse simplemente ssh theserver
, o como lo llame. Puede hacer lo mismo para Windows (consulte aquí: http://helpdeskgeek.com/windows-7/windows-7-hosts-file/ )
Conexión a través de sFTP : si puede conectarse al servidor desde otra máquina en su red doméstica en una terminal, puede conectarse a través de sFTP y explorar y transferir archivos de forma segura. Personalmente, configuré un atajo de teclado para poder montar / desmontar mi servidor con comandos de teclado (en Ubuntu):
gvfs-mount sftp://user@ipaddress
gvfs-mount -u sftp://user@ipaddress
(La -u
bandera es el comando umount)
Póngalos en el cuadro "Comando:" de Configuración del sistema> Teclado> Accesos directos> Accesos directos personalizados> + (Nuevo acceso directo), asígnele un nombre, haga clic en Aplicar, luego haga clic en la columna derecha e ingrese una combinación de teclas ( CTRL+SHFT++
y, CTRL+SHFT+-
respectivamente, parece lógico) .
Puede reemplazar la dirección IP con lo que está en /etc/hosts
. Esto montará el servidor como una unidad en Nautilus y puede explorar las carpetas como las de su computadora local. En Windows, puede conectarse mediante el software FTP (Filezilla, etc.). No lo he probado, pero estoy seguro de que probablemente también haya integración sFTP en el Explorador de Windows.
Otra ventaja de los inicios de sesión basados en claves en este punto es que no se le solicita una contraseña cada vez que se conecta (a menos que configure una para proteger la clave). Es posible que desee verlo después de que haya funcionado con los inicios de sesión de contraseña (y antes de abrirlo al exterior).
Conexión desde el exterior : el último paso sería ver si puede conectarse desde Internet, es decir, al lado o lo que sea. Si no tiene una dirección IP estática para su hogar, podría ser complicado mantenerse al día con su dirección IP. Yo uso un servicio dns dinámico ( http://afraid.org/ es gratuito) personalmente, pero es posible que encuentre otra solución mejor. Luego, reemplazaría la dirección IP en los comandos de montaje anteriores con la dirección web dinámica que apunta a su red doméstica.
Una última sugerencia de seguridad, mantén pestañas en tu registro SSH si vas por esto ( /var/log/auth.log
), solo para asegurarte de que no ocurra nada malo. Si lo encuentra, Fail2Ban es una solución ( http://www.fail2ban.org/wiki/index.php/Main_Page y https://help.ubuntu.com/community/Fail2ban ). Para minimizar el riesgo, puede cambiar el puerto en el que SSHD escucha algo no estándar como 500, y cambiar las reglas de reenvío de puertos correspondientes en su enrutador y el firewall del servidor (Por qué: /server/189282 / why-change-default-ssh-port ) aunque personalmente no lo he probado con gvfs-mount
.