<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Копытов Иван: заметки с тегом домен</title>
<link>https://www.kini24.ru/tags/domen/</link>
<description>Блог ленивого сисадмина</description>
<author></author>
<language>ru</language>
<generator>Aegea 11.3 (v4134)</generator>

<itunes:subtitle>Блог ленивого сисадмина</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Продление домена</title>
<guid isPermaLink="false">230</guid>
<link>https://www.kini24.ru/all/prodlenie-domena/</link>
<pubDate>Thu, 04 Apr 2019 10:31:25 +0700</pubDate>
<author></author>
<comments>https://www.kini24.ru/all/prodlenie-domena/</comments>
<description>
&lt;p&gt;Вчера утром пришло очередное напоминание об окончании срока регистрации домена. И, хотя до него оставалось еще около трех недель, решил не откладывать и продлить срок регистрации.&lt;br /&gt;
Для начала зашел на сайт «основного» регистратора, посмотрел цену — 899 рублей. В памяти всплыло, что где-то видел дешевле. Зашел на сайт партнерского регистратора, где первоначально регистрировал домен. И верно, цена в полтора раза ниже — 599 рублей. Деньги лишними не бывают, поэтому будет продлевать тут :-) Выбираю пополнение баланса, в качестве метода пополнения — списание с банковской карты. Подтверждаю пополнение, получаю смс о списании денег. В личном кабинете выбираю продление, деньги списываются со счета, текущий баланс становится равным 1 рублю. Следом падает еще одна смс и письмо на почтовый ящик. Поначалу подумал, что это подтверждение о продлении. Открываю смс, а в ней информация об отказе в приеме платежа и возврате средств. Странно... Открываю письмо — оно от системы Яндекс.Деньги. В письме текст, говорящий что что-то пошло не так, поэтому деньги они мне возвращают. Да ёпрст! Возвращаюсь в личный кабинет — там то же самое, что и в письме от Яндекса. Блjad! Открываю список доменов, а мой продлен до 2020 года. Не понял! Подождал несколько часов, проверил снова — продлен. По подсказке в одном чате смотрю результаты whois — тоже продлен. Хм...&lt;br /&gt;
Насколько я понял, деньги поступили на лицевой счет регистратора, я успел оплатить продление, списав деньги со счета в личном кабинете. Затем что-то пошло не так и Яндекс вернул всю сумму, которую я успел перевести. По итогу, домен продлен, денег на это не потрачено. Но для полной уверенности нужно дождаться 23 апреля и посмотреть не изменится ли ситуация.&lt;/p&gt;
</description>
</item>

<item>
<title>Перенос домена</title>
<guid isPermaLink="false">53</guid>
<link>https://www.kini24.ru/all/perenos-domena/</link>
<pubDate>Fri, 28 Apr 2017 15:17:34 +0700</pubDate>
<author></author>
<comments>https://www.kini24.ru/all/perenos-domena/</comments>
<description>
&lt;p&gt;Никогда не задавался такой целью, да и необходимости такой никогда не было. В процессе оплаты одного из сайтов СТМ выяснилось, что домен зарегистрирован у одного регистратора, а сам хостинг располагается у другого. Картина достаточно «печальная». Почитав правила, стало понятно, что без заявления, заверенного у нотариуса, перенос никто делать не будет. Так как владельцем домена является генеральный директор, то понятно, что времени у нее на посещение нотариуса нет. Печаль...&lt;br /&gt;
Вбиваем в поиск запрос на перенос домена от этого регистратора. И тут же натыкаемся на информацию о том, что никакие заявления уже не нужны. Идем в личный кабинет, выполняем все действия по инструкции. Тут меня ждал первый облом — для получения кода переноса требуется верифицировать персональные данные. Подаю заявку, мне отвечают «ждите сутки». Да не вопрос, подожду!&lt;br /&gt;
На следующий день приходит письмо, что аккаунт проверен, можно продолжать. Снова иду в личный кабинет, запрашиваю код. Второй облом — необходимо внести данные для смены регистратора. Указанные в профиле данные не годятся. Ладно, забиваю свой номер телефона и email. Подтверждаю оба, снова запрашиваю код. Среди прочих вариантов выбираю отправить его на электронную почту. Третий облом — состояние домена не позволяет получить код. Эт еще почему? Повторяю процедуру запроса, на этот раз все получается. Видимо, еще выполнялось сохранение данных для переноса. С кодом в зубах, а точней, в письме, иду в личный кабинет регистратора, к которому нужно перенести домен. Уже понимая, что сам не найду, сразу открываю справку, где процедура переноса, как оказалось, расписана очень подробно и даже с картинками (вот за это я его тоже люблю! в смысле регистратора). Снова действуем по инструкции, вбиваем код переноса и выполняем еще парочку подтверждений. В конце получаю письмо с уведомлением, что процесс переноса может занять до 5-ти рабочих дней. А мне что? Мне торопиться некуда.&lt;br /&gt;
В общем, вот такой вот маленький квест получился. Перенос домена от одного регистратора к другому — процедура хоть и простая, но в процессе у вас запрашивается куча подтверждений. Ну и, конечно, лучше всего 100 раз проверить что, куда и откуда. А то ведь бывало, что щелкнешь не туда, нажмешь не ту кнопочку и все, ты попал. Хорошо еще, если на небольшую сумму :-)&lt;/p&gt;
</description>
</item>

