LINUX.ORG.RU
решено ФорумAdmin

Что использовать для совместного хранения паролей?

 


0

2

Есть несколько человек и куча серверов/сервисов. Какой менеджер паролей использовать, чтобы открывший базу паролей юзер не лочил её на изменение? Каждый раз рассылать «ну кто там базу на запись открыл, отдайте» неудобно

★★★

keepass2 http://keepass.info/news/n130720_2.23.html

Под linux работает с нюансами, но в целом уже наверно с год пользуемся - в целом всё устраивает. - Он позволяет комитить сразу нескольким людям. Т.е. не лочит базу, и мёржит корректно в целом.

DALDON ★★★★★
()

обычный текстовый файл/файлы засунь в mercurial. Для внешней безопасности можно юзать ssh (что-бы пароли не бегали по сети в открытом виде. Mercurial умеет ssh искароппки)

PS: ВАЖНО: это _одно_ _из_ решений, оно часто не совсем подходит, а иногда совсем не подходит.

Другой вариант:

1. сделать каталог PASSWD/ , который общедоступен.

2. каждый пароль хранить в простом текстовом файле servername.txt.

3. с каждым изменением отправлять servername.txt в PASSWD/, предварительно зашифровав для всех реципиентов(программа GnuPG умеет шифровать сразу кучей ключей, конечно его ещё и подписать надо тому, кто изменил пароль). Сам servername.txt можно удалить после этого.

4(опционально). каталог PASSWD/ сделать append-only.

4.1 Время от времени root этого сервера с паролями может стирать старые пароли, если последний пароль валидный (если последний пароль не валидный, следует поднимать тревогу). Этот пункт можно сделать автоматическим, т.к. для проверки подписи ничего не нужно. Только права рута нужны, ибо снять append only в ext4 может только рут. Во время этого необходимо закрыть на запись этот каталог снаружи.

emulek
()

Использовать движок БД вроде MySQL. А дальше строй что хочешь.

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

