여러 리눅스 시스템에 대한 액세스 관리


15

답변을 검색했지만 여기에서 아무것도 찾지 못했습니다 ...

간단히 말해 : 비영리 단체는 인프라를 현대화해야합니다. 첫 번째는 많은 Linux 호스트에서 사용자 계정을 관리 할 수있는 대안을 찾는 것입니다.

12 개의 서버 (실제 및 가상 서버)와 약 50 개의 워크 스테이션이 있습니다. 이 시스템에 대한 500 명의 잠재적 사용자가 있습니다. 수년 동안 시스템을 구축하고 유지 관리 한 개인은 은퇴했습니다. 그는 모든 것을 관리하기 위해 자신의 스크립트를 작성했습니다. 여전히 작동합니다. 거기에 불만이 없습니다. 그러나 많은 것들이 매우 수동적이고 오류가 발생하기 쉽습니다. 코드가 지저분하고 업데이트 후 수정이 필요한 경우가 종종 있습니다. 최악의 부분은 문서가 거의 없거나 전혀 없다는 것입니다. 더 이상 관련이 있거나 없을 수있는 몇 개의 ReadMe 및 임의의 메모가 있습니다. 따라서 유지 관리가 어려운 작업이되었습니다.

현재 계정은 각 시스템에서 / etc / passwd를 통해 관리됩니다. 계정이 "기본"서버에 추가 될 때 시스템을 수정하기 위해 cron 스크립트를 통해 업데이트가 배포됩니다. 일부 사용자는 sysadmin 계정과 같은 모든 시스템에 액세스해야하고 다른 사용자는 공유 서버에 액세스해야하는 반면 다른 사용자는 워크 스테이션에 액세스하거나 이들 중 일부만 액세스해야 할 수도 있습니다.

다음 요구 사항을 충족하는 계정을 관리하는 데 도움이되는 도구가 있습니까?

  • 바람직하게는 오픈 소스 (예 : 예산이 매우 제한되어 있으므로 무료)
  • 주류 (즉 유지)
  • 가급적 LDAP 통합이 있거나 사용자 인증을 위해 LDAP 또는 AD 서비스와 인터페이스하도록 만들 수 있음
  • 사용자 관리 (추가, 만료, 제거, 잠금 등)
  • 각 사용자가 액세스 할 수있는 시스템 (또는 시스템 그룹)을 관리 할 수 ​​있습니다. 모든 시스템에서 모든 사용자가 허용되는 것은 아닙니다.
  • 로그인 한 시스템에 따라 다른 homedirs 및 마운트를 사용할 수있는 사용자 계정 지원 . 예를 들어
    • "기본"서버에 로그인 한 sysadmin 은 maindir로 main : // home / sysadmin / 을 가지며 모든 공유 마운트를 갖습니다.
    • 직원 워크 스테이션에 로그인 한 sysadmin은 nas : // user / s / sysadmin 을 homedir (위와 다름) 및 잠재적으로 제한된 마운트 집합으로 사용합니다.
    • 로그인 한 클라이언트는 다른 위치에 홈 디렉토리가 있고 공유 마운트가 없습니다.
  • 쉬운 관리 인터페이스가 있다면 좋을 것입니다.
  • 그리고이 툴이 크로스 플랫폼 (Linux / MacOS / * nix)이라면 기적 일 것입니다!

웹을 검색했기 때문에 적절한 것을 찾지 못했습니다. 우리는 어떤 제안에도 개방되어 있습니다. 감사합니다.

편집 :이 질문은 중복으로 잘못 표시되었습니다. 답변 링크는 모든 시스템에서 동일한 홈 디렉토리를 갖는 것에 대해서만 이야기하지만, 현재 로그인 한 시스템 사용자 (MULTIPLE 홈 디렉토리)에 따라 다른 홈 디렉토리가 필요합니다. 또한 전체 시스템이 아닌 일부 시스템에만 액세스 권한을 부여해야합니다. 개조, 문제의 포인트를 중복으로 표시하는 대신 문제의 전체 범위를 이해하십시오.


