탐색 링크 건너뛰기 | |
인쇄 보기 종료 | |
![]() |
Oracle Solaris 11.1 관리: 보안 서비스 Oracle Solaris 11.1 Information Library (한국어) |
Kerberos 서비스가 구성된 경우 일반 Solaris 암호와 Kerberos 암호, 두 개의 암호가 생깁니다. 두 암호를 동일하게 설정하거나 다르게 설정할 수 있습니다.
암호에는 입력 가능한 거의 모든 문자가 포함될 수 있습니다. 그러나 기본적으로 Control 키와 Return 키는 사용할 수 없습니다. 좋은 암호는 본인은 쉽게 기억할 수 있지만 다른 사람은 쉽게 추측할 수 없는 암호입니다. 잘못된 암호의 예는 다음과 같습니다.
사전에 있는 단어
일반 이름 또는 잘 알려진 이름
유명인 또는 유명 캐릭터의 이름
모든 형태로 된 본인의 이름 또는 사용자 이름(예: 이름 거꾸로 쓰기, 두 번 반복해서 쓰기 등)
배우자의 이름, 자녀 이름 또는 애완동물의 이름
본인의 생일 또는 친척의 생일
주민등록번호, 운전 면허증 번호, 여권 번호 또는 기타 유사 신분증 번호
이 설명서 또는 다른 설명서에 표시된 샘플 암호
좋은 암호는 8자 이상입니다. 또한 암호에는 대소문자, 숫자, 문장 부호 등의 문자를 혼합해서 사용해야 합니다. 다음은 이 설명서에 표시되지 않았다면 좋았을 암호 예제입니다.
머리글자어(예: “I2LMHinSF” - “I too left my heart in San Francisco”로 유추할 수 있음)
발음하기 좋은 무의미한 단어(예: “WumpaBun” 또는 “WangDangdoodle!”)
정교하게 철자를 잘못 쓴 문구(예: “6o'cluck” 또는 “RrriotGrrrlsRrrule!”)
![]() | 주의 - 이 예제는 사용하지 마십시오. 이 설명서에 표시된 암호는 침입자가 가장 먼저 시도하는 암호입니다. |
PAM이 제대로 구성된 경우 Kerberos 암호를 두 가지 방법으로 변경할 수 있습니다.
일반 UNIX passwd 명령 사용. Kerberos 서비스가 구성된 경우 passwd 명령이 자동으로 새 Kerberos 암호를 묻는 메시지를 표시합니다.
kpasswd 대신 passwd를 사용할 경우의 이점은 UNIX 암호와 Kerberos 암호를 동시에 설정할 수 있다는 점입니다. 그러나 일반적으로 passwd를 사용하여 두 암호를 변경할 필요가 없습니다. 대개 UNIX 암호만 변경하고 Kerberos 암호를 그대로 두든지 아니면 그 반대일 수 있습니다.
주 - passwd의 동작은 PAM 모듈이 구성된 방식에 따라 다릅니다. 일부 구성에서 두 암호를 모두 변경해야 할 수 있습니다. 일부 사이트에서는 UNIX 암호를 변경해야 하고, 다른 사이트에서는 Kerberos 암호를 변경해야 합니다.
kpasswd 명령 사용. kpasswd는 passwd와 매우 비슷합니다. kpasswd는 Kerberos 암호만 변경한다는 점이 다릅니다. UNIX 암호를 변경하려는 경우에는 passwd를 사용해야 합니다.
또 다른 차이점이라면 kpasswd는 유효한 UNIX 사용자가 아닌 Kerberos 주체에 대한 암호를 변경할 수 있다는 점입니다. 예를 들어 david/admin은 Kerberos 주체이기는 하지만 실제 UNIX 사용자는 아니므로, passwd 대신 kpasswd를 사용해야 합니다.
암호를 변경하면 변경 사항이 시스템을 통해(특히 광역 네트워크를 통해) 전파되는 데 약간의 시간이 걸립니다. 시스템이 설정된 방식에 따라 몇 분에서 몇 시간까지 지연될 수 있습니다. 암호를 변경한 즉시 새 Kerberos 티켓을 획득해야 하는 경우 새 암호를 먼저 사용해 보십시오. 새 암호가 작동하지 않을 경우 이전 암호를 사용하여 다시 시도하십시오.
시스템 관리자는 Kerberos V5 프로토콜을 통해 허용 가능한 암호에 대한 기준을 사용자별로 설정할 수 있습니다. 이러한 기준은 사용자별로 설정된 정책(또는 기본 정책)에 정의되어 있습니다. 정책에 대한 자세한 내용은 Kerberos 정책 관리를 참조하십시오.
예를 들어 사용자 jennifer의 정책(jenpol이라고 함)이 암호가 8자 이상이고 최소 두 가지 유형의 문자를 혼합해서 사용하도록 요구한다고 가정합시다. 따라서 kpasswd는 “sloth”를 암호로 사용하려는 시도를 거부합니다.
% kpasswd kpasswd: Changing password for jennifer@ENG.EXAMPLE.COM. Old password: <Jennifer types her existing password> kpasswd: jennifer@ENG.EXAMPLE.COM's password is controlled by the policy jenpol which requires a minimum of 8 characters from at least 2 classes (the five classes are lowercase, uppercase, numbers, punctuation, and all other characters). New password: <Jennifer types 'sloth'> New password (again): <Jennifer re-types 'sloth'> kpasswd: New password is too short. Please choose a password which is at least 4 characters long.
여기서 jennifer는 “slothrop49”를 암호로 사용합니다. “slothrop49”는 8자 이상이고 서로 다른 두 유형의 문자(숫자 및 소문자)를 포함하므로 기준을 충족합니다.
% kpasswd kpasswd: Changing password for jennifer@ENG.EXAMPLE.COM. Old password: <Jennifer types her existing password> kpasswd: jennifer@ENG.EXAMPLE.COM's password is controlled by the policy jenpol which requires a minimum of 8 characters from at least 2 classes (the five classes are lowercase, uppercase, numbers, punctuation, and all other characters). New password: <Jennifer types 'slothrop49'> New password (again): <Jennifer re-types 'slothrop49'> Kerberos password changed.
예 24-3 암호 변경
다음 예에서 사용자 david는 passwd로 UNIX 암호와 Kerberos 암호를 모두 변경합니다.
% passwd passwd: Changing password for david Enter login password: <Type the current UNIX password> New password: <Type the new UNIX password> Re-enter password: <Confirm the new UNIX password> Old KRB5 password: <Type the current Kerberos password> New KRB5 password: <Type the new Kerberos password> Re-enter new KRB5 password: <Confirm the new Kerberos password>
passwd는 UNIX 암호와 Kerberos 암호를 모두 묻습니다. 이 동작은 기본 구성으로 설정됩니다. 이 경우 사용자 david는 다음에 표시된 것과 같이, kpasswd를 사용하여 자신의 Kerberos 암호를 다른 값으로 변경해야 합니다.
이 예는 사용자 david가 kpasswd로 자신의 Kerberos 암호만 변경함을 보여줍니다.
% kpasswd kpasswd: Changing password for david@ENG.EXAMPLE.COM. Old password: <Type the current Kerberos password> New password: <Type the new Kerberos password> New password (again): <Confirm the new Kerberos password> Kerberos password changed.
이 예에서 사용자 david는 Kerberos 주체 david/admin(유효한 UNIX 사용자가 아님)에 대한 암호를 변경합니다. 이때 kpasswd를 사용해야 합니다.
% kpasswd david/admin kpasswd: Changing password for david/admin. Old password: <Type the current Kerberos password> New password: <Type the new Kerberos password> New password (again): <Type the new Kerberos password> Kerberos password changed.
자신의 계정에 로그인할 수 있는 액세스 권한을 다른 사용자에게 부여해야 하는 경우, 홈 디렉토리에 .k5login 파일을 배치하면 암호 노출 없이 Kerberos를 통해 이러한 권한을 부여할 수 있습니다. .k5login 파일은 액세스 권한을 부여하려는 각 사용자에게 해당하는 하나 이상의 Kerberos 주체 목록입니다. 각 주체는 별도의 행에 있어야 합니다.
사용자 david가 다음과 비슷한 .k5login 파일을 자신의 홈 디렉토리에 보존한다고 가정합시다.
jennifer@ENG.EXAMPLE.COM joe@EXAMPLE.ORG
이 파일은 사용자 jennifer와 joe가 이미 각 영역에 Kerberos 티켓을 보유하고 있다면 david의 ID를 사용하도록 허용합니다. 예를 들어 jennifer는 david의 암호를 제공하지 않고도 그의 시스템(boston)에 원격으로 로그인할 수 있습니다.
그림 24-1 .k5login 파일을 사용하여 계정에 대한 액세스 권한 부여
david의 홈 디렉토리가 NFS 마운트 디렉토리인 경우, Kerberos V5 프로토콜을 사용하면 다른(세번째) 시스템에서 jennifer가 전달 가능 티켓을 보유하고 있어야 자신의 홈 디렉토리에 액세스할 수 있습니다. 전달 가능 티켓 사용 예제는 Kerberos 티켓 만들기를 참조하십시오.
네트워크를 통해 다른 시스템에 로그인하는 경우 자신의 Kerberos 주체를 해당 시스템의 .k5login 파일에 포함시킬 수 있습니다.
.k5login 파일을 사용하는 것이 암호를 알려 주는 것보다 훨씬 안전한 이유는 다음과 같습니다.
.k5login 파일에서 주체를 제거하여 언제든지 액세스 권한을 제거할 수 있습니다.
자신의 홈 디렉토리에 있는 .k5login 파일에 이름이 지정된 사용자 주체가 해당 시스템(.k5login 파일이 NFS를 통해 공유되는 경우, 시스템 집합)에서 자신의 계정에 대한 전체 액세스 권한을 갖습니다. 그러나 Kerberos화된 서비스는 자신이 아닌 해당 사용자의 ID를 기준으로 액세스를 인증합니다. 따라서 jennifer는 joe의 시스템에 로그인하여 작업을 수행할 수 있습니다. 그러나 jennifer가 ftp 또는 rlogin과 같은 Kerberos화된 프로그램을 사용하는 경우, 자신의 이름으로 작업을 수행합니다.
Kerberos는 티켓을 획득한 사용자에 대한 로그를 보존하므로, 시스템 관리자는 필요한 경우 특정 시간에 다른 사용자의 사용자 ID를 사용할 수 있는 사용자를 확인할 수 있습니다.
.k5login 파일을 사용하는 한 가지 일반적인 방법은 이 파일을 root의 홈 디렉토리에 삽입하는 것입니다. 그러면 해당 시스템에 대한 root 액세스 권한이 나열된 Kerberos 주체에 부여됩니다. 이 구성을 사용하면 시스템 관리자가 로컬에서 root가 되거나, root 암호를 알려 줄 필요도 없고 다른 사용자가 네트워크를 통해 root 암호를 입력할 필요도 없이 원격에서 root로 로그인할 수 있습니다.
예 24-4 .k5login 파일을 사용하여 계정에 대한 액세스 권한 부여
jennifer가 boston.example.com 시스템에 root로 로그인한다고 가정합시다. 그녀의 주체 이름은 boston.example.com에 있는 root 홈 디렉토리의 .k5login 파일에 있으므로, 그녀가 다시 자신의 암호를 입력할 필요가 없습니다.
% rlogin boston.example.com -l root -x This rlogin session is using DES encryption for all data transmissions. Last login: Thu Jun 20 16:20:50 from daffodil SunOS Release 5.7 (GENERIC) #2: Tue Nov 14 18:09:31 EST 1998 boston[root]%