В плане шифрования - очень разумно. Регулярная проверка - это, ИМХО, уже к системе мониторинга. Но юзабили решения -ужасное, разве что самому написать гуёвину, но времени на это нет :( А если я не сделаю удобное решение, никто на него переползать не будет, так и будут все сидеть с локальными keepass-ами и текстовыми файлами

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

Наверное, его пробовать и буду. Общий файл в расшаренной папке - не совсем красиво, но по юзабилити оно делает всех.

Понравилось вот это http://upm.sourceforge.net/ - синхронизация с файлом на сервере по HTTP(s) - но оно даже вложенных групп не умеет, какой уж там Auto-Type :(

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

То что по ссылке - это ужас, ужас... — Мало того что не умеет групп, так ещё и файлы нельзя прикладывать, тогда как в keepass можно.

Общий файл в расшаренной папке - это не очень страшно, ведь keepass2 не только база, но и ключевой файл. Ключевой файл можешь хранить локально у тех кому нужен доступ. Таким образом пропажа файла базы будет не страшна совсем. Однако всё же напоминаю, что keepass2, тоже под wine/mono работает не без приколов. Под mono что-то совсем не всегда радостно всё с буфером обмена - не копируется в некоторые приложения... А в некоторые копируется без проблем... В общем чудеса есть. И эти чудеса официально подтверждены на форуме. Однако в общем то практически все чудеса обходятся с помощью wine, но в своё время его для этого нужно было допиливать. Как сейчас не знаю. Пользую mono версию, хоть и плююсь иногда.

DALDON ★★★★★
()
Последнее исправление: DALDON (всего исправлений: 1)
Ответ на: комментарий от selivan

Почему cleartext-ом? Сделайте https и http-auth. Получится шифрование при передаче данных и «мастер»-пароль на просмотр паролей.

Остаётся лишь вопрос о приватности данных на самом сервере, но это решается путём шифрование раздела под БД. Лишь изредка(при перезагрузке сервера) придётся вводить пароль на монтирование шифрованного раздела.

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

Ну, всё равно, большую часть времени данные хранятся в открытом виде. Получил доступ на сервак с примонтированным разделом - бери и пользуйся. А с тем же keepass'ом - слил общий файлик с сервака - и сиди подбирай пароль

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

Люди, да вы совсем озверели - пароли cleartext-ом?

Совсем не обязательно.

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

Получил доступ на сервак с примонтированным разделом - бери и пользуйся

Получить доступ на сервер с примонтированным шифрованным разделом это значит украсть пароль или ключ на ssh. Если так рассуждать, то точно так же можно украсть пароль на базу keepass. Под сервер с wiki с паролями конечно лучше выделить виртуалочку, а не помещать wiki на сервер, где у вас крутится joomla на апаче с php от того же пользователя, что и wiki.

srg666
()
Ответ на: комментарий от selivan

Но юзабили решения -ужасное, разве что самому написать

ну ясное дело — писать надо. И да, почему именно GUI? ИМХО там консоли за глаза хватит, пару тривиальных скриптов.

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

Так удобнее:
* вызвать глобальным хоткеем гуй, вторым хоткеем из него скопировать пароль, Alt-Tab и вставить пароль в консоль/окно логина по RDP/java-апплет IP-KVM/...
* с Auto-Type ещё проще - Alt-Tab на окно Keepass, hotkey - keepass спрятался и сам всё ввёл(пользователь-Tab-пароль-Enter)

чем в консоли мышкой возить -пароль копировать

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

* вызвать глобальным хоткеем гуй, вторым хоткеем из него скопировать пароль, Alt-Tab и вставить пароль в консоль/окно логина по RDP/java-апплет IP-KVM/...

сложно такой гуй напитонить? Там всего-то, что показать список аккаунтов, и реализовать тыканье в один из аккаунтов. Хотя ИМХО логичнее скрипт сделать, вроде load_password, который без параметра выводит список, а с параметром(имя аккаунта) выводит пароль(пароль можно прямо из консоли мышкой сунуть куда нужно).

Также можно и сделать скрипт save_password, который шифрует и подписывает новый пароль. И отправляет его на сервер. А на сервере его принимает другой скрипт, который проверяет валидность подписи. И если файл подписан тем, у кого есть право доступа, то он заменяет файл с паролем на этом сервере. Второй скрипт может(и должен) работать в автоматическом режиме.

И да, версионность умеет даже примитивная mv.

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

Список аккаунтов... с группами... с возможностью фильтрации(набрал часть названия - Enter - вывело всё похожее)... с иконками, потому что за визуальный якорь глаз цепляется быстрее, чем буквы читает... с кастомизируемым Auto-type, потому что username{Tab}password{Enter} годится не всегда... с авто-локом по истечению тайм-аута неактивности... с авто-локом при залочивании экрана... с генерилкой паролей... всё это кроссплатформенное...

картинка_с_троллейбусом_из_хлеба.jpg

С mv таже фигня. С её помощью можно _эмулировать_ версионность. Ну это как сказать, что ввод текстовых данных умеет даже примитивный cat, нафиг все эти vim/emacs?

selivan ★★★
() автор топика

Итого: общая шара + KeePass2 с паролем и ключом

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

Список аккаунтов... с группами... с возможностью фильтрации(набрал часть названия - Enter - вывело всё похожее)..

есть bash completion.

с иконками, потому что за визуальный якорь глаз цепляется быстрее, чем буквы читает...

в теории вы правы... На практике всё не совсем так. Иконки надо _делать_. Юзер ленив и туп, он даже название папки придумать не в состоянии. Потому этот функционал будет в большинстве случаев ИМХО не востребован.

У иконок есть и ещё два минуса:

1. их невозможно индексировать/искать/сортировать. Потому это деструктурированная помойка by design

2. их невозможно копипастить. Их надо просматривать ГЛАЗАМИ, И ВСЕ 146%. username более годен в случае, если таких username'ов МНОГО. Если надо _работать_ а не фапать, то лучше обойтись чистым текстом.

И да, это не только и не столько ИМХО, сколько практический опыт (а вот лично мне иконки тоже нравятся).

с авто-локом по истечению тайм-аута неактивности... с авто-локом при залочивании экрана... с генерилкой паролей... всё это кроссплатформенное...

дык если экран залочится, то и терминал тоже. Есть конечно в KDE/Gnome|xscreenserver ненужная фича, когда скринсервер палит рабочий стол, но разве нормальные люди ЭТО включают?!

Ну про генерилку паролей просто смешно(да она и есть, кстати. Везде. Тысячи их)

Про кроссплатформенность, да. Тут я согласен, в венде будут сложности. Маздай он и есть маздай.

С mv таже фигня. С её помощью можно _эмулировать_ версионность. Ну это как сказать, что ввод текстовых данных умеет даже примитивный cat, нафиг все эти vim/emacs?

Не совсем так. Сама LFS умеет многозадачность и совместную работу нескольких пользователей(что подразумевает версионность, хотя-бы в простом варианте). Т.ч. в mv не эмуляция, а вполне годная для некоторых(не для всех, конечно) целей. В данном случае:

1. файлы по сути задачи очень малые. Потому не затратно хранить версии целиком.

2. менеджер паролей не имеет права лезть внутрь этих паролей, а следовательно в принципе не может поддерживать полную версионность. Это противоречит безопасности, ведь сервер могут сломать. Если файлы с паролями зашифрованы, то взлом сервера ничего не даст кроме кучи мусора. Но если сервер с паролями хранит версии построчно, то ввзлом сервера приведёт к потери ВСЕХ паролей.

картинка_с_троллейбусом_из_хлеба.jpg

что-то мне подсказывает, что твою распределённую keeppass2 будет поломать намного проще, чем мою схему. Достаточно лишь мастер-пароль получить. В моём случае тебе нужен ключ какого-то участника, и даже имея этот ключ, ты получаешь доступ не ко всем паролям, а лишь к тем, которые доступны этому участнику. AFAIK keepass2 так не умеет, даже в платной версии.

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

bash completion

Разбиение по древовидным группам это не решает. А под виндой наш велосипед теперь тянет с собой bash+cygwin

Иконки надо _делать_

Когда работаю из винды, для ssh использую SuperPuTTY. Для прокси один значок, для фаервола/VPN другой. Действительно удобнее, чем просто надписи

в принципе не может поддерживать полную версионность

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

keepass2 так не умеет, даже в платной версии

У keepass нет платных версий, это нормальный OpenSource :)