중복 점수로 '포인트'가 부여되지 않습니다. 귀하의 질문에 5 명이 중복 된 것으로 간주 할만큼 명확하지 않았습니다.
user9517

몰랐다. 알았어 고마워. 그러나 서둘러 중복으로 표시되었습니다. 필요한 사항을 명확하게 설명하는 포인트 형식 요구 사항을 읽으십시오. 중복되지 않습니다. 제공된 "솔루션"링크는 모든 시스템에 대한 무차별 액세스를 허용합니다 (액세스 권한을 가진 사람과 시스템 또는 시스템 그룹에 대한 제한이 필요함). 실제 homedir 위치는 액세스중인 시스템에 따라 다릅니다. 동일한 사용자는 로그인 한 시스템에 따라 다른 homedirs 및 마운트를 가질 수 있습니다.
Swartz 2018 년

위에서 언급 한 sysadmin 예제에서 main과 nas는 다른 서버입니까? 따라서 동일한 사용자가 로그인 한 homedir에 따라 다른 homedir에 액세스 할 수 있습니까?
Marco Bizzarri 2016 년

@MarcoBizzarri : 잘 모르겠습니다. 사용자가 로그인 한 시스템이 homedir을 결정합니다. SysA 및 SysB는 모두 / etc / passwd에 / home / bob이있을 수 있지만 SysC에서 Bob의 homdir은 / someplace / else / bob 일 수 있습니다. 두 위치에는 다른 데이터가 포함됩니다. 시스템 사용자가 로그인하여 사용 가능한 다른 마운트를 결정합니다. 직원 시스템 만 공유 직원 마운트에 액세스 할 수 있습니다. "공개적으로"가능한 시스템은 다른 마운트로 제한됩니다. 따라서 직원 마운트에 액세스하려면 직원이 직원 지정 PC에 있어야합니다. 약간의 구획화 ...
Swartz

자, 여기에는 두 가지 다른 점이 있습니다. homedir은 고정되어 있으며 같은 서버 또는 다른 서버에있을 수 있지만 항상 그렇습니다. SysA는 무엇이든 상관없이 serverX에 항상 홈 디렉토리가 있습니다. 그 후, 직원들 사이에 공유 디렉토리가 있습니다. staff_dir이라고하겠습니다. 이는 직원들이 staff_workstation에 로그인 할 때 사용할 수 있지만 normal_workstation에 로그인 할 때는 사용할 수 없습니다. 그 맞습니까?
Marco Bizzarri

답변:


17

FreeIPA 는 아마도 당신이 찾고있는 것입니다. Active Directory가 Windows 인 것은 Linux입니다. (이종 환경이있는 경우 AD와 대화 할 수도 있지만 Windows 시스템을 직접 관리하는 데 사용해서는 안됩니다. AD를 사용하십시오.)

Red Hat의 설명서 (Identity Management라고 함)는 매우 철저하고 따르기 쉬우 며 Red Hat에서 파생 된 시스템을 사용하지 않더라도 대부분 적용 할 수 있어야합니다.


+1 freeipa가 대단합니다.
Sirex

FreeIPA를 볼 것입니다. 팁 고마워. 질문 : FreeIPA는 다른 시스템에서 다른 홈 디렉토리를 지원합니까? 예 : 사용자 Bob은 SystemA 및 SystemB에 로그인 할 때 / shared / home / xyz에 (NFS로 내 보낸) homedir이 있지만 SystemC에있는 경우 / whatever / special은 Bob의 homedir입니다.
Swartz 2016 년

자동 마운트를 보았습니까 ? 이렇게하면 약 90 %의 성능을 얻을 수 있으며 나머지 10 %는 기존 환경을 약간 변경합니다.
Michael Hampton

