Recientemente construí una pequeña máquina de servidor, usando Ubuntu Server y Samba, para actuar como un servidor de archivos (entre otras cosas) para que toda mi familia pueda acceder a ciertos archivos a través de la red desde máquinas Windows. Sin embargo, me encantaría llevar esto un paso más allá y hacer que las acciones sean accesibles a través de Internet, lejos de casa. ¿Cómo haría esto? Sé muy poco sobre cómo funciona el sistema de redes compartidas de Windows, así que no tengo idea de por dónde empezar.
internet
network-shares
file-sharing
ubuntu-server
Sasha Chedygov
fuente
fuente
Respuestas:
Con Samba, tendría que exponer los puertos 139 / tcp y 445 / tcp al exterior; por lo general, esto implica configurar el "reenvío de puertos" en su enrutador. Además, debe asegurarse de que su dirección IP externa sea pingable desde el exterior.
Después de esto, podrá acceder a los recursos compartidos ingresando
\\youraddress
en la barra de direcciones del Explorador o en Inicio - Ejecutar . (Aquí youraddress es o bien su dirección IP externa o su nombre DNS, si tiene uno).Sin embargo, tenga en cuenta que el protocolo CIFS y SMBv2 utilizado por el uso compartido de archivos de Windows no proporciona cifrado de datos (por lo que cualquiera con un sniffer de paquetes puede monitorear sus transferencias de archivos), y su autenticación tampoco es especialmente fuerte. Solo SMBv3 obtuvo soporte de cifrado.
Además, no olvide que el servicio SMB de Windows ha sido en el pasado un objetivo de infección muy frecuente. Si bien la mayoría de las vulnerabilidades de Windows no afectan a Samba de ninguna manera, vale la pena recordar esto (y a menudo significa que los puertos SMB se bloquean a nivel de ISP).
También tenga en cuenta que las máquinas Windows por defecto recuerdan las credenciales de inicio de sesión para toda la sesión local. A menos que se conecte a Samba como "Invitado", debe tener especial cuidado en las máquinas públicas: use siempre
net use \\address
antes de abrir en Explorer /net use \\address /del
para desconectarse. (Esto no es necesario en computadoras personales).Para mayor seguridad, agregue lo siguiente a la sección general en
smb.conf
:fuente
Si su familia puede manejar el uso de WinSCP, entonces:
/srv/samba_files
través de Samba, desearía hacer unaln -s /home/{user}/files /srv/samba_files
o similar para cada cuenta. Si tiene que hacer esto para muchas cuentas, puede escribir un script para hacerlo.Entonces tendrá un método muy seguro para transferir archivos que no es demasiado difícil de usar.
Sin embargo, si realmente desea la integración de "unidad de red" con Windows, aprendería sobre OpenVPN y luego configuraría un túnel puenteado para su red doméstica. He conseguido que los archivos compartidos de Windows funcionen en esos túneles.
También puede usar PoPToP (pptpd) para permitir que un sistema Windows se conecte de nuevo a su caja de Ubuntu a través de un PPTP vpn. (Un túnel IPSec / L2TP proporcionaría una mejor seguridad, pero es difícil de configurar).
fuente
files
recurso compartido que apunta/srv/samba_files
directamente?Depende de qué tipo de archivos tiene la intención de servir. Si se trata de documentos, o simplemente archivos a los que necesita acceder de forma remota, simplemente ejecute un servidor FTP en su servidor Ubuntu. Asegúrese de asegurarlo bien, con buenas contraseñas y acceso solo al directorio de archivos y no a la raíz.
Sin embargo, si tiene la intención de transmitir archivos multimedia (canciones, películas), está buscando ejecutar un servidor de transmisión. Hay muchas soluciones para eso ( aquí hay una ).
Finalmente, siempre puede usar una solución de disco "en la nube" existente como Dropbox o SkyDrive, o Amazon Cloud Player, solo sincronice sus archivos con uno de esos servicios y el acceso a Internet (uno rápido) está garantizado.
fuente