AIX Login 절차

GENERAL/Login2015. 5. 15. 00:34
반응형


⦁ 사용자가 로그인을 시도했을 때, AIX 내에서의 Login 절차에 대해 알아보자.


1) getty 

⦁ getty command는 TSM(Terminal State Manager)라는 프로그램과 연결되어 있으며, 터미널제어와 로그인 기능을 제공한다.

⦁ 터미널 제어 부분은 /etc/inittab 파일을 참조하여, 로그인을 위한 port들을 정의한다. 

⦁ "getty"가 실행되면, 로그인을 위한 port들이 open되며, 해당 포트로 연결(attach)하면 Login prompt를 보여준다.

 Login prompt에 출력된 화면은 /etc/security/login.cfg에서 정의한다.


2) Login     

⦁ Login prompt 상에서, User name과 password를 입력한다.

⦁ Login program은 입력된 ID/PW를 /etc/passwd와 /etc/security/passwd 과 비교하여, 입력된 값이 정확한지 검증한다.

 해당 입력 값 중에, User name은 정확하게 입력하였으나, password를 잘못 입력했을 경우, 입력한 계정의 unsuccessful_login_count가 실패횟수만큼 올라가며, 이로 인해 해당하는 계정이 Lock(잠김)이 걸릴 가능성도 생긴다. 특정 계정의 로그인 실패 횟수를 확인하기 위해서는 아래와 같은 방법으로 확인할 수 있다.

 [ibm_aix:root] # cat /etc/security/lastlog

    root:

            time_last_login = 1339152601

            tty_last_login = /dev/pts/0

            host_last_login = server.domain.com

            unsuccessful_login_count = 2       <--root 계정의 login 실패 횟수


                            or 


# lsuser -f username |grep unsuccessful


 user name과 password가 모두 불일치했을 경우는, /etc/security/failedlogin 파일에 아래와 같이 기록된다.  

 [ibm_aix:root] who /etc/security/failedlogin

 root             vty0    Jun 08 12:50   <--username was valid, but password was incorrect

 UNKNOWN_    vty0    Jun 08 13:20   <--invalid username


4) Setup Environment

 성공적으로 로그인하였으면, 로그인한 계정에 대한 환경이 설정된다.

 환경 파일 설명 예
 /etc/environment

 모든 사용자의 전체 환경 설정

PATH ,TZ, LANG 
 /etc/security/environ

 사용자 환경 속성 정의 

 
 /etc/security/limits

 사용자의 프로세스 리소스 제한 정의

fsize, nofiles, rss 
 /etc/security/user

 사용자의 보안관련 속성 정의 

rlogin, umask 


5) Display /etc/motd

 위의 과정이 완료되면, /etc/motd 파일의 내용이 화면에 출력되며, 가장 최근 성공한 로그인 날짜와 최근 로그인한 날짜 이뢰로 실패한 로그인횟수를 출력해준다.

 만약, 사용자의 홈디렉토리에 .hushlogin 파일이 있다면, /etc/motd는 출력되지 않는다.


6) shell 

 /etc/environment & /etc/profile & $HOME/.profile & $HOME/.kshrc 파일을 Login shell이 읽어들여면서, 제어권한이 Login shell로 넘어가게 된다.

 환경 파일

 설명

 예
 /etc/environment

 모든 프로세스의 기본 환경에 대한 변수 정의

PATH ,TZ, LANG 

 /etc/profile

 시스템 전체의 기본 변수 정의

umask, global 변수 
 $HOME/.profile

 개인의 업무환경에 맞게 변수 정의

PATH, ENV, PS1 

 $HOME/.kshrc

 개인의 콘쉘 환경 정의

set -o vi, alias 

 /etc/environment -> /etc/profile -> $HOME/.profile -> $HOME/.kshrc 순으로 시스템에 적용된다.

 /etc/profile의 변수와 $HOME/.profile의 변수가 이름이 동일하다면, $HOME/.profile에 등록된 변수가 적용된다. 그 이유는 /etc/profile에서 선언된 변수더라도, /etc/profile이 적용된 이후에 $HOME/.profile이 적용되기 때문에 동일변수의 경우, overwrite되어진다.


반응형

'GENERAL > Login' 카테고리의 다른 글

Login이 안되는 경우  (0) 2015.06.01
Posted by 정병욱

Cron 사용법

GENERAL/Crontab2015. 5. 8. 20:20
반응형

1. Cron 설명

⦁ Chronological Data Event Monitor 라는 이름을 가진 프로그램.

⦁ 이 프로그램은 사용자가(User)가 지정한 특정 시간/날짜에 자동으로 예정된 작업을 실행해주는 기능을 한다.

⦁ System account(시스템 계정 - root, adm, sys, uucp, esaadmin)은 AIX설치 시에 기본으로 crontab 파일이 등록되어있으나, 관리자가 계정을 신규로 생성했을 경우에는 crontab 파일을 신규로 생성해줘야 한다. crontab 파일을 생성하는 두 가지 방법이 있다.

   1) /var/spool/cron/crontabs 디렉토리에서 root 계정으로 특정 사용자계정에 대한 파일을 생성해주는 방법

 [ibm_aix:root] /var/spool/cron/crontab > touch user_name

   2) 생성한 계정으로 접속하여, crontab -e 를 통해 파일 생성.

 [ibm_aix:test] /var/spool/cron/crontab > crontab -e

 

⦁ AIX의 init process는 운영체제의 Initialization process(초기화 프로세스) 과정간에 /etc/inittab 파일을 참조하여, cron daemon을 기동한다. 

 

 2. Cron 관련 파일

1) /var/spool/cron/crontabs Directory

