[unix] 여러 컴퓨터에서 사용자 계정을 일관되게 유지하려면 어떻게해야합니까?

이제 Debian Wheezy를 실행하는 Raspberry Pi가 있습니다. 여기에 몇 대의 머신 (4 개의 물리적, 2 개의 가상)이 있으며 해당 머신의 사용자 계정을 통합하고 싶습니다.

내가 실행하는 머신에는 다음 데비안 파생물이 설치되어 있습니다.

  • 데비안 휘지 (armhf)
  • 데비안 스 테이블 (amd64)
  • 데비안 불안정 (amd64)
  • 우분투 14.04 (amd64)

모든 컴퓨터에서 사용자 계정을 동일하게 설정하려면 어떻게해야합니까? 이름, 긴 이름, 암호 및 UID가 일치하기를 원합니다.

앞으로 구성의 다른 부분을 통합하고 싶습니다.

  • HT 콘도르
  • 마운트 포인트 (삼바)
  • /etc/apt/sources.list
  • 무인 업데이트

다른 우분투와 데비안 변형을 사용하기 때문에 sources.list약간의 차이가 있지만 각 배포판에서 동일합니다.

이것에 대한 좋은 접근 방법은 무엇입니까?



답변

기본적으로 2 가지 옵션이 있습니다.

  1. 각 컴퓨터의 로컬 인증 시스템을 사용하고 모든 자격 증명 변경 사항을 푸시하십시오.
  2. 중앙 인증 서버를 사용하십시오.

1. 동기화 된 로컬 인증

이를 쉽게 수행 할 수있는 여러 제품이 있습니다. Puppet , Chef , AnsibleSalt 는 가장 일반적인 것 중 일부입니다. 이러한 모든 도구는 ” 구성 관리 “라고합니다.

기본적으로 인증 자격 증명을 코드로 정의하는 리포지토리가 있습니다. “코드”는 사용자 이름과 해시 된 비밀번호를 지정하는 지시문처럼 간단합니다. 그런 다음이 코드를 모든 컴퓨터에 동기화하고 선택한 CM 도구를 실행하십시오. 그런 다음 CM 도구는 각 사용자의 로컬 인증 자격 증명을 업데이트합니다 (필요한 경우 사용자 생성).

다른 유형의 구성도 수행하고 싶다고 말했기 때문에 이것이 더 적합한 솔루션 일 수 있습니다.

2. 중앙 인증

가장 일반적인 형태의 중앙 집중식 인증은 LDAP입니다. LDAP 서버를 실행하는 것이 어려워 보일 수 있지만 FreeIPA 와 같은 우수한 패키지 솔루션 이있어 쉽게 관리 할 수 ​​있습니다.

이제 여러분의 첫 생각 중 하나는 “중앙 서버가 다운 된 경우에도 인증이 작동하기를 원합니다”입니다. 이것은 SSSD 를 사용하여 쉽게 수행 할 수 있습니다 . 사용자가 서버에 처음 로그인하면 SSSD는 LDAP (또는 채용 된 경우 kerberos)를 참조하고 자격 증명이 유효한 경우이를 로컬 컴퓨터에 캐시합니다. LDAP 서버를 사용할 수 없으면 캐시 사용으로 돌아갑니다. 따라서 사용자가 한 번 로그인하면 LDAP를 사용할 수없는 경우 계속 로그인 할 수 있습니다.

3. 둘의 조합

두 솔루션을 조합하여 사용할 수도 있습니다. 이는 대규모 엔터프라이즈 환경에서 매우 일반적이지만 소규모로도 사용할 수 있습니다. 기본적으로 중앙 인증 서버가 있으며 CM 도구를 사용하여 클라이언트가이를 사용하도록 구성합니다.


답변