예, 기존 시스템은 자동 마운팅을 사용합니다. 이들은 각 유형의 시스템에 대해 수동으로 구성됩니다. 슬프게도 우리의 기존 환경은 유지하기에 너무 번거 롭습니다. 특히 업데이트 후 또는 새 시스템 이미지를 만들 때. 핵심은 작동하지만 항상 작동하도록 조정해야하는 것이 있습니다.
Swartz

그럼 이제 물건 청소를 시작할 수있는 좋은 기회가 있습니다.
Michael Hampton

6

나는 당신의 상황의 세부 사항을 평가하기 위해 좋은 지역 컨설턴트를 제안 할 것입니다 ...

정말.

이 포럼에있는 사람들이 충분히 인식하지 못하거나 고려할만한 다른 비즈니스 요구 사항이나 뉘앙스가있을 수 있습니다. 전용 리소스를 사용하는 것이 가장 좋습니다 ... 그렇지 않으면 간단한 Q & A 범위를 벗어난 제품에 대한 제품 권장 사항 만 제시합니다.


그럼에도 불구하고, 나의 접근 방식은 Microsoft Active Directory를 활용하고 SSSD 또는 LDAP 를 사용하여 Linux 시스템을 연결하는 것 입니다. FreeIPA 는 모든 Linux 집에서 괜찮지 만 "비영리"라고하더라도 반드시 Windows를 배제하는 것은 아닙니다. 경로 어딘가에 Active Directory가 나타납니다 . 자동 마운트 된 홈 디렉토리를 사용하여이 기능을 보강 할 수 있지만 언제 또는 어디에서 명확하지 않은지 마운트하는 사용자의 세부 사항입니다.

지금 구축 한 99 % Linux 개인 클라우드 환경에서도 관리 및 중앙 집중식 인증을 위해 Active Directory를 사용합니다. 그룹 및 액세스 권한이 쉽고 비밀번호 정책 및 계정 에이징이 간단합니다. 유지 관리, 마인드 및 호환성에 대한 모든 문제는 Microsoft 솔루션에서 다룹니다. 복제는 기본 제공되며 문서화가 잘되어 있으며 기술에 내재 된 약간의 미래 보장 기능이 있습니다.

그래도 원래 질문에서 누락 된 세부 사항이 있습니다 ...

  • 환경에 어떤 특정 Linux 배포판이 있습니까? 버전이 일치합니까?
  • Macintosh 시스템에 대해 동일한 수준의 관리 세분성이 필요합니까 (대부분의 조직은 Apple 컴퓨터를 완전히 관리하지는 않습니다)?
  • 원격 사용자가 있습니까?
  • "* nix"를 언급했습니다-어떤 유형의 * nix가 있습니까?

2
freeipa가 리눅스 머신 (복제, 패스워드 정책, 그룹 등)을위한 모든 일을 할 수 있고 설정이 매우 쉬운 (실제로!)할만한 가치가 전혀 없습니다. 또한 Active Directory에 대한 양방향 복제를 수행합니다 (새로운 사용자는 추가 필드가 있으므로 AD가 단방향인지 확인하십시오). 그러나 Windows 컴퓨터가 있으면 Windows의 중심에 관계없이 AD를 원할 것입니다. 생명. 또한 freeipa의 문서에는 여전히 imho가 부족합니다.
Sirex

슬프게도 컨설턴트에게는 예산이 없습니다. Windows 컴퓨터는 없습니다 (직원이 직접 가져 오는 경우에만). 모든 시스템은 CentOS입니다 (일부 5.x, 다른 시스템은 6.x). 이 조직은 구형 (2007 년 이전) iMac을 가져 오는 중이므로 OSX 및 Linux에서 작동하는 도구를 사용하는 것이 좋습니다. 한 가지 좋은 점 : Windows에 대해 걱정할 필요가 없습니다.
Swartz 2016 년

