Календарик

Декабрь 2016
Пн Вт Ср Чт Пт Сб Вс
« Апр    
 1234
567891011
12131415161718
19202122232425
262728293031  

Выгружаем Реестр Запрещенных Сайтов с сайта Роскомнадзора

Выгружаем Реестр Запрещенных Сайтов с сайта Роскомнадзора

В ноябре вступило в силу злосчастное (для провайдеров) постановление правительства Российской Федерации №1101 от 26 октября 2012г. Но как обычно, без костылей и бубна выполнить его не получилось. А Роскомнадзор начал слать грозные письма с требованием отчитаться о выполнении постановления. Вот тут то шеф вручил мне такое письмо, в котором было указано, что еще вчера мы должны били на него ответить, и напутственно сказал: «Дерзай... и побыстрее».  Деваться некуда, пришлось дерзать :mrgreen:

Для тех, кто не в курсе: 26 октября 2012 г. вышло постановление правительства Российской Федерации от N 1101 «О единой автоматизированной информационной системе «Единый реестр доменных имен, указателей страниц сайтов в информационно-телекоммуникационной сети "Интернет" и сетевых адресов, позволяющих идентифицировать сайты в информационно-телекоммуникационной сети "Интернет", содержащие информацию, распространение которой в Российской Федерации запрещено»». Суть его и преследуемые цели понятны из названия. Несомненно, идея хорошая и это давно надо было сделать: все провайдеры теперь раз в сутки забирают список запрещенных ресурсов, и блокируют к ним доступ для своих абонентов. Но все как всегда, хотели как лучше, а вышло... через жопу

В этот реестр попало куча нормальных и безобидных сайтов, в инете полно новостей про это. Но я, как и многие, столкнулся с другой проблемой: а именно с получением самого реестра этих запрещенных сайтов.

Для его выгрузки надо:

  • Иметь квалифицированную электронную подпись
  • Сформировать сам файл запроса в xml
  • Подписать наш запрос электронной подписью в формате PKCS#7 и отправить вместе с запросом отвязанную подпись

Получить квалифицированную электронную подпись можно в любом удостоверяющем центре, из числа аккредитованных Минкомсвязи России, я делал через ТехноКад. Выбираем любой, звоните туда, объясняете для чего Вам эта подпись нужна (достаточно упомянуть zapret-info.gov.ru), оплачивайте и на следующий день сертификат у Вас на руках.

Мы платили только за сам сертификат, ни Крипто-Про, ни e-Token не брали (в Технокаде сделали все через Маркер Временного доступа). Крипто-Про и так стоит у бухгалтера, а e-Token не нужен был. Полученный сертификат и корневой Удостоверяющего Центра ставим в систему. Для спокойствия, проверьте Ваш сертификат на специальной странице портала Госуслуг

Пока деньги платятся, можно заняться файлом запроса. Сам файл запроса это простой и маленький xml файл (в кодировке windows-1251) делается за 5 минут в блокноте. Из памятки оператору связи копируем пример, вставляем в блокнот и редактируем под Вашу компанию

<?xml version="1.0" encoding="windows-1251"?>
<request>
<requestTime>2012-01-01T01:01:01.000+04:00</requestTime>
<operatorName>Наименование оператора</operatorName>
<inn>1234567890</inn>
<ogrn>1234567890123</ogrn>
<email>email@email.ru</email>
</request>

requestTime – дата и время формирования запроса с указанием временной зоны;
operatorName – полное наименование оператора связи/ Не используйте кавычки, пишите просто ООО Ромашка;
inn – ИНН оператора связи;
ogrn – ОГРН оператора связи;
email – тут лучше писать e-mail того, чьей ЭП используется для подписи

А теперь самый гиморный этап. Как оказалось, особого выбора чем (какой софтиной под виндой) подписывать наш xml файл - нет. Конечно уже есть готовое решение, в котором все делается за 5 сек - программа КриптоАРМ. Но ее бесплатная версия подписывать не хочет. А вот платные - без проблем, подписали за пару кликов (судя по видео о работе с прогой) и дело в шляпе. У нас в конторе ее нет, бухгалтера свои отчеты какой то другой софтиной подписывают, но она не умеет подписывать любые файлы. А покупать как то не хотелось (да да да решил сэкономить конторе малец денег 🙂 ), тем более если можно бесплатно. Для подписи мы будем использовать утилиту входящую в КриптоПро - csptest.exe. Ну тогда поехали 😎

