Техническое: дополнительные полезности от DNSSEC – SSHFP
DNSSEC удостоверяет информацию, размещаемую в DNS. Вообще, современное понимание DNS сильно шире простого преобразования “символьное имя <-> числовой адрес”. Эту систему рассматривают как распределённую базу данных, хранящую некие пары значений и снабжённую не менее распределённым механизмом для поиска. То, что при помощи DNS можно сопоставлять символьные имена хостов и IP-адреса – это лишь одно из применений полезного сервиса.
Например, существует такая ресурсная запись (то есть, пара значений из базы данных DNS) – SSHFP, SSH FingerPrint. Эта запись позволяет разместить в DNS отпечаток серверного криптографического ключа, используемого для доступа при помощи SSH. Зачем? Для того, чтобы SSH-клиент мог сверить данные, полученные при установлении соединения от сервера, с данными, размещёнными в DNS, и лишний раз убедиться, что всё в порядке, канал никто не перехватывает – или наоборот: перехватывает.
Для того, чтобы схема имела смысл, доменная зона должна быть безопасной, подписанной DNSSEC. Понятно, что подписанная зона удостоверяет IP-адрес, с которым будет устанавливаться соединение по SSH. Но DNS никак не гарантирует, что это соединение не перехвачено на уровне IP, и атакующий не подменяет сервер.
Включить проверку можно при помощи настройки SSH-клиента. Например:
$ ssh -o VerifyHostKeyDNS=yes test@example.com
(Понятно, что опцию VerifyHostKeyDNS можно просто указать в конфигах.)
Отпечаток, размещаемый в DNS, генерируется (в Linux-ах) при помощи следующей команды:
$ ssh-keygen -r dxdt.ru
Например, я держу такую запись в зоне dxdt.ru, которая, естественно, подписана DNSSEC. Выглядит запись так:
dxdt.ru. IN SSHFP 1 1 0A1D19C05D239CCE90EE616DEB2EF80B35F3759B
– посмотреть может каждый, опросив серверы, поддерживающие зону.
На мой взгляд, полезное применение DNSSEC.
Адрес записки: https://dxdt.ru/2013/04/23/5724/
Похожие записки:
- Боты AI
- Рассылка SMS и распределённые сети под управлением Telegram
- Контринтуитивное восприятие ИИ на примере из криптографии
- Реплика: теоретическая разборка карамелек
- Квантовая криптография и металлический контейнер
- Письмо про приостановку разработки ИИ
- Полиморфизм закладок в стиле ROP
- Уровни сигнатур клиентских подключений
- Домены верхнего уровня, реестры и администраторы
- Техническое: где в ECDSA эллиптическая кривая
- Детерминированный вариант ECDSA
Комментарии читателей блога: 5
1. 24th April 2013, 00:22 // Читатель Дмитрий Белявский написал:
Полезное, но geek-only. DANE имеет шанс быть более массовым.
2. 24th April 2013, 06:40 // Читатель Саша Сергеев написал:
Дмитрий, не мешайте DANE и SSHFP в одну кучу. Они для разных целей и совсем не конкурируют за “самое полезное”.
Кстати SSHFP появилось довольно давно, но только теперь, в эру повсеместного разгона DNSSEC начало быть действительно полезным. Хотя у DANE натыкается на заморочки с клиентскими сетями и устройствами у него всё равно будет подобная точка, когда наконец о нём заговорят больше.
3. 24th April 2013, 10:14 // Александр Венедюхин:
Для разных-то – для разных, но концепции весьма схожие. Собственно, SSHFP повлияла на форму DANE.
4. 24th April 2013, 16:52 // Читатель sarin написал:
что-то не улавливаю, в чём отличие от DANE?
5. 25th April 2013, 09:36 // Александр Венедюхин:
> что-то не улавливаю, в чём отличие от DANE?
В DANE есть несколько вариантов публикации отпечатков ключей, часть этих вариантов учитывает параллельную иерархию подписей SSL-сертификатов. В SSH такой иерархии нет, а SSHFP её вводит, на базе DNS.