Сервер ключей
Привет тебе, All!
Хочу установить для корпоративных нужд собственный сервер PGP-ключей. Устанавливать предполагается на FreeBSD. Но никак, собственно, не могу найти этот самый сервер ключей. Есть ли он в природе? Свободно ли распространяется? Как хоть называется? :) Чую, что изобретаю велосипед, поэтому подскажите, пожалуйста :)
Ссылки
[link1] http://www.nongnu.org/sks/
[link2] http://lists.gnupg.org/pipermail/gnupg-users/2006-February/028058.html
[link3] https://www.pgpru.com/forum/prakticheskajabezopasnostj/serverkljuchejj/files?get=openldap_pgp_keyserver.tar.gz
[link4] http://keep4u.ru/full/2009/05/03/152c8370c990a0c758e16594cda31501/jpg
Вариант раз[link1], вариант два[link2].
Спасибо! Поэкспериментирую :)
Второй вариант для организации лучше. Тем более OpenLDAP уже должен быть на сервере.
Простите за тупость.
Программу с первого варианта установил, но так и не мог заставить её работать. Непонятно, где её рабочая директория, куда ей скармливать конфиг. Запускается, но никаких ключей не принимает. В логах ничего не пишет.
Второй вариант – письмо, которое ссылается на какой-то аттач. Который уже неоткуда скачать.
Может быть, кто-нибудь смилостивится и разжуёт хоть какой-нибудь вариант поподробней? :(
Вот тот файл, пользуйтесь: file:openldap_pgp_keyserver.tar.gz[link3]
И снова здравствуйте!
Спасибо уважаемому SATva за архив. Поднял я LDAP-сервер по второму варианту, вроде бы всё настроил в соответствии с инструкциями, даже прикрутил phpLdapAdmin :) Однако есть проблема. Цель всех стараний – сделать возможным для юзеров заливать ключи на сервер, искать там ключи, скачивать оттуда ключи и т.п. У юзеров широкий спектр программ – от PGP Desktop до старых версий PGP, ну и конечно же GnuPG с разными оболочками.
При попытке залить ключик на сервер посредством PGP 8.1 возникает ошибка:
Сервер при этом пишет в лог следующее:
Попытка загрузки ключа осуществляется с хоста, которому это разрешено:
slapd.conf
Я порыскал в настройках PGP и не нашёл там ровным счётом ничего, что указывало бы на возможность аутентификации при загрузке ключа :( Как быть в таком случае? Как грамотно настроить этот аспект работы сервера ключей?
Приведённые Вами сообщения из логов достаточно информативны: OpenLDAP требует пользователя аутентифицироваться (а PGP8 этого не может), прежде чем изменять данные в базе. Отключите в OpenLDAP аутентификацию пользователей или проверяйте IP. Вот фрагмент из той инструкции, ссылка на которую приводилась выше:
Ага, спасибо. Просто я не думал, что клиентские приложения совсем уж не имеют средств аутентификации, и придётся решать проблему таким варварским способом :( Конечно, после включения в конфиг-файл строчки
всё заработало, но вообще это удручает. Даже в пределах локальной сети, получается, каждый пользователь может произвольно добавлять и удалять ключи. Это никуда не годится.
Либо я чего-то не понимаю.
В GnuPG и девятых версиях PGP аутентификация есть, по-моему. Вообще в официальном PGP Keyserver (ныне не поддерживаемом), который тоже был основан на LDAP, аутентификация операций по управлению ключами осуществлялась с помощью цифровых подписей, т.е., скажем, если человек хотел удалить свой ключ с сервера, то должен был ввести пароль от своего ключа (фактически его программа PGP подписывала строку-запрос, присланную сервером). Таким образом, никто посторонний выполнять такие действия не мог. Подобное же можно сделать и на OpenLDAP, прикрутив скрипт и GnuPG.
Хм. А где бы взять этот скрипт? Не хочется изобретать велосипед...
Кстати, поставил в целях изучения PGP 9.10.0. Что-то не нашёл там никаких признаков аутентификации. На всякий случай кидаю скриншот окошка с редактированием настроек для сервера:
http://keep4u.ru/full/2009/05/.....58e16594cda31501/jpg[link4]
Либо я чего-то не догнал, либо PGP (даже 9-й) не умеет авторизовываться.
Извините, что опять дёргаю. Но неужели никто не использует серверы ключей с авторизацией? Может, я и в самом деле чего-то не понимаю? Если используют, то как авторизовываться клиентам?
А зачем иметь авторизацию? Публичные PGP-сервера её не имеют, злоупотреблений не особо видно. Можно просто открыть порты севера ключей лишь локально, а клиенты пусть на сервер по ssh лезут (решение не корпоративное, но зато прямое).
Зачем иметь авторизацию.
Дело в том, что хотелось бы сохранить в тайне список ключей/e-mail'ов. По ряду причин сервер ключей расположен в интернете, а не в интранете. Соответственно, любой прохожий имеет к нему доступ :( С одной стороны, всякий прохожий может просматривать список ключей и адресов сотрудников, а с другой стороны, всякий прохожий может добавлять/изменять/удалять ключи, что превратит работу в хаос.
Как избежать этой ситуации? Я вот потому за авторизацию и уцепился... Или VPN какой-нибудь соорудить, что ли...
VPN, фильтрацию по IP...