ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • LINUX 계정 생성/변경/삭제 하는 방법
    System of Infra/Linux System 2022. 3. 2. 16:05
    반응형

    LINUX로고이미지

     

    LINUX 계정 생성/변경/삭제하는 방법

    [root@localhost /]# cat /etc/passwd | grep -i root
    root:x:0:0:root:/root:/bin/bash
    
    [root@localhost /]# cat /etc/shadow | grep -i root
    root:$6$MJwYqEVQpPMPnQyF$fPaow7WPscywsCbrw71v855sUGuJeYHi9s919aGUCxyU/rlytznJlPFkvUHbWiRa.iJuMUOy5hTQDh0E3lNKo/::0:99999:7:::
    ▶ 기본적으로 슈퍼 관리자(root)를 포함한 모든 유저 계정에서는 아래 설명과 같이 지정된 값이 설정되어 있습니다. 또한 계정의 패스워드는 /etc/shadow 파일에 암호화되어 저장되어 있게 됩니다.

    [순서]
    사용자 이름:암호:사용자 ID:사용자 그룹:전체 이름:홈 디렉터리:기본 셸
    [root@localhost /]# useradd user1
    ▶ user1이라는 유저 계정을 생성해 보도록 하겠습니다.
    [root@localhost /]# cat /etc/passwd | grep -i user1
    user1:x:1001:1001::/home/user1:/bin/bash
    ▶ 계정 생성시 별도의 그룹 및 홈 디렉터리를 지정해주지 않는 경우 /home 아래로 디렉터리가 설정되고 자기 자신의 그룹을 생성하고 해당 그룹에 속하게 됩니다.
    [root@localhost /]# cat /etc/group | grep -i user1
    user1:x:1001:
    ▶ 계정 생성시 그룹을 따로 지정해주지 않았기 때문에 user1의 계정은 자기 자신의 user1 그룹을 생성하여 1001번에 소속 되게 됩니다.
    [root@localhost /]# userdel -r user1
    ▶ userdel user1을 수행할 경우 최초에 생성된 홈 디렉터리가 남아 있고 /etc/passwd에서 계정 목록만 사리지기 때문에 -r 옵션을 통해서 해당 홈 디렉터리도 삭제를 해줍니다.
    ▶ 검색시검색 시 해당 홈 디렉터리가 삭제된 것을 확인할 수 있습니다. 또한 /etc/passwd 검색 시에도 해당 계정은 삭제되고 존재하지 않는 것을 확인할 수 있습니다.
    [root@localhost /]# groupadd guestgroup
    [root@localhost /]# cat /etc/group | grep -i guestgroup
    guestgroup:x:1001:
    ▶ 일반 유저 계정을 생성하기 전에 그룹을 사전에 생성해줍니다.
    [root@localhost /]# useradd -g guestgroup user1
    [root@localhost /]# useradd -g guestgroup user2
    ▶ 일반 유저계정(user1,user2)을 /etc/guestgroup에 소속되도록 생성합니다.
    [root@localhost /]# cat /etc/group | grep -i guestgroup
    guestgroup:x:1001:
    [root@localhost /]# cat /etc/passwd | grep -i user1
    user1:x:1001:1001::/home/user1:/bin/bash
    [root@localhost /]# cat /etc/passwd | grep -i user2
    user2:x:1002:1001::/home/user2:/bin/bash
    ▶ guestgroup의 ID 1001번으로 user1, user2 일반 유저 계정이 소속되어 있는 것을 확인할 수 있습니다.
    [root@localhost /]# tail -5 /etc/shadow | grep -i user
    user1:!!:19053:0:99999:7:::
    user2:!!:19053:0:99999:7:::
    ▶ 현재 user1,user2의 계정은 패스워드가 설정되어 있지 않기 때문에!!로 표시가 된 것을 확인할 수 있습니다.
    [root@localhost /]# passwd user1
    user1 사용자의 비밀 번호 변경 중
    새  암호: ****
    새  암호 재입력: ****
    passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
    [root@localhost /]# passwd user2
    user2 사용자의 비밀 번호 변경 중
    새  암호: **** 
    새  암호 재입력: ****
    passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
    ▶ 해당 유저게정 user1, user2의 패스워드를 설정해주도록 합니다. 슈퍼 관리자에서 설정을 하게 되면 보안정책의 8글자 이상 초과 에러 메시지 호출 시 무시하고 생성을 할 수 있습니다.
    [root@localhost /]# tail -5 /etc/shadow | grep -i user
    user1:$6$ssBbUFSgQXEfex9I$4pW5Xf5oTd5n6l4xZw32PyyC2WD5oyUUzcUDmrHWl0LyS1KpeuHQwLD4FbcSrrJ7fEKthf7cnnx8.2kStcYxb0:19053:0:99999:7:::
    user2:$6$GGCDpdP3TUmTKH9n$LBzVdnIi8ydVjYdwTddGWABSmFQMKiKPE6ZoJLVKHqiU.lapkRnuo9g3cyZW99O2ORXKkXtAPrMDsoVhAVzcN/:19053:0:99999:7:::
    ▶ /etc/shadow 디렉터리 아래에 user1, user2 계정의 패스워드가 암호화되어 생성된 것을 확인할 수 있습니다. /etc/shadow 파일을 알고 있다고 해서 암호를 유추할 수 있는 것은 아니기 때문에 단순히 패스워드가 암호화되어 표현되었다고 생각하시면 됩니다.
    [root@localhost /]# cat /etc/passwd | grep -i user
    user1:x:1001:1001::/home/user1:/bin/bash
    user2:x:1002:1001::/home/user2:/bin/bash
    ▶ 해당 계정의 !! 표시 부분이 x로 변경되어 패스워드 또한 설정이 된 것을 확인할 수 있습니다.
    [root@localhost /]# cd /home/user1
    [root@localhost user1]# ls -al
    drwx------  3 user1 guestgroup  78  3월  2 15:24 .
    drwxr-xr-x. 5 root  root        46  3월  2 15:24 ..
    -rw-r--r--  1 user1 guestgroup  18  5월 11  2019 .bash_logout
    -rw-r--r--  1 user1 guestgroup 141  5월 11  2019 .bash_profile
    -rw-r--r--  1 user1 guestgroup 312  5월 11  2019 .bashrc
    drwxr-xr-x  4 user1 guestgroup  39  2월 28 20:48 .mozilla
    ▶ 일반유저 계정이 생성된 후 해당 계정의 디렉터리에 접근을 하게 되면. bash_profile 등 몇 가지 파일이 등록되는데 해당 파일들을 통해서 프로파일 설정을 할 수 있고 해당 파일은 /etc/skel 파일에서 복사가 된 것을 확인할 수 있습니다.
    [root@localhost user1]# cd /etc/skel
    [root@localhost skel]# ls -al
    drwxr-xr-x.   3 root root   78  2월 28 20:49 .
    drwxr-xr-x. 135 root root 8192  3월  2 15:28 ..
    -rw-r--r--.   1 root root   18  5월 11  2019 .bash_logout
    -rw-r--r--.   1 root root  141  5월 11  2019 .bash_profile
    -rw-r--r--.   1 root root  312  5월 11  2019 .bashrc
    drwxr-xr-x.   4 root root   39  2월 28 20:48 .mozilla
    ▶ /etc/skel 기본 파일들이 유저 계정에 생성되는 파일과 동일하다는 것을 확인할 수 있습니다.
    [root@localhost /]# cat /etc/group | grep -i centos
    centos:x:1000:
    [root@localhost /]# usermod -g centos user1
    [root@localhost skel]# cat /etc/passwd | grep -i user
    user1:x:1001:1000::/home/user1:/bin/bash
    user2:x:1002:1001::/home/user2:/bin/bash
    ▶ user1의 계정이 user2의 계정과 처음과 달리 1000번의 그룹 ID에 속하도록 변경된 것을 확인할 수 있습니다.

    [사용자 생성시 옵션]
    -u : ID 지정
    -g : 그룹 지정
    -d : 홈 디렉터리 지정
    -s : 셸 지정
    [root@localhost /]# mkdir user1home
    [root@localhost /]# usermod -d /user1home user1
    [root@localhost /]# cat /etc/passwd | grep -i user1
    user1:x:1001:1000::/user1home:/bin/bash
    ▶ user1의 계정의 홈 디렉터리가 /home/user1에서 /user1 home으로 변경된 것을 확인할 수 있습니다.
    [root@localhost /]# cat /etc/passwd | grep -i user1
    user1:x:1001:1000::/user1home:/bin/bash
    
    [root@localhost /]# usermod -s /bin/ksh user1
    [root@localhost /]# cat /etc/passwd | grep -i user1
    user1:x:1001:1000::/user1home:/bin/ksh
    ▶ user1의 계정의 shell형태가 bash로 사용되고 있는 ksh 형태로 변경되고 확인이 가능합니다.

    2022.03.08 - [System of Infra/LINUX] - LINUX 소유권/허가권 부여 및 심볼릭 링크 설정하는 방법

     

    LINUX 소유권/허가권 부여 및 심볼릭링크 설정하는 방법

    LINUX 소유권/허가권 부여 및 심볼릭 링크 설정하는 방법 [root@localhost ~]# touch test [root@localhost ~]# ls -ltr | grep -i test -rw-r--r-- 1 root root 0 3월 5 16:19 test -> 소유권과 허가권 실..

    pinetreeday.tistory.com

    2021.12.27 - [System of Infra/LINUX] - LINUX SELinux 비활성화 하는 방법

     

    LINUX SELinux 비활성화 하는 방법

    LINUX SELinux 비활성화하는 방법 [root@localhost /]# sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mo..

    pinetreeday.tistory.com

     

    PS. 포스팅의 내용은 제 기준으로 작성한 것이기 때문에 참고해서 보시면 감사하겠습니다.

    포스팅 과정의 오류 및 오타 그리고 궁금한 점에 대해서는 댓글 남겨주세요.

    반응형

    댓글

Designed by Tistory.