Добавить в корзинуПозвонить
Найти в Дзене
ИТ Канал

Влезть к врагам по-быстрому

Вокруг всякие санкции, блокировки и запреты. Например, недавно команда docker.io идентифицировала себя пидерастами и закрыла доступ всем российским ip. С этого момента развернуть Docker-контейнер из их репозитария не получится. Что делать, простому программисту/ресерчеру/админу если развернуть, например, nginx нужно, а докер матерится на отсутствие связи? Вариантов не много: Строить своё Registry может и пригодится кому-то, но под это нужен отдельный сервер неслабыми ресурсами (и диск и память нужно не начального уровня). По-умолчанию мы считаем, что мы - бедные студенты и изучаем Docker, а денег у нас только чтоб пару раз в месяц пива попить. Решение: завязать с алкашкой (от неё на перспективе куча побочек), а высвободившиеся деньги пустить на покупку VDS где-нибудь в Нидерландах. Эдакое "Окно в Европу". Денег нам понадобится рублей 200, но если у нас колаб с товарищами, то эту сумму можно размазать по всем участникам ровным слоем и тогда расходы в месяц будут и меньше. Вот тут: https

Вокруг всякие санкции, блокировки и запреты.

Например, недавно команда docker.io идентифицировала себя пидерастами и закрыла доступ всем российским ip. С этого момента развернуть Docker-контейнер из их репозитария не получится.

Что делать, простому программисту/ресерчеру/админу если развернуть, например, nginx нужно, а докер матерится на отсутствие связи?

Вариантов не много:

  • Использовать другой репозитарий (развернуть свой или использовать чужой)
  • Использовать прокси (или любую другую виртуальную частную сеть)

Строить своё Registry может и пригодится кому-то, но под это нужен отдельный сервер неслабыми ресурсами (и диск и память нужно не начального уровня).

По-умолчанию мы считаем, что мы - бедные студенты и изучаем Docker, а денег у нас только чтоб пару раз в месяц пива попить.

Решение: завязать с алкашкой (от неё на перспективе куча побочек), а высвободившиеся деньги пустить на покупку VDS где-нибудь в Нидерландах. Эдакое "Окно в Европу".

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

Вот тут: https://ztv.su/aff.php?aff=398

можно найти неплохие тарифы:

-2

берем 200р/мес, при размещении заказа выбираем Debian 12 и через непродолжительное время у нас есть узел в Нидерландах с SSH-доступом.

Можно не заморачиваться с установкой всяких прокси-серверов, WireGuard и других средств построения виртуальных частных или оверлейных сетей, а использовать в качестве прокси обычный SSH.

Делается всё просто: на нашем новом сервере командой adduser создаем пользователя.

На компе/сервере, которому нужно пробиться в логово врага для скачивания пакетов ПО в командной строке забиваем:

ssh -D 8877 -fCqN pipka@32.32.32.32

где pipka - это только что созданный на нидерладском сервере пользователь

32.32.32.32 - ip адрес этого сервера

При выполнении команды запросится пароль ssh-пользователя.

Вводим. Далее нас вернёт на консоль, как будто ничего не произошло. Чтобы проверить, что всё получилось выполним команду:

netstat -pan | grep 8877

это команда должна вернуть что-то типа:

tcp 0 0 127.0.0.1:8877 0.0.0.0:* LISTEN 673866/ssh

это значит, что мы подключились и можно использовать прокси.

Тип прокси: socks5 и его можно использовать с любым приложением, поддерживющим подключение через прокси.

Например, проверим как работает в curl:

curl --socks5 "127.0.0.1:8877" "https://2ip.ru/"

в ответ должен вернуться ip-адрес нашего нидерладского сервера. Значит мы успешно прошли через прокси.

Вот так мы развернули "аэродром подскока" и в Нидерландах теперь у нас есть свой хоть и маленький (1 гиг оператоса), но всё же узел связи, через который можно по-быстрому взять чего-нибудь из вражеских технологий.

Если вводить пароль на каждом подключении вломак или считаете это менее секурным (что, в принципе, верно), то создайте private ключ и подключении инициируйте так:

ssh -i ~/.ssh/id_rsa -D 8877 -fCqN pipka@32.32.32.32

где ~/.ssh/id_rsa - путь до вашего ssh-ключа

С прокси понятно.

А как быть с многострадальным Docker? Ну вообще они уже передумали блокировать и всё вернули в зад :) Но прокси лишним не бывает, пригодится для чего-нибудь ещё.

А в докере прокси прописывается так:

{
"proxies":
{
"default":
{
"httpProxy": "socks5://
127.0.0.1:8877",
"httpsProxy": "socks5://
127.0.0.1:8877",
"noProxy": ""
}
}
}

Главное после апдейта конфига не забыть службы перезагрузить (через restart или reload).

Вот как-то так. Старался воды лить по-меньше