su 명령
용도
세션과 관련된 사용자 ID를 변경합니다.
구문
su [ - ] [ 이름 [ 인수 ... ] ] ]
설명
다음 기능은 su 명령에 의해 수행됩니다.
| 항목 | 설명 |
|---|---|
| 계정 검사 | 사용자 계정이 존재하고, su 명령에 대해 사용 가능하고, 현재 사용자가 su 명령으로 이 계정을 교환할 수 있는 그룹에 속해 있으며, 현재 제어 터미널을 통해 사용할 수 있는지 유효화합니다. |
| 사용자 인증 | 사용자를 위한 시스템 정의 1차 인증 메소드를 사용하여 사용자의 ID를 유효화합니다. 사용자는 비밀번호가 만기되었으면 새로운 비밀번호를 제공해야 합니다. |
| 신임 정보 설정 | 사용자 데이터베이스에 있는 값을 사용하여 초기 사용자 신임 정보를 구축합니다. 이러한 신임 정보는 시스템에 대한 사용자 액세스 권한 및 계정관리를 정의합니다. |
| 세션 개시 | - 플래그가 지정된 경우 su 명령은 사용자 데이터베이스와 /etc/environment 파일의 값으로부터 사용자 환경을 초기화합니다. - 플래그를 사용하지 않으면 su 명령은 디렉토리를 변경하지 않습니다. |
이러한 기능은 표시된 순서로 수행됩니다. 하나의 기능이 성공하지 못하면 나머지 기능이 수행되지 않습니다. 이러한 기능의 시맨틱을 위해 ckuseracct, ckuserID, authenticate, setpcred, setpenv 서브루틴을 참조하십시오.
이전 세션을 복원하려면 다음과 같이 입력합니다exit또는 Ctrl-D 키를 누르십시오. 이 조치는 su 명령으로 호출한 쉘을 종료한 뒤 이전 쉘, 사용자 ID, 환경으로 리턴합니다.
su 명령을 신뢰있는 쉘인 /usr/bin/tsh 쉘에서 실행하면 해당 쉘로부터 종료됩니다. su 명령은 제어 터미널의 보안 특성을 변경하지 않습니다.
su 명령이 실행될 때마다, /var/adm/sulog 파일에 항목이 작성됩니다. /var/adm/sulog 파일은 날짜, 시간, 시스템 이름, 로그인 이름을 기록합니다. /var/adm/sulog 파일은 로그인 시도의 성공 여부도 기록합니다. +(더하기 부호)는 정상적인 로그인을 의미하고 -(빼기 부호)는 로그인 실패를 나타냅니다.
플래그
| 항목 | 설명 |
|---|---|
| - | login 명령을 사용하여 사용자가 시스템에 로그인한 것처럼 프로세스 환경이 설정되도록
지정합니다. 현재 환경에서는 아무것도 새로운 쉘로 전달되지 않습니다. 참고: 이 동작은 Name 매개변수 앞에 플래그 옵션이 허용되는 대체 UNIX 셸 환경과의 호환성을 위한 것입니다.
|
보안
su 명령은 su라는 서비스 이름을 가지는 PAM 사용 가능
애플리케이션입니다. 인증을 위해 PAM을 사용하기 위한 시스템 전체 구성은
/etc/security/login.cfg의 usw 스탠자에서
auth_type 속성의 값을 루트 사용자로서 PAM_AUTH로 수정하여 설정됩니다.
su 서비스 구성에 따라 달라집니다. Su 명령에는 ' auth, ' account' , ' password' , ' session ' 모듈 유형에 대한 /etc/pam.conf 항목이 필요합니다. Su 명령이 표준 AIX®볼 수 있는 것과 같이 PAM 인증을 통해 유사한 동작을 보이려면 ' pam_allowroot 모듈을 충분히 사용하고 ' auth ' 및 ' account ' su 서비스 스택 모두에서 pam_aix 앞에 호출해야 합니다. 아래 나열된 내용은
/etc/pam.conf에서 su 서비스에 대해 권장되는 구성입니다.#
# AIX su configuration
#
su auth sufficient /usr/lib/security/pam_allowroot
su auth required /usr/lib/security/pam_aix
su account sufficient /usr/lib/security/pam_allowroot
su account required /usr/lib/security/pam_aix
su session required /usr/lib/security/pam_aix
su password required /usr/lib/security/pam_aix- 현재 사용자의 최대 공극은 새 사용자의 최대 공극을 지배해야 합니다.
- 새 사용자의 최소 틈새는 현재 사용자의 최소 틈새를 지배해야 합니다.
- 현재 사용자의 효과적인 정리는 새 사용자의 최대 공극에 의해 지배되어야 하고, 새 사용자의 최소 공극을 지배해야 합니다.
예
- 루트 사용자 권한을 얻으려면 다음 명령 중 하나를 입력합니다:
이 명령은 루트 사용자의 유효 사용자 ID 및 특권이 있는 서브쉘을 실행합니다. 루트 비밀번호를 요청합니다. 파일의 끝(EOF), Ctrl+D 키 시퀀스를 눌러 서브쉘을 종료하고 원래의 쉘 세션 및 특권으로 리턴하십시오.su
이 명령은 유효 사용자 ID 및 권한이 있는 하위 셸을 실행합니다root사용자. 입력란에root비밀번호를 입력합니다. 파일의 끝(EOF), Ctrl+D 키 시퀀스를 눌러 서브쉘을 종료하고 원래의 쉘 세션 및 특권으로 리턴하십시오.su -- - 의 권한을 얻으려면jim사용자로 로그인한 후 다음 명령을 입력합니다:
이 명령은 유효 사용자 ID와 다음과 같은 권한을 가진 하위 셸을 실행합니다jim.su jim - '로 로그인한 것처럼 환경을 설정하려면jim사용자를 입력합니다:su - jim그러면 다음을 사용하여 서브셸이 시작됩니다jim의 로그인 환경.
- 루트 사용자 권한으로 백업 명령을 실행한 다음 원래 셸로 돌아가려면 다음과 같이 입력합니다:
이 명령은 루트의 디폴트 쉘 내에 루트 사용자 권한을 가진 백업 명령을 실행합니다. 실행할 명령을 조회할 때 정확한 루트 비밀번호를 제공해야 합니다.su root "-c /usr/sbin/backup -9 -u" - 현재 세션의 사용자 신임 정보를 루트 사용자로 변경하기 위해
다음 명령 중 하나를 입력하십시오.
su -su - rootsu - --앞의 명령은 서브셸을 시작하기 위해root사용자의 로그인 환경.
파일
| 항목 | 설명 |
|---|---|
| /usr/bin/su | su 명령을 포함하고 있습니다. |
| /etc/environment | 사용자 환경 값을 포함하고 있습니다. |
| /etc/group | 기본 그룹 속성을 포함하고 있습니다. |
| /etc/passwd | 기본 사용자 속성이 있습니다. |
| /etc/security/user | 사용자의 확장 속성을 포함합니다. |
| /etc/security/environ | 사용자의 환경 속성이 들어 있습니다. |
| /etc/security/limits | 사용자의 프로세스 자원 한계가 들어 있습니다. |
| /etc/security/passwd | 비밀번호 정보가 들어 있습니다. |
| /var/adm/sulog | 로그인 시도에 대한 정보를 포함하고 있습니다. |
| /etc/security/enc/LabelEncodings | 신뢰할 수 있는 AIX 시스템에 대한 레이블 정의가 포함되어 있습니다. |