Перейти к основному содержимому
cutty.dev
All posts

QR-код для WiFi — гости подключаются без ввода пароля

Создайте QR-код для Wi-Fi, чтобы гости могли подключаться одним сканированием, без необходимости диктовать пароль. Формат, гостевая сеть и заменяемая ссылка на случай смены пароля.

Есть такой момент при каждом визите. Кто-то снимает обувь, еще стоит в прихожей, и прежде чем дойдет дело до «как ваши дела», звучит вопрос: «какой у вас WiFi?». И начинается ритуал. Вы встаете, идете к роутеру, переворачиваете его вверх дном, щуритесь над микроскопической наклейкой. Диктуете. «T как Tomek, ноль, u, b, четыре... нет, четыре, не четырнадцать, просто четыре». На другой стороне кто-то вводит, стирает, вводит снова. Это была большая B или маленькая b? После пятой попытки телефон наконец ловит сеть, и воцаряется тишина облегчения.

Я делал это сотни раз. И каждый раз я думал одно и то же: должен быть способ проще. Он есть. Один маленький квадратик, наклеенный у двери или на боку холодильника. Телефон рядом, секунда, соединение установлено. Без диктовки по буквам, без танцев с бубном вокруг роутера.

Что на самом деле находится внутри этого квадрата

Современные телефоны (iPhone начиная с iOS 11, Android примерно с десятой версии) могут подключаться к сети простым сканированием кода. Это звучит как магия, но никакой магии здесь нет. Под этим лежит обычный текст, графически закодированный по определенной схеме:

WIFI:T:WPA;S:NazwaSieci;P:TwojeHaslo;;

Разберем это на составляющие:

  • T — это тип защиты. WPA включает в себя WPA2 и WPA3, также существует WEP, а для открытой сети оставляйте поле пустым.
  • S — это SSID, то есть просто название вашей сети.
  • P — это пароль.
  • H:true добавляется только в том случае, если сеть скрыта и не транслирует свое название.

Устройство считывает эту строку символов, система видит префикс WIFI:, распознает схему и сама предлагает подключение. Одно касание. Гость никогда не увидит пароль, ему не нужно его переписывать, он не может его запомнить и унести с собой. Тот же самый прием работает на листке бумаги в гостевой комнате при аренде, на подставке в кафе, на дверях офиса. Везде, где люди приходят и просто хотят иметь интернет.

Однако есть один нюанс, на котором большинство людей спотыкается в первый раз.

Точка с запятой, которая всё портит

Если в названии сети или в пароле есть символы ;, ,, :, \ или кавычка ", вы должны поставить перед ними обратный слэш. В противном случае телефон оборвет пароль именно в этом месте, так как воспримет точку с запятой как конец поля. Допустим, ваш пароль — pa;ss"word. Вы записываете его так:

WIFI:T:WPA;S:Dom_Salon;P:pa\;ss\"word;;

И это всё. Это абсолютно самая частая причина жалоб «отсканировал и не работает». Человек сгенерировал код, в пароле была точка с запятой посередине, а он её не экранировал. Телефон получил половину пароля и вежливо отказался. Проверь это, прежде чем распечатывать пятьдесят штук.

Кому вы на самом деле открываете дверь

Здесь я хотел бы на мгновение остановиться, потому что это часть, которую люди чаще всего пропускают, а она является самой важной. QR-код — это физический объект. Он висит на стене, лежит на столе, кто-то может сфотографировать его на телефон с другого конца зала, даже не подключаясь. И раз уж на то пошло, вопрос звучит не «как сделать код», а «куда он ведет».

Представь, что этот код указывает на твою основную домашнюю сеть. Ту самую, в которой находится NAS с двадцатью годами фотографий, принтер, камеры, возможно, файловый сервер. Ты наклеиваешь его в квартире, которую снимаешь через Airbnb. Или в помещении. И вдруг доступ к твоему LAN получает каждый, кто спал у тебя неделю, плюс каждый, кому ты отправишь фото наклейки.