Вообще да, такая система безопаснее в сложных структурах, где у одного человека есть доступ строго до определённых серверов. У нас все админы могут лазить всюду, так что особой разницы нет. Реализовывать это всё надо ИМХО не как консольную приблубу, а скорее как плагин-бекэнд к тоже же keepass или чему-нибудь подобному

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

У нас все админы могут лазить всюду

ну и смысл какой тогда? Простой текстовый файл вполне кроссплатформеннен.

emulek
()

А текстовый файл, расшареный в google docs не подойдет?

anonymous
()
Ответ на: комментарий от selivan

Ну, хотелось бы, чтобы всюду лазили могли лазить только админы, и только наши :)

для того это всё и делается. Пойми сам, и объясни админам: это делается НЕ потому, что среди админов крыса, а по той причине, что враг может сломать компьютер одного из админов, и затем получить доступ КО ВСЕМУ. В том числе и к тому, что абсолютно не нужно этому админу. Я уверен, что если эти твои «админы» == например программисты, которые совместно пишут код, то им всем нужен доступ на запись к одному-двум репозиториям, а к остальным RO или вообще никакого.

Я вот даже себе доступ ограничиваю, и потому могу смело запускать любое rm -rf и прочий быдлокод.

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

Это всё-таки админы. IT-отдел совсем небольшой, разделения зон ответственности нет. Есть спецы по всяким хитрым программам, но они работают отдельно, их всё это не касается. С keepass'ом можно сделать просто несколько файлов для разных уровней доступа, он умеет их удобно во вкладках открывать. Единственное неудобство - люди с самым большим уровнем доступа должны будут помнить несколько паролей.

Система с GnuPG разумнее, но надо очень много пилить руками, а что напилил - ещё дольше тестировать.

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

Система с GnuPG разумнее, но надо очень много пилить руками, а что напилил - ещё дольше тестировать.

