Доступ к ресурсам самбы через интернет
Какой хороший, безопасный (ish) способ получить доступ к серверу Samba через Интернет?
Моя первая мысль - просто перенаправить необходимые порты на маршрутизаторе на сервер samba, но я не уверен, насколько это будет безопасно.
Моя вторая мысль - как-то туннелировать через ssh.
Я попробовал это для второй мысли, но, похоже, это не сработало.
7 ответов
Вы узнаете, что протокол SMB сосет как пылесос по каналам с высокой задержкой. Для доступа к файлам лучше использовать другой протокол, например, WebDAV, а не пытаться запускать SMB по сети.
Что бы вы ни делали, используйте шифрование. Если вы собираетесь использовать SMB, используйте протокол VPN (OpenVPN, IPSEC ESP, PPTP и т. Д.) Для туннелирования SMB. Если вы используете WebDAV, вы можете просто использовать HTTPS в качестве транспорта.
Я бы порекомендовал использовать SSHFS вместо этого - который, если вы на Mac, вы можете просто установить MacFusion.
Моя первая мысль - просто перенаправить необходимые порты на маршрутизаторе на сервер samba, но я не уверен, насколько это будет безопасно.
Это то, что вы определенно не хотите делать. SMB - это то, что вам нужно защищать от Интернета, а не подвергать его воздействию.
Я почти регулярно использую SMB через VPN-соединение и должен согласиться с Эваном, что когда задержка возрастает, пора использовать другой протокол. Я бы предложил посмотреть что-то вроде SFTP.
Если вы имеете дело с общим ресурсом, который используется несколькими клиентами, которые не могут / не будут использовать другие протоколы, вы можете создать эту настройку:
clients.lan | <--SMB through LAN--> | \\proxy.lan\share
proxy.lan/share | <--SSHFS through Internet--> | server.in.the.internet/share
Другими словами, на удаленном сервере (server.in.the.internet
), включите SSH; На локальном сервере (в вашей сети proxy.lan
), смонтируйте удаленную папку через SSHFS и поделитесь этой папкой на локальном сервере через SMB.
Таким образом, клиенты в локальной сети могут получить доступ к общему ресурсу Samba на proxy.lan, но он прозрачно (для них) проксируется с вашего удаленного сервера; Вы даже можете настроить кэширование на прокси, чтобы доступ стал еще быстрее.
Это в некоторой степени зависит от вашей среды, предполагаемой базы пользователей и клиентской платформы. Первое, что приходит мне в голову, - это использовать какую-то настройку openvpn. Требуется немного настройки, но он работает хорошо после правильной настройки.
Почему бы не использовать обычный старый FTP-сервер. Это было предназначено для таких вещей.
Простой старый ftp-сервер не позволяет вам получить доступ к файлу без его полной загрузки. Я думаю о фильмах, которые вы хотите смотреть через Интернет.