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