<item>
<title>Защита сайта при помощи HTTP Public Key Pinning (HPKP)</title>
<guid isPermaLink="false">5</guid>
<link>https://www.kini24.ru/all/zaschita-sayta-pri-pomoschi-http-public-key-pinning-hpkp/</link>
<pubDate>Tue, 16 Aug 2016 22:24:24 +0700</pubDate>
<author></author>
<comments>https://www.kini24.ru/all/zaschita-sayta-pri-pomoschi-http-public-key-pinning-hpkp/</comments>
<description>
&lt;p&gt;Данная технология призвана защитить посетителя вашего сайта от атаки типа MITM (Man in the middle, человек посередине). Иными словами посетитель может быть уверен, что данные, которые он получает, исходят с вашего сайта, а не с какого-то другого.&lt;/p&gt;
&lt;p&gt;Суть технологии состоит в создании публичного ключа на основе сертификата, который установлен на вашем сайте. Соответственно, чтобы она работала, требуется валидный сертификат. Впрочем, она будет работать и на самоподписанных (self-signed) сертификатах. Полученный на основе вашего сертификата ключ добавляется в заголовок ответа вашего сервера, после чего браузер сравнивает полученный ключ с тем, который он вычисляет после получения данных о вашем сертификате.&lt;/p&gt;
&lt;p&gt;Итак, что нам требуется:&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;Какой-либо установленный для сайта сертификат.&lt;/li&gt;
&lt;li&gt;Консоль для получения публичного ключа.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Кстати, не так давно для нормального функционирования этой технологии требовался всего лишь один ключ, сейчас же нужно указывать два или более ключей. На мой взгляд двух будет достаточно, от этого и будем отталкиваться. Второй ключ является «резервным», этот момент я не совсем понимаю, но не будем отступать от требований.&lt;/p&gt;
&lt;p&gt;Действовал я по следующей схеме:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;— получаем сертификат на сайте &lt;a href="https://letsencrypt.org/"&gt;Let’s Encrypt&lt;/a&gt; для двух сайтов: example.com и www.example.com;&lt;/li&gt;
&lt;li&gt;— так как я использую вариант без www, то ключ, полученный на базе первого будет основным, на базе второго — резервным;&lt;/li&gt;
&lt;li&gt;— генерируем ключи для обоих сертификатов;&lt;/li&gt;
&lt;li&gt;— добавляем нужные инструкции в файл /&lt;i&gt;etc/httpd2/conf/sites-available/default-http.conf&lt;/i&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;О получении сертификата рассказывать не буду, достаточно почитать главную страницу сайта. Допустим, вы его получили и установили на свой сайт. Теперь требуется создать ключи при помощи следующей команды:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;openssl x509 -noout -in certificate.pem -pubkey | openssl rsa -pubin -outform der | \&lt;/code&gt;&lt;/pre&gt;&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;openssl dgst -sha256 -binary | base64&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;где &lt;i&gt;certificate.pem&lt;/i&gt; — полный путь к сертфикату.&lt;/p&gt;
&lt;p&gt;После выполнения команды вы получите нечто подобное:&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;i&gt;LPJNul+wow4m6DsqxbninhsWHlwfp0JecwQzYpOLmCQ=&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Это и есть нужный вам ключ. Повторяем команду для второго сертификата и добавляем данные в файл конфигурации сайта:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Header set Public-Key-Pins &amp;quot;pin-sha256=\&amp;quot;pin1\&amp;quot;; pin-sha256=\&amp;quot;pin2\&amp;quot;; max-age=time&amp;quot;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;где:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;i&gt;pin1&lt;/i&gt; — основной ключ для данного сайта. В моем случае example.com;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;pin2&lt;/i&gt; — резервный ключ для сайта. То есть www.example.com;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;time&lt;/i&gt; — время действия ключа в секундах.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Опциональный параметр &lt;i&gt;includeSubDomains&lt;/i&gt; указывает на то, что ключи действительны также для поддоменов.
Еще один необязательный параметр report-uri указывает на адрес, куда должны отправляться отчеты об ошибках в формате JSON. Его я, возможно, добавлю на сайт, но пока что считаю его ненужным для себя.&lt;/p&gt;
&lt;p&gt;Какие тут есть нюансы? Если вы неправильно настроите HPKP, ваш сайт станет недоступен. Можно также настроить отправку отчетов в случае каких-либо ошибок. Для этого немного меняем заголовок (или просто добавляем еще одной строкой):&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Header set Public-Key-Pins-Report-Only &amp;quot;pin-sha256=\&amp;quot;pin1\&amp;quot;; pin-sha256=\&amp;quot;pin2\&amp;quot;; max-age=time&amp;quot;&lt;/code&gt;&lt;/pre&gt;</description>
</item>

