В этой статье я хочу рассказать о ...
Привет всем жителям и гостям хабра и с новым годом! :)
В этой статье я хочу рассказать о том, с какими фичами Jii вступил в 2016-й год и что его в ждет в новом году.
Итак, начнем по порядку.
Читать дальше →
Сижу, читаю с утра openssl-dev, никого не трогаю...
И вдруг вижу.
А-а-а, это ...
Сижу, читаю с утра openssl-dev, никого не трогаю...
И вдруг вижу.
А-а-а, это уже не зомби, это прям личи какие-то атакуют! 2016 год послезавтра, а тут народ активно патчит OpenSSL на предмет сборки DJGPP и работы с Waterloo TCP.
Когда я десять лет назад Tcl 8.5 под DJGPP портировал я уже себя некромантом чувствовал...
Ох, чувствую, ждет нас через 22 года веселое разбирательство в том, в каком количестве унаследованных систем остался 32-битный time_t...
This entry was originally posted at http://vitus-wagner.dreamwidth.org/1155729.html. Please comment there using OpenID. Now there are comments
Продолжаю разбираться с SSL-сертификатами на своих машинах.
Продолжаю разбираться с SSL-сертификатами на своих машинах.
Сейчас общий план такой:
1. https на www.wagner.pp.ru и www.spacians.net - сертификаты от startssl. Это внешние сервисы, туда посторонние люди ходят, соответственно должны опознаваться браузерами из коробки.
2. imap и smtp на mail.wagner.pp.ru - сертификаты моего CA. Туда ходят только настроенные почтовые клиенты. В объеме прочих работ по настройке клиента установка корневого сертификата - ерунда
3. https на mail.wagner.pp.ru - сертификат от startssl. Кого попало туда, конечно не пустят, но тем не менее вебмейл предназначен для доступа к почте из странных ситуаций - из интернет-кафе, с чужих машин и т.д. Следовательно здесь имеет смысл сертификат, которому доверяет браузер без специальных настроек.
4. smtp на mx.wagner.pp.ru - сейчас здесь стоит сертификат своего CA. Но может я всё-таки неправ, и здесь, чтобы внешие серверы могли сказать STARTTLS при доставке почты?
5. xmpp на wagner.pp.ru. Те же самые соображения.Только проще - не надо отдельный сертификат заказывать, можно воспользоваться тем же, который для https, потому что hostname совпадает.
6. https на home.wagner.pp.ru. Сертификат своего CA. Ибо чужие здесь не ходят. Из интересных для моих друзей ресурсов здесь только архив бардовской песни. Но поскольку никто после того как сдох жесткий диск и старый файл паролей потерялся (Он оказался в небэкапимой области. Теперь это исправлено), никто не попросил восстановить доступ, наверное все его уже выкачали. В конце концов, если человек соберется у меня логин туда просить, то он и сертифкат поставит. И вообще, раздать что-ли под паролем /srv/files/books наряду с /srv/files/audio/bards? Там полтораста гигов.
7. openvpn - естественно свои сертификаты. И на сервере, и на всех клиентах.
Кстати, тут когда ставил сертификат на https://mail.wagner.pp.ru, обнаружил что у prayer webmail в конфиге не предусмотрено опции для загрузки цепочки промежуточных сертификатов CA. Выкачал исходники, развернул, полез патчить. И обнаружил что prayer для загрузки сертификатов использует функцию SSL_CTX_use_certificate_chain_file. Т.е. просто надо сертификат промежуточного CA положить тот в тот же файл, где сертификат самого сайта, после него.
This entry was originally posted at http://vitus-wagner.dreamwidth.org/1154424.html. Please comment there using OpenID. Now there are comments
Прикрутил к www.wagner.pp.ru и spacians.net сертификаты от startssl.com. Теперь люди могут ходить ко ...
Прикрутил к www.wagner.pp.ru и spacians.net сертификаты от startssl.com. Теперь люди могут ходить ко мне по https не устанавливая моего сертификата.
Порекламировать что-ли по этому поводу vws где-нибудь? Или сначала там переписать из маркетинговых соображений заглавную страницу вики?
Во всяком случае поменять местами разделы "это уже сделано" и "вообще-то хочется сделать".
Где теперь положено опенсурсные изделия рекламировать? Фрешмит-то почил в бозе.
This entry was originally posted at http://vitus-wagner.dreamwidth.org/1153672.html. Please comment there using OpenID. Now there are comments
... />PLEASE READ THE
CODE! YOU MUST ...
Собственно, с чего вопрос возник? А с того что мне захотелось чтобы на один из моих ресурсов, на которые я сам считаю необходимым ходить по https, могли ходить посторонние люди. Там, где чужие не ходят, можно вполне использовать свой собственный удостоверяющий центр. Как я и делал последние 15 лет. С тех самых пор когда у меня появился широкополосный интернет дома. Для этого не нужно ничего, кроме утилиты openssl и немножко знаний.
Но если хочется чтобы твоему сайту доверяли (в той степени, в какой вообще можно доверять сайту, про который услышал в первый раз) незнакомые люди, нужно использовать сертификат, от которого выстраивается цепочка доверия к одному из корневых сертификатов, встроенных в браузер.
В принципе, мне не жалко пускать посторонних людей в багтрекеры моих опенсурсных проектов по незащищенному http, но я же сам тогда буду ходить туда по этому самому http и вводить пароль по http. А вот мой пароль с правами коммита это уже немножко слишком много. Откатывать потом репозитории на бэкап неинтересно.
Поэтому сейчас они защищены моим собственным CA, сертификат которого лежит на главной странице. Но очень хочется vws немножко популяризовать.
Тащить его на гитхаб лень, потому что fossil удобнее git для проектов такого размера.
Вот я и занялся изучением вопроса, где бы взять задаром сертификат, которому будут доверять браузеры.
1. StartSSL. Пять лет назад у них было неплохо, а сейчас все просто ужасно. Во-первых, они по новой policy не выдают сертификаты на домены третьего уровня, даже если это в pp.ru или co.uk. Ну то мою задачу они перестали решать совсем. Я, конечно, могу пересадить эти самые репозитории на домен spacians.net, но это как-то совсем коряво. Кроме того ихняя авторизация по сертификатам не работает в IceWeasel. Пробовал 64-битный из jessie и 32-битный из wheezy. В конце концов, чтобы попасть на сайт пришлось специально chromium поставить.
Upd starcat13 убедил меня что я зря качу баллон на startssl.com. Благодаря его советам и сертификат логинный заработал в мозилле (почему-то примерно через сутки после выдачи) и провалидировать домен wagner.pp.ru и заказать на него сертификат удалось.
2. WoSign.com. То что они выдадут, будет не сертификатом, а китайской подделкой под сертификат ;-). На самом деле все не так страшно и даже online-переводчик с китайского для работы с этим сайтом уже не нужен. Похоже, сейчас это единственное приличное место для получения бесплатных сертификатов. Хотя там я еще не регистрировался и всю процедуру не проходил.
3. Тот самый letsencrypt.
4. Если поискать в гугле, то обнаружится куча предложений free SSL certificate. Но в большинстве своем это триалы. Выдается сертификат на месяц или на три, а потом плати как бы не больше, чем хостинг твоего сайта стоит.
На таком безрыбье приходится задуматься, а может всё таки сварить суп из рака, в смысле из letsencrypt.
Как мне тут вчера объяснили в комментах, кроме официального клиента существует некоторое количество неофициальных.
Список есть здесь.
Дополнительной проблемой является то, что letsencrypt выдает сертификаты на 3 месяца. А далее придется обновлять. Поскольку выполнять каждые три месяца ручное действие по администрированию сервера - это безумно много, то требуется полностью автоматическое решение.
Из тех решений что приведены в списке мне показались интересными:
- https://github.com/diafygi/letsencrypt-nosudo
- Там в README.md написано:
I love the Let's Encrypt devs dearly, but there's no way I'm going to trust their script to run on my server as root, be able to edit my server configs, and have access to my private keys.
.
Это хорошая, правильная паранойя. Но увы, входит в противоречие с задачей: "Все настроить и забыть лет на несколько".
- https://github.com/diafygi/acme-tiny/</a>
- Опять же очень правильные слова в README.md
Since it has to be run on your server and have access to your private Let's Encrypt account key, I tried to make it as tiny as possible (currently less than 200 lines). The only prerequisites are python and openssl.
PLEASE READ THE SOURCE CODE! YOU MUST TRUST IT WITH YOUR PRIVATE KEYS!
Чтение кода рвотного рефлекса у меня не вызывало. Но надо прочитать повнимательнее, прежде чем доверять этому свои ключи.
- https://github.com/lukas2511/letsencrypt.sh
- Решение на шелле с минимумом зависимостей. Продуманный интерфейс, вроде решает все задачи, какие надо. Но... 700 строк для шелловского скрипта это немножко слишком много.
- https://github.com/sludin/Protocol-ACME
- Перловая библиотека. Более-менее следует CPAN-овским стандартам кодирования, неплохо документирована. Конечно, зависимостей от перловых модулей многовато, но все же зависит она от проверенных модулей со CPAN с репутацией, а не от изделий программистов letsencrypt, как аналогичная питнововская.
.
.
В общем, если меня почему-то не устроит wosign, то разбираться надо будет, скорее всего с acme-tiny.
This entry was originally posted at http://vitus-wagner.dreamwidth.org/1153321.html. Please comment there using OpenID. Now there are comments