ИМХО пилить там немного. Но решение естественно за тобой. Я-бы потратил часок другой на запиллку, и ещё неделю-другую на то, что-бы убедить всех остальных в том, что это НУЖНО (ибо в этом-то и главная сложность). Лично себя я уже убедил, а на всех остальных — да, забил, как и ты... До людей очень туго доходят основные правила безопасности, это печальный факт :(

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

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

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

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

Много: гуй, рюшечки, кросс-платформанность...

1. кроссплатформенность не нужна. Ибо венда == РЕШЕТО. Оттуда пароли утекут...

2. гуй не нужен, ибо иксы == РЕШЕТО. Получить доступ к окошку не слишком сложно. Если в эмуляторах терминалах хоть какая-то защита есть, то я не думаю, что ты этим озаботишься в гуе.

3. рюшечки конечно нужны, но практика показывает, что нужны _другие_ рюшечки. Каждый раз свои.

Теперь удивляюсь, если вижу, что где-то всё по уму делают.

лично я уже давно ничему не удивляюсь...

Т.е. в итоге получается, что KeePass не нужно. Но это конечно чисто ИМХО, у всех своя ситуация.

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

венда == РЕШЕТО

Нормальная система, со своими плюсами и минусами. Излишний фанатизм вреден :) В защищённой среде, со включенным фаерволом и адекватным пользователем - вполне безопасна. С неадекватным пользователем, порезанным интернетом и политиками ограничения запуска программ - тоже сойдёт. В качестве шлюза в инфернет я бы её ставить не стал. Под неё куча специфичного софта, которого под никсы тупо нет. Да тот же RDP клиент - что freerdp, что rdesktop порой глючит в самый неподхоящий момент

гуй не нужен, ибо иксы == РЕШЕТО

Ага, всякие IP-KVM на java из w3m запускать буду. Документы(таблицы адресов в Calc/Excel, схемы сети в Dia/Visio, документацию в pdf), гугл животворящий - всё из консоли. Если есть какая-то небезопасная штука, не обязательно её выкидывать, достаточно запереть в безопасную коробочку

Ну если требуется действительно серьёзный уровень безопасности - АЭС строим или центр запуска баллистических ракет - систему просто отрубают от сетей общего пользования

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

венда == РЕШЕТО

Нормальная система, со своими плюсами и минусами.

у венды есть два минуса: во первых под неё полно вредоносного ПО, дело не в том, почему так, а в том, что это факт. А во вторых, разделение процессов там исключительно костылями. Этого УЖЕ достаточно, что-бы не думать о плюсах. Как плюс я вижу только нативный quake2, который там летает (:

Под неё куча специфичного софта, которого под никсы тупо нет. Да тот же RDP клиент

да тот же sshd куда как круче и надёжнее во всех планах. И зачем мне RDP?

Ага, всякие IP-KVM на java из w3m запускать буду.

клиентская java да и вообще всё WWW == РЕШЕТО. Его можно и нужно огораживать. В венде я этого не умею, а в Linux более-менее огородил.

Ну если требуется действительно серьёзный уровень безопасности - АЭС строим или центр запуска баллистических ракет - систему просто отрубают от сетей общего пользования

можно и отрубить, если НАДО. Нормальный вариант, и даже без всяких АЭС.

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

sshd куда как круче и надёжнее во всех планах. И зачем мне RDP?

- Посмотрите пожалуйста, у нас пользователи терминалов не могут с клиент-банковской софтиной работать...
- Мне по...й! Там нет ssh!

вообще всё WWW == РЕШЕТО

Ну, если мне вендор продал IP-KVM со встроенным бекдором... как страшно жить...

если НАДО

Инфернет == доки + форумы == внешняя подсистема памяти + гейт до коллективного разума. При правильном применении значительно повышает эффективность работы межушного нервного узла.

С современным железом quake2 скоро будет и на карточках памяти с wi-fi модулем летать :) Я себе как-то так представляю ОС недалёкого будущего:
- панель задач - 400 Мб
- апплет-индикатор раскладок - 200 Мб
- регулировка громкости - 300 Мб
- а вон та фигнюшка в трее - quake2, 16 Мб

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

- Посмотрите пожалуйста, у нас пользователи терминалов не могут с клиент-банковской софтиной работать... - Мне по...й! Там нет ssh!

проблемы офисных эникееев меня мало волнуют. Это да.

Инфернет == доки + форумы == внешняя подсистема памяти + гейт до коллективного разума. При правильном применении значительно повышает эффективность работы межушного нервного узла.

дык ты сам тут доказываешь необходимость разделения прав. Но, для тебя это «сложно».

emulek
()

Тред не читал