Допустим Наш запрос сохранен как zapros.xml сохранен на D в папке Zapros. Т.е. путь к файлу у нас такой (регистр букв не важен)

d:\zapros\zapros.xml

Запускаем командную строку (на Win7 запускал от имени Администратора) в Windows: Пуск –> В поле поиск вписываем cmd – среди найденного увидите cmd.exe Командная строка – на ней правой кнопкой мыши и Выполнить от имени Администратора

В появившемся черном окне пишем и жмем на Enter:

cd C:\Program Files\Crypto Pro\CSP\

C:\Program Files\Crypto Pro\CSP\ - это папка по умолчанию, возможно у Вас КриптоПро стоит в другой папке, тогда перейдите в нее. Теперь набираем такую команду (все в одну строку) и снова на Enter

csptest.exe -sfsign -sign -detached -add -in d:\zapros\zapros.xml -out d:\zapros\zapros.xml.sign -my mail@mail.ru

Где вместо mail@mail.ru вписываем e-mail из сертификата, его указывают в заявлении на получении сертификата. Если все ОК, то Вас попросят дважды ввести пароль сертификата и в папке рядом с zapros.xml появится zapros.xml.sign. Вот это и есть подпись в отвязанном формате. Ну или как она там правильно называется.

Теперь осталось проверим подписанный xml и файл открепленной электронной подписи в формате PKCS#7. Снова заходим на специальную страницу портала Госуслуги и выбираем — электронного документа. ЭП — отсоединенная, в формате PKCS#7. Первым берем наш xml запрос zapros.xml, а вторым zapros.xml.sign. Если проверка прошла успешно, то смело идем за реестром. Через 5-10 минут используя идентификатор запроса проверяем статус. Если все ОК – скачиваем zip архив с Реестром Запрещенных Сайтов.

Вот и все 😎 Реестр у Нас. Я описал ручной режим, естественно при автоматизации процесс подписания и выгрузки Реестра будет другой. Пока же (сегодня только удалось выгрузить вручную) можно состряпать батник (в свойствах поставить «Запускать от имени Администратора» для Win7), что бы переподписывать быстрее. Вместо mail@mail.ru впишите e-mail из сертификата, которым подписываете файл

Открываем блокнот и пишем туда такой код. Пути к файлам для моего случая.

del d:\zapros\zapros.xml.sign /q

cd C:\Program Files\Crypto Pro\CSP

csptest.exe -sfsign -sign -detached -add -in d:\zapros\zapros.xml -out d:\zapros\zapros.xml.sign -my mail@mail.ru

pause

exit