라이센스 비용에 문제가있는 경우 Samba4는 무료 대안이며 기본 Windows Hosetd AD와 동일한 관리 도구 / 인프라를 사용합니다. 거의 아무것도는 전체 인프라에 대한 구성을 관리 등 PAM, winbind를, LDAP ..를 통해 AD에 대해 인증 소금을 확인하도록 구성 할 수 있습니다 ( saltstack.com/community.html blog.smartbear.com/devops/... )
nedm

3

현재 시스템은 작동하지만 관리하기가 어렵습니다. 모든 것이 수동으로 완료되면 해당 서버를 관리하는 데 다른 문제가 있다고 생각합니다. 작동하는 것을 대체하지 않고 (사용자 관리) 다른 접근 방식을 취하고 서버의 관리 문제를 해결합니다.

cfengine http://cfengine.com/community (무료 버전) 와 같은 것을 사용하여 사용자 관리뿐만 아니라 시스템 관리를 "현대화"하는 것이 좋습니다 . 현재 시스템은 cfengine을 사용하여 구성을 서버 (예 : / etc / passwd)에 배포하는 것과 매우 유사하게 작동하므로 시도해 볼 수 있습니다. 따라서 교체하는 대신 해당 스크립트를 cfengine으로 마이그레이션하십시오. 다행스럽게도 여전히 같은 / etc / passwd를 사용하고 있기 때문에 영향이 매우 적을 것입니다.

cfengine에 익숙해지면 완전히 새로운 사용자 관리 시스템을 보유하고 서버에서 구성을 관리 할 수있는 도구와 같은 더 많은 문제를 해결하기 위해 더 많은 레시피를 구축 할 수 있습니다.

시작을 돕기 위해 http://explosive.net/opensource/cfpasswd/doc/cfengine.html 링크 를 통해 / etc / passwd 및 관련 파일을 배포하는 방법을 보여줍니다.

지금 사용자 관리 시스템을 교체하려는 경우에도 해당 서버를 관리하기위한 관리 도구가 필요합니다. 관리 도구를 나중보다 빨리 가지고 관리 도구에서 사용자 관리를 재구성하는 것이 좋습니다.


0

몇 가지 간단한 추가 사항-

내 배포에서 Puppet을 사용하고 있습니다. cfengine과 유사한 아이디어-http: //puppetlabs.com

이것은 또한 사용자 관리 및 일반 구성 / 서버 관리를 수행 할 수 있습니다.

Samba와 같이 다양한 기능을 사용하려면 일부 구성으로 디렉토리를 관리하고 LDAP 백엔드를 사용하여 구성 할 수 있습니다. Samba 4는 성숙해졌으며 실제로 관리 / 인증을 위해 Windows 및 Linux와 통합 된 환경을 제공 할 수 있습니다.

Samba는 AD와 함께 작동하거나 AD를 대체합니다.

Centrify라는 제품도 있습니다. 나는 그것에 너무 멀지 않았지만 프리웨어 / 오픈 소스 버전도 있다고 생각합니다. 내가 기억한다면 그것은 혼합 환경에 대한 가능성을 가지고 있었으며, Windows와 Linux 관리, 그리고 아마도 Mac을 제공했을 것입니다.

컨설턴트의 제안을 두 번째로하겠습니다. 이러한 배포는 매우 빠르게 설정하기가 매우 복잡하지만 문서화되고 구성되면 유지 관리가 쉽습니다.

행운을 빌어 요


1
초기에 구성 관리를 위해 Puppet 및 Chef를 살펴 보았습니다. Puppet은 10 개의 무료 노드를 허용하며 Chef는 5 개의 무료 노드를 갖습니다. 그 후 Puppet Labs는 연간 $ 99 / 노드를 청구합니다. 우리에게는 수천이 될 것입니다. 계약 위반. Chef의 가격은 기억 나지 않지만 같은 생각입니다. 예산에 없습니다. :(
Swartz
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.