Введение#
Недавно я отформатировал свой домашний сервер.
Сегодня пришло время настроить соединение с другими устройствами для обмена данными как внутри локальной , так и в интернете.
Для этого я начал думать, какие протоколы внедрить для передачи файлов, и решил, что лучший способ — провести небольшой анализ:
Особенности#
Давайте посмотрим, что мы ищем в протоколе передачи файлов.
- Безопасность
- Это важный момент для меня: это будет мой третий домашний сервер, и я хочу, чтобы он был безопасным, по крайней мере с точки зрения подключения через интернет, если у нас есть Ethernet-соединение ** дома** и хорошо защищённый Wi-Fi.
- Скорость
- Когда мне нужен файл, я хочу его сейчас, и каждая секунда, которую я смотрю на индикатор прогресса — это потерянная секунда моей жизни
- Энергопотребление
- Поскольку мы используем ноутбуки NAS, MediaCenter и т.д., чем меньше постоянных затрат процессора, тем лучше, избегая демонов и так далее.
- Потребление ресурсов
- Большинство домашних серверов обычно делаются на старом компьютере, и нам этого не нужно, потому что у нас слишком много сервисов, и мы не можем плавно смотреть хороший 3D mkv, стримя из деревенского дома.:D
- Простота настройки
Протоколы#
Давайте рассмотрим немного его характеристик, преимуществ и недостатки:
FTP#
FTP Simple#
- Она исключена как система передачи файлов, поскольку существуют лучшие решения для локальной сети, а для интернета FTP является небезопасным протоколом, несмотря на его широкое распространение.
- Однако именно он может обеспечить наилучшую производительность и скорость, если у сервера мало ресурсов, так как ему не придётся шифровать и расшифровывать соединение
SFTP#
- Каждый сервер должен иметь ssh-шелл для удалённого подключения, поэтому эта опция
- Это защищённый протокол.
- Это не даёт нам ещё одного демона бегать вокруг.
- Это мешает нам управлять пользователями отдельно.
- Поскольку на нашем сервере установлен openSSH, нам не нужно настраивать ничего другого.
- Он использует один канал связи, поэтому подключение через файрвол проще. (Те, кто настроил FTP в Azure поверх виртуальной машины Linux, понимают, о чём я говорю :D.)
- Каждый сервер должен иметь ssh-шелл для удалённого подключения, поэтому эта опция
FTPS#
- Это защищённый протокол.
- Для его конфигурации требуется минимальные знания.
- Требуется установка сервиса.
NFS#
- У него репутация быстрого.
- В тестах результат был ужасным.
- Он работает как через интернет, так и через локальную сеть.
- Его конфигурация с аутентификацией не является тривиальной.
- Начиная с Windows 8, этот протокол поддерживается только в корпоративной версии, а не нативные клиенты, такие как Nekodrive, также не поддерживают Windows 8.
- У него отличная стабильность, превосходящая SMB для больших файлов.
SMB#
- Этот протокол имеет недостаток — он используется только для локальных сетей.
- Его конфигурация тривиальна.
UPnP (стриминг)#
Для использования мультимедийных файлов при потоковой передаче на и с других устройств, таких как мобильные ПК или планшеты.
Сервер#
Plex будет отвечать за функцию файлового сервера как через LAN, UPnP, DLNA, так и через интернет.
Клиент#
Этот сервер будет подключён к телевизору и аудиосистеме, поэтому XBMC будет отвечать за приём и воспроизведение мультимедийных файлов.
Во второй и заключительной части этой серии мы проанализируем скорости передачи этих протоколов, чтобы выбрать один из них.
Через Flikr:





![[Как] Git Tutorial - Собственный репозиторий (Часть 4)](/wp-content/uploads/2014/01/git_hu_368acdbe959d23d0.png)

