개발 창고/Server
[Linux] How to check account information
로이제로
2023. 11. 8. 22:00
반응형
How to check account information
Window에서 관리자 계정인 Administrator와 사용자 계정으로 나눠지듯이 Linux System에서는 관리자 계정인 root와 사용자 계정으로 나눠지게 됩니다. 그러면 이 정보들은 어디에 저장되어 있을까요? 여러 설정들이 있지만, 그중에서 계정별 UID와 GID, 홈디렉터리, 로그인 쉘은 /etc/passwd에서 확인이 가능합니다.
/etc/passwd
해당 파일을 열어보면 각자의 시스템에 따라 여러 계정 정보가 있겠지만 기본적으로 root을 포함하고 있을 겁니다. (※ /etc/passwd의 소유주/그룹은 관리자 계정인 root이지만, 일반적으로 다른 계정에서 읽기 권한이 있으므로 별도로 sudo 명령을 사용하지 않아도 됩니다. 단, 읽기 권한이 없는 경우 sudo가 필요합니다.)
$> cat /etc/passwd
각 항목들에 대해 정리하자면
필드 | 설명 |
계정명 | 사용자 계정 아이디 |
패스워드 | 사용자의 계정 비밀번호 ※ 과거에는 여기에서 관리되었지만 최근에는 /etc/shadow에 암호화 되어 저장되어집니다. |
UID | User Id. 관리자 계정인 root는 UID가 0입니다. |
GID | Group Id. 관리자 그룹인 root는 GID가 0입니다. |
comment | 사용자 관련 기타 정보로 일반적으로 사용자의 이름이 표기됩니다. |
홈 디렉토리 | 사용자별 홈 디렉토리로 ssh나 telnet등을 통하여 접근하는 경우 이 디렉토리로 기본적으로 접속하게 됩니다. 위 파일에서 확인해보면 관리자 계정인 root는 '/root'로 접속 되고, 일반 사용자의 경우 '/home/계정명'의 디렉토리로 접속하게 됩니다. |
로그인 쉘 | 사용자가 이용하게 될 shell입니다. 만약 로그인이 불필요하다면 해당 항목을 /user/sbin/nologin이나 /bin/false, /sbin/nologin 등으로 설정해주면 로그인을 제한할 수 있습니다. 이는 시스템을 별도 계정으로 관리해야 하지만 telnet이나 ssh를 통한 접속을 제한할 때 사용합니다. |
반응형