⦁ 위의 crontab 디렉토리 내에, 각 사용자(User)별로 cron 파일이 존재한다.

 [ibm_aix:root] / > cd /var/spool/cron/crontabs
 [ibm_aix:root] /var/spool/cron/crontabs > ls  
 total 40
-rw-r--r--    1 adm      cron           2016 Jul 01 2007     adm
-rw-r--r--    1 sys      cron            849 Jul 01 2007      sys
-rw-r--r--    1 root     cron           1118 Oct 21 2014      uucp
-rw-r--r--    1 esaadmin cron             38 Oct 21 2014   esaadmin
-rw-------    1 root     cron           1516 May 14 16:24   root
-rw-r--r--    1 root     system            0 May 14 16:29    aix_test


2) /var/adm/cron/log File

⦁ cron daemon의 로그를 확인할 수 있다.


3) /etc/cronlog.conf

 ⦁ /etc/cronlog.conf 파일은 cron daemon에게 "어디에 로그가 저장되고, 어떤 방식으로 로그가 관리가 되는지에 대한 정의"를 알려주는 파일이다.

 ⦁ AIX5.3 이하버전에서는 /var/adm/cron/log 파일 하나에만 지속적으로 로깅을 하였으나, AIX6.1 이상의 버전에서는 cron log파일의 사이즈를 제한하여, 제한사이즈보다 파일크기가 커지게 되면, 해당 log파일을 rotate하여 archive 항목에 지정한 PATH로 해당 파일이 저장된다.

 ⦁ 파일 설정 형식

 logfile=/var/adm/cron/log      [cron log가 저장되는 위치]

 size=100K                       [cron log size 설정]

 rotate=4                         [몇 번의 cron log 파일을 rotate 할 것인지]

 archive=/var/adm/cron/log    [rotate된 파일이 저장될 위치]

 compress                       [rotate할 때, 해당 파일을 압축하는 comment]

   : rotate는 최소 2이상으로 지정해야 하며, 만약 rotate 항목을 설정하지 않으면 제한없이 무한정 rotate 됨.


  ⦁ 파일이 rotate되는 방식
 : 아래 예제는 rotate를 4로 지정했을 때의 캡처화면이며, 총 4개의 log 파일이 rotate된다. 

 [ibm_aix:test] /var/adm/cron > ls -al /var/adm/cron/log*

-rw-rw-r–    1 root     cron          79986 Aug 25 14:00 /var/adm/cron/log

-rw-rw-r–    1 root     cron          79986 Aug 12 13:40 /var/adm/cron/log.0.Z

-rw-rw-r–    1 root     cron          79986 Aug 16 11:40 /var/adm/cron/log.1.Z

-rw-rw-r–    1 root     cron          79986 Aug 18 13:40 /var/adm/cron/log.2.Z

-rw-rw-r–    1 root     cron          79986 Aug 21 06:00 /var/adm/cron/log.3.Z



4) /var/adm/cron/cron.deny & /var/adm/cron/cron.allow

⦁ 위의 두 파일은 cron의 접근제어를 담당하는 파일이다.

⦁ cron.deny 파일은 AIX 최초 설치시 자동생성되지만, cron.allow 파일은 필요에 따라 생성해줘야 한다.

⦁ cron.deny의 역할 : cron.deny 파일안에 특정 계정이 등록되면, 해당하는 계정은 cron을 사용할 수 없다. 

⦁ cron.allow의 역할 : cron.allow 파일안에 특정 계정이 등록되면, 해당하는 계정은 cron을 사용할 수 있다.


  3. Cron 관련 명령어

1) crontab -l

⦁ 현재 로그인한 계정의 crontab 파일의 내용을 출력해준다. 

2) crontab -e

⦁  현재 로그인한 계정의 crontab 파일의 내용을 수정할 수 있다.

3) crontab -r

⦁ 현재 로그인한 계정의 crontab 파일을 삭제해준다.  

4) crontab -v

⦁ 현재 로그인한 계정의 crontab 파일의 최초 수정날짜를 출력해준다. 

5) crontab mycronfile

⦁ 현재 로그인한 계정의 crontab 파일을 mycronfile 이라는 파일로 등록한다.

⦁ /var/spool/cron/crontabs 디렉토리 안에 있는 해당 계정의 crontab 파일 내용을 mycronfile 파일의 내용으로 바꿔준다.

⦁ 기존에 사용했던 crontab 파일을 다른 내용을 가진 crontab 파일로 변경할 때 사용하며, 신규로 crontab 파일을 등록할때도 사용한다.


 4. Crontab 파일 형식

minute    hour    day_of_month    month        weekday          command

0-59      0-23       1-31            1-12        0-6 Sun-Sat     shell command

 

⦁ 예제 (매주 일요일, 2:36 시간에 /usr/local.sbin/backup.sh를 실행하는 실행예제)




반응형
Posted by 정병욱

반응형

 

 

 

⦁  NTP 구성은 NTP Server로 지정한 대상 서버와 지속적으로 시간동기화를 하는 반면, "setclock" 명령어를 일회성으로 단 한번의 시간만 동기화해주는 명령어이다. 

⦁  NTP 구성과 마찬가지로, 네트워크를 통해 시간동기화를 하므로 동기화하고자 하는 대상과 네트워크 연결이 되어 있어야 한다.

⦁  사용법

  #setclock IP_ADDRESS

  #setclock URL               <- 단, DNS서버 혹은 Local DNS에 등록이 되어있어야 함.

  #setclock hostname       <- /etc/hosts에 등록이 되어 있어야 함 

 

반응형

'GENERAL > NTP' 카테고리의 다른 글

AIX NTP Client 구성  (0) 2021.03.30
AIX NTP 서버 설정  (0) 2020.01.22
NTP의 필요성 및 취약점  (0) 2015.03.13
Posted by 정병욱