LINUX.ORG.RU
ФорумTalks

Нужна многопользовательская софтина для хранения паролей


3

1

Доброе утро,

есть группа админов, и есть куча железа и софта без RADIUS/LDAP/AD/etc. У каждого в голове, на бумажке и в компьютере есть часть паролей от этого хозяйства. Само собой, эти репозитории паролей постоянно стремятся к рассинхронизации. Админы хотят удобно хранить эти пароли. Расшаривать текстовый файл с паролями неинтересно, потому что не все админы должны знать все пароли, нужен попарольный ACL. Естественно, админ сервера, где они хранятся, тоже не должен знать их все.

Софт, реализующий такое, есть?

Если нет, то вот концепт для запиливания:

  • делаем сервер с публичными ключами всех админов, он же хранилище паролей
  • придумываем пароль
  • шифруем его публичными ключами всех людей, которым положено его знать
  • выкладываем полученные файлы на сервер

Сервером может работать WebDAV, клиентская софтина запускается локально, веб-интерфейс нам не пойдёт.

★★★★★

Последнее исправление: muon (всего исправлений: 1)

На сервере поднимается какой-нить gitosis или его аналог, досутп через ssh по ключам(для этого, если что, не нужно давать шелла каждому пользователю). Создаём репу, в которую добавляются все пользователи. Там будут общие пароли в файле лежать. Можно разбить на несколько файлов - типа здесь рутеры, здесь веб-морды и т.д. Это для общих. Если паранойя, можно его зашифровать, чтобы плайнтекстом не лежал.

Для тех паролей, доступ к которым должен быть ограничен даже от админа сервера, создаётся отдельный файл и шифруется ключами тех, кому нужно(либо через хук гита, либо ручками каждым из пользователей). Для более простых случаев(когда админ сервера среди тех, кто может видеть некоторые пароли, разрешённые не для всей группы, можно сделать просто отдельный реп).

В качестве бесплатного дополнения получаем полное логирование всех изменений и даже откат версий, если надо.

При желании парой скриптов и хуков можно это дело автоматизировать. Т.е. вместо

$ cd passwords/
$ git pull
$ gpg ...
$ grep superserver passwords.list
сделать что-то типа
$ ./fetch_pass superserver
не проблема.

Это так, что первое в голову пришло.

shell-script ★★★★★
()
Ответ на: комментарий от shell-script

Как вариант, можно и GIT/SSH. Вопрос больше как раз в автоматизации и повышении удобства использования, например, действие «создаётся отдельный файл и шифруется ключами тех, кому нужно». И тут, наверное, лучше подойдёт не скрипт, а форма с галочками.

muon ★★★★★
() автор топика
Ответ на: комментарий от muon

Я лично наоборот формам с галочками предпочитаю команды с аргументами. Это обычно быстрее и проще. Так что в этом направлении мало что подскажу. Хотя, если поковырять какой-нить dialog, может и можно что простое нарисовать на скорую руку.

А вообще в связке с gpg такой скрипт за пару часов максимум пишется. При условии, что все пользователи уже обменялись своими открытыми gpg-ключами, у нас и так на компе есть список их имён. С помощью getopts распарсить параметры скрипта, взять оттуда тех, для кого файл должен быть доступен, подсунуть их в gpg -r, удалить плайнтекстовый файл и сделать git push - не проблема, имхо. Это для создания файла с паролями. Для изменения, почти то же самое, только сперва стянуть с гита нужный файл(опять же из аргументов строки имя), расшифровка, добавление туда пароля, обратное шифрование и отправка. Всё это на стороне клиента(т.е. скрипт можно положить в этот же самый общий реп и у каждого всегда он будет).

shell-script ★★★★★
()
Ответ на: комментарий от shell-script

А откуда такая мода, вдруг, пошла, на программы-хранители паролей. На швабре каждую неделю появляется «Как я делал программу-хранитель паролей», здесь частенько проскакивает. Вы же грамотные специалисты, как вы готовы идти на такую дырень в безопасности?
Я предлагаю другое решение: ставится сейф, в него тетрадка с общими паролями. Ключи от сейфа под расписку каждому админу, ежедневный утренний смотр-ревизию паролей дежурным.

siphonops ★★★
()

Нафига вообще нужна куча сложных паролей, если их все можно унести в одном месте?

winddos ★★★
()
Ответ на: комментарий от winddos

