Niedawno zbudowałem małą maszynę serwerową, używając Ubuntu Server i Samby, aby działać jako serwer plików (między innymi), aby cała moja rodzina mogła uzyskać dostęp do niektórych plików przez sieć z komputerów z systemem Windows. Chciałbym jednak pójść o krok dalej i mieć dostęp do akcji przez Internet, z dala od domu. Jak mam to zrobić? Wiem bardzo mało o tym, jak działa system udziałów sieciowych Windows, więc nie mam pojęcia, od czego zacząć.
internet
network-shares
file-sharing
ubuntu-server
Sasha Chedygov
źródło
źródło
Odpowiedzi:
W przypadku Samby poradzisz sobie z portami 139 / tcp i 445 / tcp na zewnątrz - zwykle wymaga to skonfigurowania „przekierowania portów” w routerze. Ponadto należy upewnić się, że zewnętrzny adres IP jest możliwy do pingowania z zewnątrz.
Następnie będziesz mógł uzyskać dostęp do udziałów, wchodząc
\\youraddress
w pasek adresu Eksploratora lub w Start - Uruchom . (Tutaj youraddress jest albo twój zewnętrzny adres IP lub nazwę DNS, jeśli masz jeden).Należy jednak pamiętać, że protokół CIFS i protokół SMBv2 używany przez udostępnianie plików systemu Windows nie zapewnia szyfrowania danych (więc każdy z snifferem pakietów może monitorować przesyłane pliki), a jego uwierzytelnianie również nie jest szczególnie silne. Tylko SMBv3 uzyskał obsługę szyfrowania.
Nie zapominaj również, że usługa SMB systemu Windows była w przeszłości bardzo częstym celem infekcji. Chociaż większość exploitów systemu Windows w żaden sposób nie wpływa na Sambę, nadal warto o tym pamiętać (i często oznacza to, że porty SMB są blokowane na poziomie ISP).
Należy również pamiętać, że komputery z systemem Windows domyślnie zapamiętują dane logowania dla całej sesji lokalnej. O ile nie łączysz się z Sambą jako „Gość”, musisz zachować szczególną ostrożność na komputerach publicznych: zawsze używaj
net use \\address
przed otwarciem w Eksploratorze / wnet use \\address /del
celu rozłączenia. (Nie jest to konieczne na komputerach osobistych).Aby uzyskać dodatkowe zabezpieczenia, dodaj następujący tekst do sekcji ogólnej w
smb.conf
:źródło
Jeśli Twoja rodzina może obsługiwać za pomocą WinSCP, to:
/srv/samba_files
przez Sambę, chciałbyś zrobić cośln -s /home/{user}/files /srv/samba_files
podobnego dla każdego konta. Jeśli musisz to zrobić dla wielu kont, możesz napisać skrypt, aby to zrobić.Będziesz wtedy mieć bardzo bezpieczną metodę przesyłania plików, która nie jest zbyt trudna w użyciu.
Jeśli jednak naprawdę chcesz integracji „dysku sieciowego” z systemem Windows, dowiem się o OpenVPN, a następnie skonfiguruję zmostkowany tunel do sieci domowej. Udało mi się udostępnić pliki systemu Windows do pracy w takich tunelach.
Możesz także użyć PoPToP (pptpd), aby umożliwić systemowi Windows ponowne połączenie się z twoim systemem Ubuntu za pośrednictwem VPN PPTP. (Tunel IPSec / L2TP zapewniłby większe bezpieczeństwo, ale jego konfiguracja jest trudna).
źródło
files
udział wskazujący/srv/samba_files
bezpośrednio?To zależy od tego, jakie pliki zamierzasz udostępnić. Jeśli są to dokumenty lub tylko pliki, do których musisz uzyskać dostęp zdalny, po prostu uruchom serwer FTP na serwerze Ubuntu. Upewnij się, że dobrze go zabezpieczysz, stosując dobre hasła i dostęp do katalogu plików, a nie katalogu głównego.
Jeśli jednak zamierzasz przesyłać strumieniowo pliki multimedialne (utwory, filmy), chcesz uruchomić serwer przesyłania strumieniowego. Istnieje na to wiele rozwiązań ( oto jedno ).
Wreszcie, zawsze możesz skorzystać z istniejącego napędu „w chmurze”, takiego jak Dropbox lub SkyDrive lub Amazon Cloud Player - po prostu zsynchronizuj swoje pliki z jedną z tych usług, a dostęp do Internetu (w tym szybki) jest gwarantowany.
źródło