Сохраняем файл, например, как qsign.bat. Запуская раз в день - Вы будете получать подписанный файл zapros.xml.sign. Перед запуском меняйте в zapros.xml дату запроса

  • Павел

    04.12.2013 10:38:53 Формирование подписи: ошибка, код завершения: 3 — an error occurred creating the PKCS#7 file or when reading the MIME message.
    04.12.2013 10:38:53 Команда: C:/OpenSSL-Win32/bin/openssl.exe smime -sign -binary -outform PEM -signer C:/Register111/in/cert.pem -in C:/Register111/in/request.xml~ -out C:/Register111/in/request.sign~
    04.12.2013 10:38:53 Пояснение: Loading ‘screen’ into random state — done
    unable to load signing key file
    3368:error:0906D06C:PEM routines:PEM_read_bio:no start line:.\crypto\pem\pem_lib.c:703:Expecting: ANY PRIVATE KEY

    04.12.2013 10:38:53 Register: Процесс завершен.

    Что я делаю не так?

    добавленно 04.12.2013 в 10:52 | · Ответить
    • Павел
      Был бы рад Вам помощь, но я последний раз деле это год назад и уже нифига не помню.
      + нет компа с КриптоПро под рукой, бухи уехали в другой офис.
      ++ Я не использовал для подписи openssl, я юзал csptest из КриптоПро

      добавленно 04.12.2013 в 12:41 | · Ответить
      • Павел

        КриптоПро тоже есть, просто в инструкции написано про настройку openssl. Если конечно можно по другому я не против 🙂
        После этих ошибок, при нажатии кнопки отправить запрос, пишет что тело запроса не найдено, хотя в папке in, появляется файл с расширением sign

        добавленно 05.12.2013 в 12:49 | · Ответить
        • >просто в инструкции написано про настройку openssl
          Тогда лучше спросить у автора этой инструкции.

          добавленно 05.12.2013 в 12:57 | · Ответить
  • Павел

    При формировании запроса и подписи выдает:
    Формирование подписи: ошибка, код завершения: 3 — an error occurred creating the PKCS#7 file or when reading the MIME message.
    Команда: C:/OpenSSL-Win32/bin/openssl.exe smime -sign -binary -outform PEM -signer C:/Register111/in/cert.pem -in C:/Register111/in/request.xml~ -out C:/Register111/in/request.sign~
    Пояснение: Loading ‘screen’ into random state — done
    unable to load signing key file
    3368:error:0906D06C:PEM routines:PEM_read_bio:no start line:.\crypto\pem\pem_lib.c:703:Expecting: ANY PRIVATE KEY

    Register: Процесс завершен.
    Когда делаю выгрузку вручную то прикрепляю подписанный запрос в формате .sig, а программа почемуто формирует .sign

    Помогите разобраться

    добавленно 04.12.2013 в 10:41 | · Ответить
  • GHost

    делал согласно этому мануалу. Автоhe респект.

    добавленно 21.11.2013 в 21:34 | · Ответить
  • Shikana

    Кто ознакомит с работой wsdl и выгрузкой в автоматическом режиме?

    добавленно 19.08.2013 в 13:15 | · Ответить
  • tramp

    Для windows, Linux — программа консольная и с графическим интерфейсом, выгружает, разбивает на файлы с url, ip и доменные имена, позволяет посмотреть в читабельном виде:

    добавленно 17.08.2013 в 20:47 | · Ответить
  • Andrey

    «Вас попросят дважды ввести пароль сертификата» — где взять этот «пароль сертификата»?

    добавленно 16.07.2013 в 18:00 | · Ответить
    • Этот пароль Вы создаете/придумываете при создании сертификата в удостоверяющем центре

      добавленно 16.07.2013 в 18:38 | · Ответить
  • sk8er

    Подскажите а как таким же способом подписать файл, только чтобы формат был *.sig и подпись была не открепленная а в файле.

    добавленно 24.01.2013 в 16:11 | · Ответить
  • толя

    а номер сертификата — это 20 символов серийного номера из бумажки от УЦ? …или чей-то из криптопро?

    добавленно 18.01.2013 в 10:58 | · Ответить
    • А зачем он Вам? При подписи просят ввести только пароль/пин и все.

      добавленно 18.01.2013 в 11:27 | · Ответить
  • avr

    здравствуйте! Вроде все сделала нормально, но в ком.строке после ввода с данными, куда выгружать файл.sign запрос на номер сертиф. ввожу #0:xxxxxxxxxxxxxxx к примеру и ответ Enter certificate number:
    #0:хххххххххххххххххх
    Source message length: 317
    Calculated signature (or signed message) length: 3690
    Signature was done. Signature (or signed message) length: 3674
    .\tmain.c:1718:c:Cannot open file for writing
    Total: SYS: 0.047 sec USR: 0.016 sec UTC: 50.031 sec
    [ErrorCode: 0x00000000]

    добавленно 10.12.2012 в 13:02 | · Ответить
    • Я не знаток в Crypto Pro 😳 могу лишь предполагать:
      1. Путь к файлу запроса который вы подписываете не правильный, желательно файл запроса положить не на системный диск
      2. Если у Вас Vista или 7, то консоль надо от имени админа запускать
      3. Пароль у Вас 2 раза спрашивает?

      Покажите плз полностью всю команду из командной строки, мыло естественно светить не надо

      добавленно 10.12.2012 в 21:17 | · Ответить
  • Alex

    автору респект и уважуха! избавил от гемора ))

    добавленно 04.12.2012 в 16:10 | · Ответить
    • Да без проблем, сам помучался малец вот и выложил

      добавленно 10.12.2012 в 21:18 | · Ответить
  • Марина

    Ну чего им все не сидится на месте, все что-то хотят «улучшить»,что-то изменить. Простой люд не успевает за их «улучшениями». Мож им немного отдохнуть, а то не хватит сил на самое нужное.

    добавленно 02.12.2012 в 08:21 | · Ответить

 

 

Докажи что ты не Бот - реши задачку :)
Сколько будет 5 + 4 ?
Please leave these two fields as-is:

Subscribe without commenting



Яндекс.Метрика