<item>
<title>Внедрение HTTP Strict Transport Security (HSTS) на свой сайт</title>
<guid isPermaLink="false">4</guid>
<link>https://www.kini24.ru/all/vnedrenie-http-strict-transport-security-hsts-na-svoy-sayt/</link>
<pubDate>Tue, 16 Aug 2016 11:56:05 +0700</pubDate>
<author></author>
<comments>https://www.kini24.ru/all/vnedrenie-http-strict-transport-security-hsts-na-svoy-sayt/</comments>
<description>
&lt;p&gt;Сначала небольшая &lt;a href="https://ru.wikipedia.org/wiki/HSTS"&gt;выдержка из википедии&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;«HSTS (сокр. от англ. HTTP Strict Transport Security) — механизм, активирующий форсированное защищённое соединение через протокол HTTPS. Данная политика безопасности позволяет сразу же устанавливать безопасное соединение, вместо использования HTTP-протокола. Механизм использует особый заголовок Strict-Transport-Security для принудительного использования браузером протокола HTTPS даже в случае перехода по ссылкам с явным указанием протокола HTTP. Механизм специфицирован в RFC6797 в ноябре 2012 года.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;HSTS помогает предотвратить часть атак, направленных на перехват соединения между пользователем и веб-сайтом, в частности атаку с понижением степени защиты и воровство кук.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Дополнительную защиту https-соединений предоставляют методы Certificate pinning (хранение списка разрешенных для домена сертификатов или CA в исходных текстах браузера) и HTTP Public Key Pinning (англ.). Они предотвращают множество возможностей подмены tls-сертификатов https-сервера.»&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Для внедрения этой технологии нам понадобится несколько вещей:&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;Наличие валидного сертификата (можно бесплатно получить на сайте &lt;a href="https://letsencrypt.org/"&gt;Let’s Encrypt&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Уверенность в том, что будет использоваться только https протокол, включая все ваши субдомены.&lt;/li&gt;
&lt;li&gt;Полное перенаправление с http-версий сайтов на https.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Если что-то из этого по каким-то причинам вам не подходит, то эта технология вам не нужна.&lt;/p&gt;
&lt;p&gt;Так как у меня используется «старенький» Apache версии 2.2, то и настраивать, соответственно, мы будет его.
Для включения HSTS нам нужно добавить в файл /&lt;i&gt;etc/httpd2/conf/sites-available/default_https.conf&lt;/i&gt; следующие строки:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;&amp;lt;IfModule ssl_module&amp;gt;
    &amp;lt;VirtualHost *:443&amp;gt;
        Header set Strict-Transport-Security &amp;quot;max-age=31536000; includeSubDomains; preload&amp;quot;
   &amp;lt;/VirtualHost&amp;gt;
&amp;lt;/IfModule&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Первые и последние две строки — стандартные для данного файла, если они имеются, то добавлять их не нужно. Нас больше всего интересует третья строчка.&lt;/p&gt;
&lt;p&gt;Инструкция Header set позволяет вставить заголовок в ответ сервера. В данном случае заголовок «Strict-Transport-Security». В скобках за ним расположены параметры этого заголовка:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;i&gt;max-age&lt;/i&gt; — время в секундах, которое будет действовать этот заголовок. Если быть точнее, то это время, в течение которого сайт будет доступен по протоколу HTTPS. Не рекомендуется устанавливать его менее 18 недель;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;i&gt;includeSubDomains&lt;/i&gt; — указывается, если действие заголовка распространяется также на поддомены. Не является обязательным;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;i&gt;preload&lt;/i&gt; — параметр, позволяющий указывать, что ваш сайт никогда не будет доступен по незащищенному протоколу. Не является обязательным. Про него будет чуть ниже.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Итак, данные мы добавили, теперь нужно перезагрузить файлы конфигурации:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;# service httpd2 condreload&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Наличие заголовка в ответе сервера можно проверить, например, на &lt;a href="http://mainspy.ru/otvet_servera"&gt;этом сайте&lt;/a&gt;. Среди прочих вы должны увидеть такую строчку:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Strict-Transport-Security: max-age=31536000; includeSubDomains; preload&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Идем на сайт &lt;a href="https://www.ssllabs.com/ssltest/"&gt;ssllabs&lt;/a&gt;, вводим адрес своего сайта с указанием https и тестируем, что у нас получилось. Тест занимает некоторое время, его вполне хватит на то, чтобы, например, налить себе чашечку кофе.&lt;/p&gt;
&lt;p&gt;По итогу мы должны увидеть такие строчки:&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://www.kini24.ru/pictures/hsts-01.jpg" width="957" height="41" alt="Эту вы увидите в шапке отчета" /&gt;
&lt;div class="e2-text-caption"&gt;Эту строчку вы увидите в шапке отчета&lt;/div&gt;
&lt;/div&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://www.kini24.ru/pictures/hsts-02.jpg" width="854" height="47" alt="Эта будет находиться ближе к концу отчета" /&gt;
&lt;div class="e2-text-caption"&gt;Эта будет находиться ближе к концу отчета&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Если вы их видите, значит все в порядке. В противном случае ищите ошибку.&lt;/p&gt;
&lt;p&gt;И, наконец, про параметр &lt;i&gt;preload&lt;/i&gt;. Существует так называемый «preload list», в котором перечислены все домены, использующие технологию HSTS. Своего рода список «избранных» :-) При желании вы можете &lt;a href="https://hstspreload.appspot.com/"&gt;подать заявку&lt;/a&gt; на включение вашего домена в этот список, но на скорый ответ не рассчитывайте. Список обновляется с выпуском каждой версии браузера Chrome, поэтому может пройти несколько месяцев, прежде, чем вы увидите, что ваш домен добавлен в него. Для подачи заявки нужно выполнить несколько требований, указанных на главной странице сайта, поэтому рекомендую прочитать ее внимательно. Значение имеет даже регистр параметров заголовка. В случае критической ошибки после нажатия на кнопку «Check status and eligibility» фон страницы станет красным, в случае некритической — желтым, если же все верно — зеленым. На этой же странице указано, что нужно делать, чтобы удалить свой домен из этого списка.&lt;/p&gt;
&lt;p&gt;В принципе, это все, что вам нужно знать об этой технологии защиты вашего сайта. Надеюсь, что этот текст вам помог.&lt;/p&gt;
</description>
</item>


</channel>
</rss>