• Программы-аутентификаторы?

    nmk2002
    @nmk2002
    работаю в ИБ
    Тут есть сравнение аутентификаторов от Google, Microsoft и есть Personal Mobile от компании Nexus:
    Ответ написан
    Комментировать
  • Подойдет ли бесплатный SSL сертификат от LetsEncrypt для работы с Яндекс Кассой?

    nmk2002
    @nmk2002
    работаю в ИБ
    SNI не является частью сертификата. Это дополнение к протоколу TLS, позволяющее передать имя сервера при хэндшейке, чтобы сервер использовал соответствующий сертификат. Сделано для того, чтобы разные сайты на одном IP могли использовать разные сертификаты. На shared хостинге у вас на одном IP будут и сайт site1.ru и site2.ru. Так вот, SNI позволяет делать так, чтобы каждый из них мог использовать свой сертификат. Не важно, кто выдал вам сертификат Let's Encrypt или Thawte.
    Скорее всего вы неверно поняли сотрудников поддержки ЯК. Может, они хотели, чтобы в сертификате был указан SAN (subjectAlternativeName)? Так это можно сделать и на Lets Encrypt.
    Ответ написан
    2 комментария
  • Какие есть OTP на основе текста?

    nmk2002
    @nmk2002
    работаю в ИБ
    Есть алгоритм OATH OCRA (RFC 6287). Принцип такой:
    пользователь видит в браузере запрос сервера, вводит его в генераторе OTP и на генераторе отображается одноразовый пароль. Этот пароль пользователь вводит в браузере. Правда это совсем не то, что вы описали. Тут сам пароль генерируется на стороне клиента. Но, то что вы хотите не может быть безопасным. Одноразовые коды, которые получает пользователь по каналам SMS/push для их дальнешего прямого использования в качестве паролей должны быть рандомно сгенерированы, и должны не зависеть от входных данных. В противном случае вся ваша безопасность будет держаться на незнании/сложности вашего алгоритма. Жизнь доказала уже неоднократно, что "security through obscurity" это плохая защита.
    Раз уж вы рассматриваете канал push для взаимодействия с клиентом, то посмотрете на методы аутентификации и электронной подписи использующие смартфон, как токен. Только не OTP-токен, а криптографический токен с ассиметричными ключами. Все намного проще, чем может показаться на первый взгляд. При необходимости подписать документ (для аутентификации аналогично), пользователю на смартфон приходит push сообщение, по тапу на него открываются подробности транзакции, которые пользователь принимает и подписывает уже привычным ему способом (PIN, отпечаток, FaceID).
    Могу ответить на вопросы по такому софту или, если хотите, продемонстрировать реализацию такой аутентификации/подписи.
    Ответ написан
  • Как сделать промежуточный ЦС?

    nmk2002
    @nmk2002
    работаю в ИБ
    Вам надо, чтобы клиентский софт(ОС, браузер,...):
    - доверял корневому УЦ
    - мог построить цепочку от вашего конечного сертификата до корневого УЦ.

    Для последнего пункта надо, чтобы вы:
    - предоставляли клиенсткому софту не только ваш сертификат, а еще и сертификат промежуточного УЦ. Так обычно делают с SSL сертификатами веб-сайтов - веб-сервера предоставляют цепочку, а не только сам сертфиикат сайта.
    ИЛИ
    - загрузили в доверенные не только корневой сертификат, но и сертификат промежуточного УЦ.
    Ответ написан
    Комментировать
  • Что лучше выбрать OpenID или OAuth?

    nmk2002
    @nmk2002
    работаю в ИБ
    Это протоколы для разных задач.
    OpenID - для аутентификации
    OAuth - для авторизации.
    Если считать, что ваш вопрос составлен корректно, то получается, я уже ответил вам.
    Ответ написан
    Комментировать
  • Как авторизовать пользователя по сертификату в NGINX с проверкой CN?

    nmk2002
    @nmk2002
    работаю в ИБ
    Можно использовать сервер аутентификации, который будет при доступе к ресурсу проверять сертификат пользователя на валидность и на принадлежность к группам в LDAP, а при необходимости и другие параметры учесть, например, разрешенных IP-адресов или дату/время доступа. Достаточно стандартная задача.
    Ответ написан
  • Как добавить самоподписанный сертификат в браузеры?

    nmk2002
    @nmk2002
    работаю в ИБ
    Если добавляете как клиентский сертификат, то есть для дальнейшего использования для аутентификации клиента, то вам нужен файл p12/pfx, который содержит и закрытый ключ. Сделать его можно из закрытого ключа и сертификата используя команду openssl.
    Если вам нужно добавить сертификат сервера, то вы просто не туда добавляете. Нужно добавлять не в личные сертификаты, а в доверенные корневые центры сертификации.
    Ответ написан
    Комментировать
  • Почему certbot не делает автообновления сертификата?

    nmk2002
    @nmk2002
    работаю в ИБ
    Сертификат Let's Encrypt можно обновить, если его срок действия истекает менее, чем через 30 дней.
    Ответ написан
    1 комментарий
  • А зачем вообще покупать SSL-сертификат для сайта у GlobalSign/Comodo/etc, если можно подписать самому?

    nmk2002
    @nmk2002
    работаю в ИБ
    В вашем случае самоподписанного сертификата достаточно. Отличия от сертификата, полученного у одного из доверенных центров сертификации только в доверии. То есть ОС, браузер и приложения ничего не знают об издателе сертификата и не доверяют ему по умолчанию. Если вручную не указать им, что этот сертификат доверенный, то вы будете видеть предупреждение об ошибке сертификата.
    Если таких сайтов у вас несколько, то я бы рекомендовал сделать небольшой УЦ и подписывать им сертификаты для ваших сайтов. Тогда браузерам надо доверять только этому вашему УЦ, а не каждому сертифкату по отдельности

    УЦ можно сделать на базе любого бесплатного PKI. Есть достаточно удобные и простые в установке и настройке.
    Ответ написан
    Комментировать
  • Аутентификация по сертификатам в чужом домене пытается выполняться с явным указанием domain\username. User hint не спасает. Как обойти?

    nmk2002
    @nmk2002
    работаю в ИБ
    Написано очень запутано. Не важно в каком домене PKI. По сути у вас есть просто PKI, он должен выдавать сертификаты пользователям домена domain1.ru с CN=user@domain1.ru и, например, для пользователей domain2.ru с CN=user@domain2.ru.
    Инструкция по организации аутентификации у вас верная, там все описано:
    1. Помещаете сертификат УЦ в NTAuth
    2. Делаете сертификаты для контроллеров домена
    Если сделаете все по шагам, то работать должно.

    Если же вы хотите заходить по сертификатам user@domain1.ru в компьютеры из domain2.ru, то тут могут быть проблемы.
    Ответ написан
  • Как сконвертировать pfx в pkcs7?

    nmk2002
    @nmk2002
    работаю в ИБ
    openssl pkcs12 -in filename.pfx -out filename.pem -nodes
    Внутри будет и сертификат и закрытый ключ в формате pem.
    Отдельно сертификат можно извлечь добавив -nokeys к команде.
    Ответ написан
    Комментировать
  • Единый сервер доступа ssh, возможно ли?

    nmk2002
    @nmk2002
    работаю в ИБ
    Знаю как решить эту и подобную задачу средствами платного ПО. Поэтому опишу просто подход.
    Сервер доступа и аутентификации предоставляет интерфейс многофакторной (не обязательно) аутентификации, после прохождения которой пользователю становятся доступны ресурсы. Веб ресурсы доступны в браузере, а для классических ресурсов строится VPN-туннель(в вашем случае 22 порта) от клиента до сервера доступа.
    Доступ к бэкэнд-ресурсам (в вашем случае SSH-серверам) есть только с сервера доступа, напрямую клиенты не должны иметь возможность подключиться к этим серверам.
    Дополнительно можно настроить SSO таким образом, что при выборе SSH-сервера у пользователя автоматически запустится putty с указанными учетными записями. По сути сервер доступа и аутентификации будет менеджером паролей к SSH-серверам.
    Ответ написан
    1 комментарий
  • SHA-1 в сертификате корневого ЦС, критично?

    nmk2002
    @nmk2002
    работаю в ИБ
    Алгоритм подписи корневого неважен, так как ОС и браузеры не производят проверку подписи корневых сертификатов. Вместо этого они сверяют сертификат с тем, что уже есть у них в хранилище.
    Ответ написан
    Комментировать
  • Почему Android ругается на сертификат?

    nmk2002
    @nmk2002
    работаю в ИБ
    Недавно столкнулся с тем, что цепочка сертификатов, которую предоставил Comodo не была доверенной в ios. Нашел другую цепочку для моего сертификата, которая подходила всем устройствам.
    Ответ написан
  • А как вы реализовываете кроссдоменную авторизацию?

    nmk2002
    @nmk2002
    работаю в ИБ
    Вы практически описали протокол SAML. То, что вы называете сервером авторизации, в терминологии SAML является Identity Provider (IdP). Остальные сервисы - Service Providers (SP).
    При попытке войти на один из SP вас редиректит на IdP для проверки, аутентифицированы вы уже или нет. Если да, то тут же происходит обратный редирект на SP с подписанными данными о вашей аутентифицированной сессии. Если вы не были аутентифицированы, то IdP сначала проверит ваши учетные данные (логин-пароль, OTP или что еще вы настроете), а потом так же произведет перенаправление браузера на SP с подписанной информацией о пользователе и статусе его сессии.
    В протоколе SAML реализован single logout.
    Ответ написан
  • Как должна выглядеть цепочка сертификации на IOS при подключении к Wi-Fi 802.1x?

    nmk2002
    @nmk2002
    работаю в ИБ
    Вероятнее всего 802.1x не будет работать с wildcard сертификатом. Насколько я знаю, такое ограничение есть на клиентах windows. Возможно, это же справедливо и для iPhone.
    Проверьте, как работает аутентификация с других устройств (например, ноутбук с windows или linux).
    Еще возможно, iphone не может построить цепочку до корневого УЦ. Тогда на сервер надо добавить всю цепочку до корневого сертификата.
    Ответ написан
  • Как установить SSL сертификат на Gatewey?

    nmk2002
    @nmk2002
    работаю в ИБ
    Контейнер .p7b не содержит закрытых ключей, а только открытые ключи.
    Вам нужно найти закрытый ключ (private key).
    Или сгенерировать ключевую пару заново и получить новый сертификат.
    Ответ написан
  • Двухфакторная аутентификация: пароль + email?

    nmk2002
    @nmk2002
    работаю в ИБ
    пароль + код на email - вполне себе двухфакторная аутентификация.
    Одноразовый пароль, отправляемый по email можете просто генерировать рандомно на стороне сервера и потом сравнивать его с полученным от пользователя.
    Отличие от SMS - канал передачи одноразового пароля. Вы можете даже использовать пуш-уведомления на смартфоне для передачи одноразовых паролей.

    Другой вариант - OTP генератор. То есть у вас должен быть генератор одноразовых паролей (аппаратный или программный), а на стороне сервера должна быть реализована логика сервера аутентификации по стандарту OATH. Есть готовые модули реализующие этот стандарт.

    Другой, возможно, несколько устаревший способ: TAN-списки. Раньше их использовали некоторые банки. На обычном принтере печатается лист с одноразовыми паролями, которые потом сервер запрашивает при аутентификации или, как в случае с банками, при авторизации транзакции. По сути метод аналогичен отправке пароля по sms/email, но тут сервер уже должен хранить список сгенерированных паролей, а не только текущий пароль.

    Еще один способ - печать матрицы с именованными столбцами и строками. Сервер аутентификации при входе будет запрашивать пароль по координатам матрицы, например, A4,B1,F1,C3

    Полагаю, что вы можете использовать сертификат пользователя как второй фактор в добавок к паролю. Это вообще уже реализовано на веб-серверах и нужно просто немного настроить конфиг. В продакшене для такой задачи конечно лучше использовать смарт-карты и разворачивать PKI, но для курсовой можно обойтись и openssl.

    Есть и другие, более экзотические методы двухфакторной аутентификации.
    Ответ написан
    Комментировать
  • Материал для подготовки к COMPTia Security+ на русском?

    nmk2002
    @nmk2002
    работаю в ИБ
    В IT английский язык обязателен.
    Ответ написан
    Комментировать
  • Какое ПО применяется для генерации ssl сертификата?

    nmk2002
    @nmk2002
    работаю в ИБ
    Для промышленного использования посоветую OpenTrust PKI или neXus Certificate Manger. Для личного использования или для небольших инсталляций можете посмотреть retrust.me.
    При выборе PKI есть ряд нюансов. Например: какие сертификаты вы планируете выпускать, какая схема выпуска (централизованная, децентрализованная), нужна ли поддержка SCEP, нужен ли OCSP, требуется ли выпускать сертификаты в соответствии с ГОСТ, планируется ли архивирование ключей шифрования и пр.
    Технически развертывание не такое сложное. Важно продумать варианты использования PKI, архитектуру, разработать политики и регламенты, назначить "хранителей ключей", провести key ceremony...
    Требования к железу зависят от софта. Но в общем случае вам может понадобится:
    - offline CA либо в виде сервера либо в виде флэшки (нескольких флэшек)
    - online CA - виртуалка или отдельный сервер
    - HSM - для защиты ключей
    Банально, но упомяну, что для всего нужно иметь резерв по оборудованию.

    И да, я работаю в этой сфере.
    Ответ написан
    Комментировать