Как открыть VNC сессию на компьютере с Ubuntu
Каждый раз ищу эту инструкции и каждый раз удивляюсь, почему я до сих пор не добавил ее в блог?
Дано: у меня есть компьютер с Ubuntu который я умею будить дистанционно. На компьютере крутиться Ubuntu и я могу подключиться к нему через внутренний адрес OpenVPN.
Задача: помимо консольных приложений я хочу запускать на нем также GUI приложения. Конечно, можно запускать приложения удаленно показывая их через локальный X11 сервер - Ubuntu позволяет это делать с легкостью, но проблема в том что я хочу запускать приложения полностью локально чтобы можно было запустить приложение и отключиться. Кроме того, трафик X11 сервера достаточно интенсивный и приложения запущенные таким образом основательно тормозят.
Решение:
Поэтому есть способ лучше - при помощи команды x11vnc. X11vnc это приложение которое транслирует текущую X11 сессию в VNC сессию.
Запускается сессия при помощи следующей команды:
x11vnc -display :0
После чего я просто подключаюсь к GUI сессии при помощи любого VNC клиента, например TightVNC.
Важно иметь ввиду что способ будет работать только если X11 сессия уже авторизована, то есть компьютер уже включен и разблокирован!
Страничка для создания встреч в google calendar
В Гугл Календаре теперь появилась возможность создавать страничку при помощи которой другие люди могут букать слоты в вашем календаре. То что раньше делал только Calendly теперь умеет обычный Календарь. Подозреваю, теперь Calendly придется сильно напрячься чтобы оставаться на рынке.
Цифровая гигиена
Все мы используем пароли, без паролей в наше время не обойтись.
Как проверить ваш пароль на безопасность? Можно воспользоваться каким нибудь сервисом для проверки паролей например haveibeenpwned.com он подскажет где, когда и куда ваши пароли утекли. Но что-то мне страшновато передавать мой пароль на какие-то непонятные сайты, которые их собирают с непронятными целями. Где гарантия что при проверке паролей создатели сервиса не проверят ваши пароли еще на каких нибудь сайтах, чтобы так сказать, проверить, нет ли у вас так чего интересного?
Есть ли способ проверить был ли пароль скомпрометирован и при этом не передавать сам пароль третим лицам? Такой способ существует.
Для этого можно проверять не сам пароль, а его цифровую подпись. Алгоритм получается следующий.
1. Создаем sha1 подпись интересуемого пароля, например qwerty123: echo -n "qwerty123" | openssl sha1
2. От полученного хеша SHA1(stdin)= 5cec175b165e3d5e62c9e13ce848ef6feac81bff берем первые пять цифр подписи 5cec1
3. Полученные символы подставляем в конец API вызова https://api.pwnedpasswords.com/range/ получим https://api.pwnedpasswords.com/range/5cec1
Сайт выводит нам все оставшиеся части хешей которые начинаются с данной комбинациии символов. Если мы находим среди этих комбинаций нашу 75b165e3d5e62c9e13ce848ef6feac81bff, значит наш пароль скомпрометирован!
Для пароля qwerty123 мы видим значение 75B165E3D5E62C9E13CE848EF6FEAC81BFF:4880569 - это значит что в базах данных со скомпрометированными паролями на данном сервисе он встречается почти пять миллионов раз!
Дисклеймер: данный метод не гарантирует, что факт проверки вами вашего пароля никто не отследит. Делая это, вы оставляете кучу цифровых следов, например, в терминале остается история команд, которые вы выполняли, передачу пяти символов хеша по незащищенным каналам тоже можно отследить. Но все же, вероятность взлома в этом случае будет гораздо ниже, чем если вы просто понадеетесь на то, что ваши пароли никому не будут интересны.
PS. если вы хотите, чтобы команда не оставалась в истории командной строки в linux достаточно начать ее с пробела " echo -n "qwerty123" | openssl sha1".
Как сделать checkbox в markdown
Чекбоксы - мегополезная штука при редактировании текстов на языке markdown. Можно, например, составлять списки дел и помечать сделанное в обычном текстовом файле. Пустой чекбокс выглядит в markdown как [ ] а отмеченный как [x].
Поскольку я веду заметки используя markdown, то часто составляю маркированные списки с чекбоксами. К сожалению, других вариантов, кроме отмеченного и не отмеченного чекбоксов в markdown нет, а мне хотелось бы иметь больше вариантов, например чекбокс который неактивен, или как-то еще выделить таск, который не получится сделать, например отметить его крестиком а не галочкой.
Оказывается, у github есть расширение спецификации markdown и можно воспользоваться кодами типа :white_check_mark: или :negative_squared_cross_mark: чтобы получить более интересные комбинации.
Существует проект, который показывает все возможные иконки, которые можно напечатать подобным образом.
К сожалению, в Gitlab эти иконки работают не все, но большинство тоже работают.
Проверил поддерживаются ли они в IntelliJ — облом, не поддерживаются. Obsidian тоже не понимает этого расширения. Microsoft Visual Code тоже не понимает. Надеюсь, в будущем поддержка будет добавлена, уж больно полезная эта фича.
Upd: в принципе расширения разметки не нужны, все эти иконки это Unicode символы, которые можно и как есть использовать, например вот так: ✅ ❌ ✔️. Так что поддержки можно и не ждать а уже сразу начать использовать.