Поэтому: почти у каждого роутера сегодня есть гостевая сеть, по-английски Guest Network. Это отдельный SSID, изолированный от остальной части вашей LAN-сети, обычно с возможностью ограничения пропускной способности. Код вы генерируете именно для неё. Тогда даже если фото кода окажется в чьем-то Instagram или в группе на Facebook, посторонний получит доступ максимум к интернету. Но не к вашим устройствам. Это одно из тех решений, которое стоит двух минут в панели роутера, но экономит вам бессонные ночи.

У статического кода есть один неприятный недостаток

Жесткое кодирование данных WiFi выглядит элегантно, пока вы не измените пароль. Потому что тогда код можно выбросить. Весь. Допустим, вы ведете маленькую кофейню и напечатали пятьдесят подставок под чашки с красивым QR-кодом. Спустя некоторое время пароль утекает, вы меняете его в гостевой сети и... пятьдесят подставок превращаются в макулатуру. Плюс стоимость новой печати. Плюс время.

Можно иначе. Вместо того чтобы намертво зашивать данные WiFi в код, вы кодируете ссылку. Ссылка ведет на простейшую страницу с инструкцией по подключению или с актуальным паролем. Сам QR-код остается прежним навсегда, а то, куда он ведет, вы можете изменить в любой момент.

В cutty.dev это выглядит так:

  1. Вы создаете короткую ссылку, например cutty.dev/wifi-cafe, которая ведет на страницу с паролем или инструкцией.
  2. Генерируете для этой ссылки QR-код. Печатаете его на подставках, на дверях, на листовках.
  3. Меняете пароль? Редактируете цель той же самой ссылки. Все напечатанные коды продолжают работать, и вам не нужно перепечатывать ни одного экземпляра.

Есть еще одна мелочь, которую голый код WIFI:... никогда вам не даст. Вы видите, сколько раз кто-то на самом деле отсканировал код. В кафе или на мероприятии это не статистика ради статистики, а конкретная информация о трафике. При этом всё происходит без слежки за людьми: IP превращается в хэш, и никто не создает профиль гостя. Редкая вещь, так что стоит это ценить.

Так по-человечески, что выбрать

  • Дом, друзья, пароль, который вы установили один раз и не меняете? Обычный статический код WIFI:.... Проще всего, работает даже без интернета на сканирующем телефоне.
  • Локация, аренда, мероприятие, пароль, который меняется каждый месяц? Код, указывающий на сменяемую ссылку. Чтобы вам не пришлось каждый раз перепечатывать материалы.

Несколько вещей, которые легко упустить из виду

Печатайте код размером не менее 2 на 2 сантиметра. Меньший размер может быть капризным при слабой камере. И не ламинируйте его с высоким глянцем, так как блики света могут испортить сканирование (проверено на собственном опыте у окна в полдень).

Под кодом допишите название сети и пароль обычным текстом. Это fallback для старых телефонов и для тети, которая предпочитает вводить вручную. Это стоит вам одной строки, но спасает ситуацию.

И самое важное в конце этого списка: не выкладывайте в публичный профиль в соцсетях код, ведущий к основной сети с настоящим паролем. Это буквально публикация ключа от вашей LAN-сети. Люди делают это без раздумий, потому что «это всего лишь красивая картинка».

--- Polish Markdown --- --- Russian Markdown ---

У меня дома есть такая наклейка, приклеенная с внутренней стороны шкафа в прихожей. Гости знают, что она там, сканируют на ходу, и весь этот ритуал с проговариванием пароля по буквам просто исчез. Мелочь, а изменила то, как люди входят в мою квартиру. Иногда лучшие улучшения — это не масштабные, а те, которые убирают один маленький, повторяющийся момент раздражения. Если ваш пароль любит меняться, сделайте код на заменяемой ссылке и забудьте об этом раз и навсегда. А если нет, то даже бумажка с написанным от руки кодом справится. Вопрос только в том, куда вы её приклеите.