«Свой VPN за 30 минут». У меня ушли сутки
К концу этих суток я написал «сдаюсь». ИИ вежливо согласился: вернись на платный, свой оставь запасным.
Хорошо, что я себя не послушал.
Почему я вообще за это взялся
Психанул. Платный VPN годами работал как часы, а потом начал отваливаться ровно тогда, когда нужен. Надоело зависеть от чужой кнопки — решил поднять свой.
Нашёл готовое решение. Красивое: копируешь одну строчку в консоль, полчаса — и всё стоит.
И тут во мне проснулся аудитор.
«Одна строчка» на самом деле означает вот что: скачать с чужого сайта чужую программу и запустить её у себя с полными правами. Не читая. Я 15 лет не подписываю то, чего не прочитал, — и тут вдруг подпишу?
Что нашлось внутри
Скрипт оказался нечитаемым специально. Не «сложный код», а именно запутанный так, чтобы в него не полезли. Я посадил ИИ его разбирать.
Вылезли две вещи.
Слова не сошлись с делом. На сайте одно количество профилей, в ролике другое. Домен по инструкции покупается в одном месте, а по факту — в другом. Мелочь? С мелких расхождений всё и начинается.
А главное — скрипт отключал проверку сервера при подключении. По-человечески: ровно в этот момент пароль от вашего сервера можно перехватить. Не злой умысел, я думаю. Просто так короче и всегда срабатывает.
Дальше я задал вопрос, который всё и решил: а зачем мне вообще от него зависеть?
И мы (Я - как дирижёр, Chat GPT - как главный парсер, Claude - как главный разработчик) собрали свой установщик. Прозрачный, без подгрузки чужого кода на ходу, с зафиксированными версиями, проверкой того, что скачалось именно то, и с тестами.
А потом были сутки отладки, потому что оно, конечно же, не заработало.
Вот здесь начинается интересное — и уже не про VPN
ИИ уверенно выдавал красивые версии. Провайдер душит канал. Репутация адреса испорчена. Давайте прятаться за Cloudflare. Мы сходили по всем этим дорогам. Ни одна не оказалась причиной.
А попадали в цель мои дилетантские реплики.
«Стоп. У меня же включён обход, российские сайты и так должны открываться — а они не открываются. Значит, дело вообще не в этом».
И потом: «Ты не сравнил рабочий чужой конфиг с нашим. Просто положи их рядом». Чужие конфиги я, конечно, взял с платных VPN.
Вот это и сработало. Не гипотезы, а сверка: берём то, что работает, кладём рядом с тем, что не работает, ищем разницу. Причин оказалось три, и все три нашлись именно так.
Ещё я держал двух ассистентов параллельно и сталкивал их выводы. Одного мало — он слишком уверенно ошибается.
Что я забрал
Чёрный ящик не становится безопасным оттого, что его хвалят в интернете. Читай, что запускаешь. Хоть договор, хоть скрипт.
Уверенный голос — ещё не правота. Проверять надо не аргументы, а факты.
Сравнение сильнее гипотезы. Два часа гаданий против пяти минут «положи рядом».
И последнее. Если вы написали «сдаюсь», а собеседник вежливо согласился — это не всегда конец. Иногда до ответа оставалось полдня.
Работает. Быстрее платного, за который я платил.
Был ли у Вас подобный опыт?
Артём Высоцкий