Протокол Shadowsocks был создан китайскими разработчиками в начале 2010-х годов для обхода систем файервола местных интернет-провайдеров и получения свободного доступа к мировой сети.

Shadowsocks – бесплатный сетевой протокол шифрования передачи данных с открытым исходным кодом, развитый на базе технологии SOCKS5. Комплект Shadowsocks парный, включает в себя серверную и клиентскую программы.

Сегодня Shadowsocks активно используется по всему миру. Универсальность позволяет применять его для разных целей, а благодаря простоте настройки и установки он часто оказывается удобнее, чем VPN протоколов L2TP, IPsec и прочих.

В качестве сервера Shadowsocks, как правило, используется хостинг VPS/VDS. Потоки данных между сервером и клиентом шифруются, поэтому VPS/VDS для функционирования Shadowsocks должен быть доверенным.

Принцип работы Shadowsocks напоминает SSH-туннель: запросы со стороны клиента и последующий обмен трафиком с сервером маскируются под обычное для интернета соединение https. На выбор при конфигурации сервера может шифроваться не весь трафик, что позволяет повысить скорость работы, а также снизить нагрузку и на сервер, и на клиентскую часть.

Преимущества Shadowsocks

  1. Простота настройки.
    Как сервер, так и клиенты настраиваются очень легко.
    Конфигурация умещается всего в 5 строк.
  2. Возможность использовать QR-код для сохранения конфигурации клиента.
    Чтобы подключить к Shadowsocks дополнительно мобильное устройство, достаточно считать этот QR-код из запущенной клиентской программы.
  3. Универсальность.
    Существуют клиентские программы под любую «операционку»: Mac, Android, iOS, Windows, Linux-семейство операционных систем.
  4. Достаточно высокая скоростная способность, по сравнению с альтернативными технологиями VPN.
    Потери в скорости интернет-соединения при использовании Shadowsocks не превышают 3-5%.
  5. Меньше вычислительная нагрузка при шифровании.
    Особенно это актуально для мобильных устройств – экономится заряд батареи. Снижение нагрузки также актуально для серверной части при использовании хостингов VPS/VDS для Shadowsocks. Не все хостинги разрешают использовать виртуальные серверы в качестве VPN-сервисов, но Shadowsocks может допускаться.
  6. Гибкая настройка.
    Можно настроить отдельный доступ для определённых программ, при этом делая исключение для остальных сайтов. Если необходимо зайти в платёжную систему или на портал госуслуг напрямую, не придётся каждый раз полностью отключать Shadowsocks.
  7. Встроенная защита от DPI (Deep Packet Inspection), которая всё чаще используется провайдерами для выявления «нестандартного» поведения пользователей. Shadowsocks имитирует обычное подключение по https к удалённому серверу. Для этого нужно установить simple-obfs - плагин обфускации трафика. Как правило, он уже включён в стандартный комплект для серверной части Shadowsocks.
  8. Бесплатный доступ (как и положено opensource).
    Для работы с Shadowsocks достаточно арендовать самый дешёвый VPS-сервер или использовать уже имеющийся. Идеально, если хостинг предоставляет возможности безлимитного трафика с использованием VPS/VDS. В этом случае развёртывание собственного  Shadowsocks-сервера обойдётся даже дешевле платных сторонних продуктов VPN.

Недостатки Shadowsocks

  1. Все подключённые клиенты имеют равные права, отсутствует управление пользователями. Поэтому давать доступ можно только доверенным лицам.
  2. Документация хоть и на английском языке, но составлена китайскими разработчиками. Это может вызвать затруднения при её использовании.
  3. Официальный аудит Shadowsocks не проводился.
  4. Код достаточно простой и доступен широкой аудитории, что создаёт риск распространения поддельных пакетов программного обеспечения Shadowsocks.
  5. Создаётся защищённое соединение только от пользователя до сервера Shadowsocks. Организация именно такого канала и была изначальной задачей. Это ограничивает возможности Shadowsocks для создания широкомасштабных частных виртуальных сетей в коммерческих целях.
  6. Невозможность обеспечить полную анонимность.

Для чего Shadowsocks?

Во-первых, обход блокировок. Это всегда актуально, ведь аналоги китайского «Золотого щита» существуют по всему миру. Например, украинские провайдеры и мобильные операторы блокируют доступ к российским интернет-ресурсам и сервисам. Shadowsocks - одно из лучших средств доступа к заблокированным ресурсам.

Во-вторых, защита трафика и персональных данных. Недобросовестные интернет-провайдеры не только получают от клиентов абонентскую плату, но и дополнительно зарабатывают на сборе информации о них. Сведения о трафике пользователей хорошо продаются на рынке big data. Shadowsocks позволяет заблокировать для провайдера доступ к детальной информации и содержанию вашего трафика.

В-третьих, для подключения к интернету из незащищенных точек. Используя Shadowsocks, можно безопасно пользоваться интернетом, подключаясь к открытым wifi-сетям, например, в кафе или в других общественных местах.

Shadowsocks – простой и эффективный способ обхода блокировок и защиты от разного рода нежелательной слежки за вашим трафиком. Он не создает большой нагрузки на сервер и мобильные клиентские устройства, может использоваться как дополнительный софт при эксплуатации VPS. Для некоммерческих целей этого вполне достаточно. Во многих случаях Shadowsocks может быть полезен и в решении коммерческих интернет-задач.