커피닉스, 시스템 엔지니어의 쉼터 커피향이 나는 *NIX
커피닉스
시스템/네트웍/보안을 다루는 곳
* HanIRC의 #coffeenix 방
[ 장비 및 회선 후원 ]
HOME > Unix/Linux 처음 시작하기 도움말
검색 : 사이트 WHOIS 웹서버 종류

리눅스 배포판(배포본) (26)
OS 설치 (10, 글 4, 자료 8)
매뉴얼 / 맨페이지 (8, 자료 2)
FreeBSD, OpenBSD (*BSD) (17, 글 1, 자료 6)
GNU / GPL(General Public License) (4, 자료 3)
명령어 사용하기 (10, 글 5, 자료 12)
정규 표현식(정규식) (5, 자료 3)
FAQ / 리눅스,유닉스 일반 (4, 자료 4)
OS간 비교 / 대체 프로그램 비교 (9, 자료 3)

  사용자 추가 스크립트(계정 & 패스워드) 작성일 : 2007/02/23 11:08
 
  • 글쓴이 : 류범룡
  • 조회수 : 9268
          [ 이전화면 / 수정 ]   비밀번호 :     인쇄용 화면
      서버 관리를 하다 보면, 다량의 사용자를 서버에 등록해줄 필요가 있습니다.

    이때에 걸리는 문제는 패스워드 등록 부분입니다. 초기 패스워드만 설정해 주려해도 상당한 어려움이 있었는데요.

    학창 시절 학교 실습 서버 관리를 하면서 작성 했던, 초기 패스워드 까지 설정해주는 부분입니다.

    패스워드를 암호화 하여 각 shadow 파일에 기재해주는 스크립트도 있지만(이건 어디에 있는지 못 찾겠네요.), 이 스크립트는 보다 간단하게 패스워드를 기재해주는 방식입니다.

    스크립트를 기재하기 앞서 간단하게 패스워드를 넣어주는 명령어(?)를 기재해 보겠습니다.



    1. passwd 의 --stdin.

    # man passwd   <-- man passwd 해 보시기 바랍니다.
          --stdin
                  This option is used to indicate that passwd should read the  new
                  password from standard input, which can be a pipe.
    패스워드를 파이프(|)를 이용하여 받아서 변경해준다는 말입니다.

    사용법 : echo "패스워드" | passwd 계정 --stdin     <-- 계정의 패스워드가 변경 됩니다.



    2. chpasswd

    # man chpasswd
          chpasswd - update password file in batch
    대용량의 시스템을 위해 사용되어진다고 합니다.

    사용법 : chpasswd < aaa.txt (aaa.txt에는 계정:패스워드 이렇게 적혀 있습니다.)



    리눅스를 어느 정도 사용하시는 분들은 아실 내용이지만, 처음 접할시는 분들에게는 유용하실겁니다. 이제 관련 스크립트를 올립니다.


    ====================================================================================

    # ----------------------------------------------------------------------
    #!/bin/bash

    # ----------------------------------------------------------------------
    # modify the home_dir and group.
    # do not modify the lines below if you are not very sure
    # By sangmyung univ. 소프트웨어 학부 서버실 이우철 .
    # 수정 sangmyung univ. 소프트웨어 학부 서버실 류범룡 armines647@smu.ac.kr


    group=support
    home_dir=/home/support

    # ----------------------------------------------------------------------
    # do not modify the lines below if you are not very sure

    mkdir ${home_dir}

    /usr/sbin/groupadd ${group}


    read name comment passwd

    while [ ! ${name} = 999 ]
    do
    echo adding ${name}, ${home_dir}, ${comment} .
    /usr/sbin/useradd -g ${group} -d ${home_dir}/${name} -s /bin/bash -c ${comment} -m -k /etc/skel ${name} -r
    chmod 700 ${home_dir}/${name}
    echo "${passwd}" | passwd ${name} --stdin
    read name comment passwd
    done

    # ----------------------------------------------------------------------

    ===================================================================================


    사용법 : # user_add.sh  <  useradd.txt

    useradd.txt의 내용은
    name commnet passwd  형식으로 기재가 되어집니다. 맨 마지막에는 종료 조건인 999를 기재해 주시면 됩니다.

    # cat useradd.txt
    user1 첫번째 aaa
    user2 두번째 bbb
    user3 세번째 ccc
    999 999 999

    이런 형식입니다. 도움이 되셨으면 합니다.
      커피닉스 카페 최근 글
    [12/13] 관리자에 의해 삭제
    [10/23] 공항철도주식회사 SE 구인 件
    [01/26] Re: wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/25] wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/11] 특정 안드로이드 WebView 버전에서 SSL 문제 (WebView 버그)
    [08/01] DNS forwarder (전달자) 서버를 통해서 쿼리하면 역방향을 받아오질 못합니다.
    [05/16] (주)후이즈 시스템엔지니어 (경력자) 모집
    [02/15] [AWS] Cloudfront edge 확인하기
    [01/20] Mobile Service/eCommerce 기업에서 Server / Java / PHP 개발자 구인
    [01/11] 탄탄한 퍼블리싱 모바일기업에서 Mobile 개발자를 모십니다.
    [01/11] 탄탄한 퍼블리싱 모바일기업에서 Web Front 개발자를 모십니다.
    [01/11] 탄탄한 퍼블리싱 모바일기업에서 Server 개발 팀장을 모십니다.
    [12/21] 브라우저별 SHA1 퇴출 시점
    [09/15] [구인] 시스템엔지니어 (경력)
    [08/05] Re: 칼리리눅스 텔넷관련
      New!   최근에 등록한 페이지
      KiCad EDA Suite project (Free/Libre/Open-Source EDA Suite) (CAD)
      오픈캐스케이드 캐드 (OpenCASCADE CAD)
      QCad for Windows --- GNU GPL (Free Software)
      The Hello World Collection
      IPMI를 활용한 리눅스 서버관리
      DNS 설정 검사
      nagiosgraph 설치 방법
      Slony-I 설치 방법 (postgresql replication tool)
      Qmail기반의 Anti spam 시스템 구축하기
      clusterssh

    [ 함께하는 사이트 ]




    운영진 : 좋은진호(truefeel), 야수(yasu), 범냉이, sCag
    2003년 8월 4일~