Обычно на такие вопросы отвечают «Так надо» или «У нас так принято».
У нас в конторе требования к надежности пароля 8 символов + цифра + буквы в разных регистрах. Тем не менее, у большинства моих коллег пароли по одному принципу долбежки в клавиатуру. И подбираются соответственно в течении 20 минут ручной долбежки. Возникает вопрос: нафига оно надо?
Сейф хотя бы можно к полу приварить и человека приставить, а вот как системные администраторы могут доверят агрегаторам паролей, которые они не написали и не скомпилировали лично, я понять не могу. Это же откровенное наплевательство уровня саботажа.
Это я об некоторых жителях хабра, разумеется.

siphonops ★★★
()
Ответ на: комментарий от siphonops

Это не ко мне вопрос. Я лишь предложил реализацию задачи, описанной у ТС. Сам я подобным не пользуюсь и не собираюсь.

shell-script ★★★★★
()
Ответ на: комментарий от Siado

Почему же? Я в следующем своём комменте описал, как разделять права для разных пользователей с помощью gpg.

shell-script ★★★★★
()

Программы для хранения паролей не нужны. Пароли там или потеряются все сразу при поломке диска или сбоя ПО, или их сопрут.

x-signal ★★
()

у вас неправильная постановка вопроса: «Админы хотят удобно хранить эти пароли» на самом деле звучит «Админы должны админить», то есть нужна софтинка аутенфицирующая админов и предоставляющая доступ к шелезякам. Средства администрирования - либо web интерфейс, либо ssh (в редких изощрённых случаях telnet). Из такого вот кратенького ТЗ уже пораждается решение.

ps. (супер)админские пароли к софту/железкам - зло. Если есть тех.возможность - заводится юзер с очень широкими правами, кроме прав смены пароля и управления доступом.

MKuznetsov ★★★★★
()

Да, тут уже сказали - заводить админов как юзеров с правами. А суперправа хранить на тетрадке в сейфе, плюс завести 1-2х главных админов (если вас там реально много) которые в своих личных зашифрованых файлах(терадках) хранят пароли что бы заводить админов рангом поменьше.

kernel ★★☆
()
Ответ на: комментарий от siphonops

Я предлагаю другое решение: ставится сейф, в него тетрадка с общими паролями. Ключи от сейфа под расписку каждому админу, ежедневный утренний смотр-ревизию паролей дежурным.

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

Вы же грамотные специалисты, как вы готовы идти на такую дырень в безопасности?

Не имеет смысла прятать бутерброд в швейцарском банке. Если вся ваша система безопасности построена на паролях, то это повод подумать о смене профессии.

Alsvartr ★★★★★
()

Подписался, сам давно хотеть. А если делать самому, то идея была именно такая, с публик-ключами. ☺

beastie ★★★★★
()

По теме: я не знаю, почему вам не пойдет веб-интерфейс, но приемлемое решение - какая-нибудь простенькая вика (типа того же редмайна). Плюс: не надо городить какие-то скрипты на пердячем пару.

Alsvartr ★★★★★
()
Ответ на: комментарий от x-signal

Программы для хранения паролей не нужны.

Расскажи это over9000 веб-страничкам и другим appstore, доступ к которым должны иметь >1 человека.

beastie ★★★★★
()
Ответ на: комментарий от Alsvartr

Если вся ваша система безопасности построена на паролях, то это повод подумать о смене профессии.

Я не работаю в области системной безопасности, поэтому плохо представляю, на чем может быть она основана, кроме паролей. Просто есть такая поговорка «Не храни яйца в одной корзине», поэтому человеку неподкованному может показаться странным, что люди могут хранить ценную информацию и пароли доступа к ней фактически в одном месте. Ведь злоумышленник, получивший доступ к паролю одного из сотрудников сможет шуровать по всей, доступной оному, секции паролей. На этом фоне пароли записанные в тетрадке и хранящиеся в офисе потребуют комбинированного подхода. Разве нет?

siphonops ★★★
()
Ответ на: комментарий от siphonops

Просто есть такая поговорка «Не храни яйца в одной корзине»

Методы защиты информации выбираются исходя из ценности защищаемой информации. Пароли - не самоценность.

Ведь злоумышленник, получивший доступ к паролю одного из сотрудников сможет шуровать по всей, доступной оному, секции паролей

Для начала злоумышленнику нужно получить доступ ко внутренней сети (т.е. к самой защищаемой паролем информации), а для этого нужно знать как минимум ее структуру.

Alsvartr ★★★★★
()
Ответ на: комментарий от beastie

Расскажи это over9000 веб-страничкам и другим appstore, доступ к которым должны иметь >1 человека.

Вот оттуда пароли-то и уплывают.

x-signal ★★
()
Ответ на: комментарий от x-signal

А что делать? По этому и хочется нормальный сейф с ACL.

beastie ★★★★★
()

С первым пунктом концепта я погорячился. Конечно же, админы сами должны обменяться ключами как положено.

muon ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.