TrueCrypt + куча текстовых файликов. Имя - адрес сайта/ название списка рассылки/etc, содержимое - логин:пароль:дополнительное_поле_1:дополнительное_поле_2:...

Cancellor ★★★★☆
()
Ответ на: Тред не читал от Cancellor

Фишка в _совместном одновременном_ использовании. TrueCrypt одновременно на несколько машин не смонтируешь

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

проблемы офисных эникееев меня мало волнуют

Ну, когда-нибудь я вырасту большой, и смогу в декларативном порядке выбирать: «я буду работать только с этими и этими технологиями, а вон те уберите». А пока чиним всё, что дают

необходимость разделения прав

Всем бойцам, имеющим доступ к этим паролям, также нужен интернет. Можно туда ходить из песочницы, но тем не менее нужен. Кроме того, часть из них - виндузятники, и им тоде нужен простой и удобный способ работы

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

проблемы офисных эникееев меня мало волнуют

Ну, когда-нибудь я вырасту большой, и смогу в декларативном порядке выбирать: «я буду работать только с этими и этими технологиями, а вон те уберите». А пока чиним всё, что дают

ну вот потому я и говорю про необходимость разделения прав.

Всем бойцам, имеющим доступ к этим паролям, также нужен интернет. Можно туда ходить из песочницы, но тем не менее нужен. Кроме того, часть из них - виндузятники, и им тоде нужен простой и удобный способ работы

ну как минимум части твоих юзеров нельзя «лазать где угодно».

И да, «как расшарить truecrypt» я тоже не знаю... Т.е. кроме варианта расшарки каталога с файлами криптованными GnuPG вариантов я не вижу.

emulek
()
Ответ на: комментарий от anonymous

А если криптануть и расшарить на гугл диске?

лучше на yandex. Можно тогда криптовать скриптами, автоматически. А вот как смонтировать гуглодиск я не знаю. Вроде никак.

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

чиним _всё_

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

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

З.Ы. Общий файлик вроде прижился

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

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

З.Ы. Общий файлик вроде прижился

кто мешает сделать и то и другое? Т.е. есть два юзера:

1. Aня. Аня тупая, и умеет смотреть только текстовый файлик. Но и рутовые пароли серверов ей не нужны (тупая жеж!)

2. Беня. Беня умный, у него линух и консоль. И ему пароли рута нужны. Вот для него рядом с простым текстовым файлом лежит ещё один *.txt.gpg.

emulek
()
Ответ на: комментарий от anonymous

Можно смотри: http://www.opennet.ru/tips/2687_googledrive_fuse_disk.shtml

я знаю. Там недоделанные самопальные наколеночные костыли.

Вообще на годную мысль натолкнул, спасибо

дык сам юзаю. Жалко что-ли? Да, яндекс-диск монтирую Леннартоподелкой davfs2. Годно.

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

3. Веня. Веня виндузятник, на него завязан некоторый специфичный софт, а ещё Веня начальник IT и хочет иметь доступ ко всему, вобщем-то правильно
4. Сеня. Сеня умный, но очень ленивый, сподвигнуть его на любые действия, требующия более 2-х телодвижений, невозможно

Внезапно разумная мысль: оба подхода можно совместить. keepass умеет использовать в качестве паролей файлы. Можно создать насколько файлов keepass:

passwords_level1
passwords_level2
passwords_level_god

И положить рядом их ключевые файлы, зашифрованные GnuPG:

passwords_level1.key.gpg
passwords_level2.key.gpg
passwords_level_god.key.gpg

Итого: разделение по уровням доступа; безопасность как в залитом бетоном сейфе со сломанным ключом; няшное гуи с рюшечками и всяческими удобствами.

Система не охватывает только совсем ТруЪ-гуру, даже не запускающих иксы, но такие на нашу зарплату и не пойдут :)

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

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

Как я понимаю, чтобы файл могли расшифровать некоторые n получателей, и только они, надо зафишровать его открытым ключом каждого из них, как-то сложить получившиеся n файлов в один и подписать своим закрытым ключом. Для расшифровки каждый из получателей должен выбрать зашифрованный для него лично файл, проверить мою подпись, расшифровать своим закрытым ключом. Есть какие-нибудь специальные опции у GPG или это всё делается с помощью cat-а, лома и чьей-то матери?

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