Мне было интересно, есть ли лучший способ управлять учетными записями пользователей на нескольких серверах.
На данный момент у меня есть основная учетная запись пользователя (например, «пользователь») на моем домашнем компьютере / компьютере разработчика, и для каждого сервера я вручную создаю ту же учетную запись «пользователя». Затем я использую rsync для копирования моего каталога .ssh и любых других каталогов на каждый новый сервер.
Хотя это кажется нормальным для управления двумя серверами, которыми я сейчас управляю, я не могу себе представить, чтобы сделать то же самое для 10+ серверов, и мне было интересно, как лучше всего это сделать.
Спасибо!
Есть два популярных подхода
Централизованные системы аутентификации хороши, когда все системы находятся под управлением одной организации. Как правило, это необходимо, когда у вас много пользователей, и когда нужно будет использовать аутентификацию для многих вещей, связанных с простым входом в систему.
Способ управления конфигурацией хорош, если вам обычно просто нужно настроить небольшое количество учетных записей удаленных администраторов и учетных записей служб.
Для небольших / более простых развертываний проект под названием Репликация учетной записи в Интернете (IAR) может помочь. Он имеет простую архитектуру сервер-клиент и синхронизирует учетные данные с помощью SSH.
Я бы также добавил к ответу Zoredache, что NIS не подходит для чего-либо, что используется более чем несколькими людьми или включая любой открытый доступ. В NIS есть несколько причуд, и в NIS очень легко внести значительный риск для безопасности.
Я видел реализации, в которых хэши паролей включались в сопоставления пользователей passwd.
Также довольно легко внедрить вредоносный сервер в вещательную сеть NIS. Особенно опасно с хешами паролей, включенными в карту passwd. Установите систему Ubuntu, «apt-get install nis», и вы в ней и можете получить список пользователей в сети.
Решение этой проблемы - вот что Шекелей был изобретен для.