사용자추가및삭제 ( useradd, userdel )

Posted by 주원이^^
2011. 2. 17. 09:18 리눅스/기본정보(OS)
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
 

★ 사용자 추가

 

   사용자를 추가하기 위해서는 강력한 권한을 가진 유저만이 가능하다.

   리눅스에서는 이런 강력한 권한을 가진 유저로서 "root"라는 수퍼 유저가 존재한다.

   그리고 리눅스에 존재하는 유저들에 대한 정보는 "/etc/passwd"라는 파일에 저장된다.

   그럼 일단 /etc/passwd란 파일을 열어보자~!!

 

   파일에 대해 알아보자~!! ( ":"단위로 알아보면~ )

   ▶사용자 이름 : 비밀번호 : 사용자 ID : 사용자가 소속된 그룹 ID : 설명 : home directory : 기본 shell

      ◈ 사용자 ID => 커널이 관리하는 사용자 번호이다.

        ( "0" => 루트 ; "1~14" => 시스템 ; "15~99" => 프로그램 ; "100~" => 일반 사용자 (대개의 일반사용자는 "500"부터이다.)

      ◈ 사용자가 소속된 그룹 ID => Linux의 모든 사용자들은 최소 1개 이상의 그룹에 소속된다.

      ◈ shell => bash : free server / ksh : 상용(콘셀)

 

   그럼 이제 본격적으로 사용자를 만들어 보자.

   일반 유저를 만드는 명령어는 "useradd"라는 명령어다. ("adduser"도 가능하나, useradd가 더 널리 쓰인다. )

   localhost ~ ]# useradd [옵션] (새로운 사용자 이름)

   위와 같은 방법으로 새로운 유저를 만들 수 있다.

   그러나 좀더 변경사항을 고려해서 옵션에 대해 이야기해보자

   useradd -c 설명            => Comment (사용자 설명 추가)

   useradd -d 디렉터리       => 계정에 대한 directory 위치를 지정 (미리 만들어놓은 directory만 가능)

   useradd -e 유효기간        => 지정된 날짜에 사용자의 계정을 삭제 ( chage -E와 동일 기능 )

   useradd -f 비활성 일수    => password가 만기된 후 계정이 영구히 말소될 때 까지의 기간

   useradd -u UID             => 사용자 UID에 대한 값

   useradd -s shell           => 사용자 로그인 shell을 지정

   useradd -n                  => 사용자 계정 추가 기본 모드를 지정하지 않을 때

   useradd -g 그룹명           => 지정한 그룹명에 속함

   useradd -G 그룹...           =>  사용자가 기본 그룹 이외의 다른 그룹에 추가하고자 할 때,

   useradd -M                  => 사용자 디렉토리 없이 계정을 생성

   useradd -D                  => useradd 명령의 기본 설정값 변경.

                             (-D 뒤에 옵션 명령 추가, 옵션없이 "useradd -D"만 입력시 기본설정값을 보여준다.)

                              ( => /etc/login.defs 란 파일에 useradd가 수행될 수 있게 해주는 기본 설정 파일이다.) 

   useradd -D -b 기본홈              => 기본 home directory 위치 변경

   useradd -D -e 기본만료일          => 계정이 말소되는 만료일

   useradd -D -f 기본 비 작동일     =>  패스워드가 만료되고 계정이 말소되기 전까지의 기간

   useradd -D -g 기본 그룹           =>  사용자의 그룹 변경

   useradd -D -s 기본 쉘            => 사용자의 로그인 쉘 변경

   useradd -D -m -k skel           => /etc/skel 대신 다른 경로의 skeleton을 이용하고자 할 때,

                                            ( 사용자의 고유영역권에 저장해줌 <useradd시> )

 

 ※ TIP

  1. passwd를 control해서 사용자를 유보(유예) 시킴

   localhost ~ ]# vi /etc/passwd

                  => test : x : ....... => "x"대신 "*"을 입력하면 어떤 패스워드로도 접속 불가능하다.

                                           "x"대신 공백없이 "x"만 삭제할 경우 어떤 패스워드로도 접속이 가능해진다.

  2. 좀더 간단하게 접속을 못하게 하려면 (shell을 이용)

    localhost ~ ]# vi /etc/passwd

                   => .......:/bin/bash => "/bin/bash"대신 "/bin/false"를 입력하면 shell을 사용하지 않음 ( 로그인 불가)

                                           "/bin/bash"대신 "/bin/nologin"을 입력시 로그인이 안되고 리셋시킨다.

 

  3. E-mail (mail user)

       => 사용자 개개인의 공간은 필요 없으므로 "useradd -M"옵션을 이용하여 계정을 만들자.

 

ex) localhost ~ ]# useradd test => 기본값으로 test유저를 만들어보자~!

     localhost ~ ]# mkdir /home/users

     localhost ~ ]# mkdir /home/users/test1 => test1이 사용할 홈 디렉터리를 미리 만들어 놓음

     localhost ~ ]# useradd -d /home/users/test1 test1

                      => test1의 홈디렉터리를 /home/users/test1을 가진 유저 생성

     localhost ~ ]# cat /etc/passwd => 생성된 계정의 홈디렉터리가 변경되었는지 확인

     localhost ~ ]# useradd -D -b /home/users => 기본 홈 디렉터리를 /home/users로 위치를 변경

     localhost ~ ]# useradd -D => 변경이 잘 되었는지 확인

     localhost ~ ]# useradd test3

     localhost ~ ]# tail -n 5 /etc/passwd => test3사용자의 홈디렉터리가 지정한 위치에 있는 폴더를 사용하는지 확인

           ( => /etc/passwd란 파일도 한 페이지를 넘어가기 때문에 tail을 사용해 아래서부터 지정한 줄 만큼만 보여준다.)

   ♣ 이 이외에도 옵션들이 많으니 옵션을 변경해가며 사용자를 생성하고 확인해보자~!!

 

 

★ 사용자 제거

   => 사용자를 생성하면 4개의 파일에 사용자의 정보가 담아진다.

      ( /etc/passwd, /etc/group , /etc/shadow , /etc/gshadow )

      사용자 제거는 위의 4개의 파일에서 사용자를 제거하게된다.

      사용자 제거시 사용하는 명령어는 "userdel"이란 명령어이다. ( 특별히 옵션은 사용하지 않는다.. )

   

ex) localhost ~ ]# userdel test1 => test1 유저를 삭제하자~!

     localhost ~ ]# tail -n 8 /etc/passwd => 제대로 삭제가 되었는지 확인

 


'리눅스 > 기본정보(OS)' 카테고리의 다른 글

(date , clock ) 시간 맞추기.  (1746) 2011.02.18
사용자 정보변경(usermod , group)  (0) 2011.02.17
VI 에디터  (936) 2011.02.17
텍스트보는 명령어  (0) 2011.02.17
기본적인 명령어  (1639) 2011.02.17