User Account Management


·사용자 계정 / 그룹 관리


- 계정 생성 명령어 관련 파일

 /etc/passwd

 사용자 계정 정보의 저장소  

 /etc/shadow

 암호화 된 사용자 정보

 /etc/group

 그룹 목록들에 대한 정보 

 /home

 사용자 별 홈 디렉토리 


- /etc/passwd

abc : x : 123 : 456 : (코멘트 부분,생략가능) : /home/abc : /bin/bash

 abc

 사용자 계정명 

 x

 패스워드 

 123

 UID 

 456

 GID

 /home/abc

 홈 디렉토리 위치

 /bin/bash

 사용자 시스템 로그인 시 shell 의 위치 


- /etc/shadow

abc : !! : 12345 : 0 : 99999 : 7 : : :

 abc

 사용자 계정명 

 !! (!! :비밀번호 설정 안한 상태)

 패스워드(md5암호화) 

 12345

 암호 생성 일자 

 0

 암호 변경 가능 최소 시간 

 99999

 초기 암호 변경 없이 사용 유효 기간 

 7

 만료 지정 시 만료 경고일수 


- /etc/group

abc : x : 123 :

 abc

 그룹명

 x

 그룹 패스워드 

 123

 GID 

 NULL

 그룹 구성원 사용자 이름 


- 계정 생성 : useradd [Option] [인자값] ... [계정]

ex) useradd abc

    passwd abc

ex) echo abc::0:0:rootuser:/root:/bin/bash >> /etc/passwd   // abc라는 root 계정 추가 (비밀번호 X)

 -u

 사용자 UID 변경 

 -g

 사용자 기본그룹 지정 

 -d

 사용자의 기본 홈 디렉토리 변경 


- 계정 삭제 : userdel [Option] [계정]

ex) userdel -rf abc

 -f

 강제 삭제 

 -r

 계정 생성 시 모든 정보 삭제 

 -h

 도움말 


- 계정 수정 : usermod [Option] [인자값] ... [계정]

 -u 

 사용자 UID 변경

 -g

 사용자 기본그룹 지정 

 -d

 사용자의 기본 홈 디렉토리 변경 

 -l

 계정명 변경 


- 패스워드 수정 : passwd [Option] [계정]

 -d 

 패스워드 NULL 지정 (암호삭제) 

 -l

 패스워드 잠금 

 -u

 패스워드 잠금 해제 

 -S

 패스워드 상태 출력 



UID : 0 은 관리자

홈디렉토리가 없으면 계정 변환은 되지 않으나 로그인은 된다.

쉘위치에 a를 삽입하면 a를 실행 시킨다.

ip 할당 안된다면 dhclient

'보안 > Linux' 카테고리의 다른 글

Linux -10 Permissions  (0) 2016.04.04
Linux -9 User Account Management Ⅱ  (0) 2016.04.01
Linux -7 Linux Command Ⅳ  (0) 2016.03.29
Linux -6 Linux Command Ⅲ  (0) 2016.03.28
Linux -5 Linux Command Ⅱ  (0) 2016.03.28

Linux Command


- 필터 : grep

ex)cat /etc/services | grep telnet | cat -n


-표준출력 Redirection : > , >>

표준출력장치(모니터)의 방향을 파일로 전환


-표준오류 Redirection : 2> , 2>>

ex) find / -name passwd 2> ./finderror  //출력하고 finderror 파일에 에러내용 저장

/*출력

/usr/bin/passwd

/etc/pam.d/passwd

/etc/passwd

/selinux/class/passwd/perms/passwd

*/

ex) find / -name passwd 2> /dev/null  //  /dev/null 은 내용이 저장 안되고 출력만 나옴

ex) find / -name passwd 2> /dev/null > ./findlist  //출력하지않고 findlist 파일에 출력내용 저장


* which 명령어 // 명령어 위치 찾을 수 있음

'보안 > Linux' 카테고리의 다른 글

Linux -9 User Account Management Ⅱ  (0) 2016.04.01
Linux -8 User Account Management Ⅰ  (0) 2016.03.31
Linux -6 Linux Command Ⅲ  (0) 2016.03.28
Linux -5 Linux Command Ⅱ  (0) 2016.03.28
Linux -4 Linux Command Ⅰ  (0) 2016.03.28

Linux Command


- 지정된 시간에 특정프로그램을 자동 실행 : crontab [Option]

 -e

 스케줄링 파일 수정 

 -l

 스케줄링 파일 확인 

 -r

 스케줄링 파일 초기화 


-[minute][hour][day][month][weekday][username][command]

ex) crontab -e  ->  a (INSERT로 바뀜)  ->  00 12 * * * /tmp/파일이름  ->  Esc  ->  Shift + ;  ->  wq!

ex) cd /var/spool/cron -> cat ./root

 minute

 0~59 까지의 값을 입력  

 hour

 0-23 까지의 값을 입력 

 day

 1-31 까지의 값을 입력

 month

 1-12 까지의 값을 입력 

 weekday

 0-6 까지의 값을 입력 (일요일은 0 or 7) 

 username

 실행할 파일의 소유자 (생략가능

 command

 실행할 명령어 (절대경로) 


통신사별 DNS 외우기


- KT 

 기본 DNS 서버 주소

 168.126.63.1

 보조 DNS 서버 주소

 168.126.63.2


- 구글 퍼블릭

 기본 DNS 서버 주소

 8.8.8.8

 보조 DNS 서버 주소

 8.8.4.4



- 네크워크 IP 설정 : ifconfig [N/w interface][IP][Netmask][Up/Down]

* ifconfig 명령어를 입력하고 eth0 부분을 보면 inet addr 나오는데 여기에 나오는 주소가 자신의 컴퓨터 주소입니다. //netmask  있습니다.


- GW(GateWay) 설정 : route [add/del] [IP/NET]

* route 명령어를 입력하고 default 부분을 보면 GW주소가 있습니다. 


- cat /etc/resolv.confDNS 주소가 있습니다.

출력 : # Generated by NetworkManager

  nameserver 168.126.63.1

  nameserver 168.126.63.2


 IP 

 192.168.0.XXX

 NETMASK

 255.255.255.0 

 GW

 192.168.0.1 

 DNS(Domain Name Service)

 168..126.63.1 


ex)

ifconfig eth0 down 

ifconfig eth0 192.168.0.145 netmask 255.255.255.0 up

route add default gw 192.168.0.1

route del default gw 192.168.0.1


ping 192.168.0.1  //연결 확인


cat > /etc/resolv.conf  //내용이 없을 때

nameserver 168.126.63.1

nameserver 168.126.63.2


- 타임서버 시간 조회 및 시스템 시간 변경 : rdate [Option][Time server]

ex) rdate -p time.bora.net

ex) rdate -p time.bora.net ; date

ex) rdate -s time.bora.net 

ex) crontab -e  ->  a (INSERT로 바뀜)  ->  00 12 * * * rdate -s time.bora.net  ->  Esc  ->  Shift + ;  ->  wq!  //crontab 응용


 -p

 타임 서버 시간 조회

 -s

 타임 서버 시간 시스템 동기화 


- 주요 타임 서버 리스트

 time.bora.net

 ntp.ewha.net


- 파일 찾기 : find < 경로 > -name [File name]

ex) find / -name *pass*  //pass가 들어간 파일이나 디렉토리 모두 찾기

ex) find / -name passwd -type f  // f 는 파일

ex) find / -name passwd -type d // d 는 디렉토리

ex) find ./ -size 10c  // c: byte k: kbyte w: 2byte (워드) b: 512kb (블록)

ex) find ./ -size +2c -size -30c //2바이트 이상 30바이트 이하인 파일

ex) find / -iname seoul //대소문자 구분없이 찾기

'보안 > Linux' 카테고리의 다른 글

Linux -8 User Account Management Ⅰ  (0) 2016.03.31
Linux -7 Linux Command Ⅳ  (0) 2016.03.29
Linux -5 Linux Command Ⅱ  (0) 2016.03.28
Linux -4 Linux Command Ⅰ  (0) 2016.03.28
Linux -3 Linux System Ⅱ  (0) 2016.03.27

Linux Command


- 파일 생성 및 시간 정보 변경 : touch [File name]

ex) touch -r ./파일명 ./파일명 

    touch -t 201603251200.00 ./파일명  

 -r

 시간 동기화 

 -t

 지정 시간으로 변경 


- 파일 내용 중 처음부터 10 줄 출력 : head [File name]

ex) head -n 5 ./파일명  // 처음부터 5 줄 출력

 -n

 라인 수  


- 파일 내용 중 마지막부터 10 줄 출력 : tail [File name]

ex) tail -n 5 ./파일명  //마지막부터 5 줄 출력 

    tail -f ./파일명  // 콘솔 1번째 창 cat > ./abc  콘솔 2번째 창 tail -f ./abc

 -n

 라인 수 

 -f

 실시간 확인(모니터링) 


- 파일 내용 화면단위로 출력 : more [File name]  // [space] : 다음 페이지 [b] : 이전 페이지 [enter] : 한줄 넘어가기

- 시스템 시간 조회 : date


*시간 변경

1) cd /usr/share/zoneinfo/Asia

2) cp ./Seoul /etc/localtime

3) y 누른다.


- 입력했던 명령어 확인 : history [Option][Number]

 -c

 입력했던 명령어 모두 삭제 

 -d

 입력했던 명령어 개별 삭제 


입력했던 기록 지우기


1) rm -rf ./.bash_history

2) history -c

3) exit

// exit 기록이 남음


1) rm -rf ./.bash_history

2) mkdir ./.bash_history

3) exit

// exit 기록이 남지 않음


- 사용자 교체 : su [Option][Username]

ex) su - 사용자계정

※ 옵션 - 사용할 것

   사용하지 않을 경우 홈 디렉토리가 바뀌지 않음 환경 변수가 바뀌지 않음 )

 -

 사용자의 환경설정 적용 

 -c

 Shell을 실행하지 않고 명령어만 실행


'보안 > Linux' 카테고리의 다른 글

Linux -7 Linux Command Ⅳ  (0) 2016.03.29
Linux -6 Linux Command Ⅲ  (0) 2016.03.28
Linux -4 Linux Command Ⅰ  (0) 2016.03.28
Linux -3 Linux System Ⅱ  (0) 2016.03.27
Linux -2 Linux System Ⅰ  (0) 2016.03.27

Linux Command


- 현재 경로 보기 : pwd


- 디렉토리 이동 : cd

 ./

 현재 디렉토리

 ../ 

 상위 디렉토리

 ~ 

 로그인 사용자 홈 디렉토리

 -

 이전 작업 디렉토리


- 파일 내역 출력 : ls

 -a -al

 모든 파일과 디렉토리 표시 

 -l

 자세히 출력

 -d

 디렉토리 정보 출력 

 -n

 UID,GID 출력 

 -R

 하위 경로와 모든 파일 나열 


- 파일, 디렉토리 복사 : cp [Option][Source][Target]

* : 모든 것                a* : a로 시작하는 모든 파일

? : 한글자(아무거나)       *a*: a가 들어간 모든 파일

 -i

 복사에 대한 실행여부 물음

 -f

 강제 복사 

 -r

 하위 디렉토리와 파일 모두 복사 

 -v

 복사 진행 상태 출력 

 -a

 원본 파일의 속성, 링크 정보 유지 복사 


- 파일, 디렉토리 이동 : mv [Option][Source][Target]

- mv [옵션][파일명][바꿀파일명] = 이름변경

- mv [옵션][파일명][디렉토리] = 위치변경

- mv [옵션][디렉토리][디렉토리] = 디렉토리이름변경

 -i

 이동에 대한 실행여부 물음

 -f

 강제 이동 

 -u

 이동 대상 위치보다 최근 파일 시 이동 

 -v

 이동 진행 상태 출력 

 -b

 대상 파일이 이미 있어 백업 파일 생성 


- 디렉토리 생성 : mkdir [Option][Directory name]

 -m

 디렉토리 생성 시 기본 권한 설정 

 -p

 상위 디렉토리 생성 

 --help

 도움말 

 --version

 버전 표시 


- 디렉토리 삭제 : rmdir [Option][Directory name]

 -p 

 상위 디렉토리 삭제

 --help

 도움말 

 --version

 버전 표시 


- 파일, 디렉토리 삭제 : rm [Option][Directory/File]

ex) rm -rf ./* ./.*

 -f

 강제 삭제 

 -r

 디렉토리 삭제시 하위 경로와 파일 삭제 

 -v

 파일 삭제 정보 자세히 보여줌 


- 텍스트 파일 내용 출력 : cat [File name]

 >

 파일 내용 덮어 씌우기 

 >>

 기존 파일 내용 추가 

 -n

 라인 수 출력 

'보안 > Linux' 카테고리의 다른 글

Linux -6 Linux Command Ⅲ  (0) 2016.03.28
Linux -5 Linux Command Ⅱ  (0) 2016.03.28
Linux -3 Linux System Ⅱ  (0) 2016.03.27
Linux -2 Linux System Ⅰ  (0) 2016.03.27
Linux -1 VMware , CentOS 설치  (0) 2016.03.27

Linux System


Shell

명령어 해석기

사용자와 커널 사이에 정보를 전달해주는 역할


Shell 의 기능

내부명령(computer), 외부명령(user) 실행 -> 명령프롬프트

여러명령 연결 - 파이프 ( | )  / 순차적 명령 실행 ( ; )

입/출력 리다이렉션 (<, <<, >, >>)  //  > (쓰기,덮어쓰기) , >> (이어쓰기)

특수문자 해석 및 치환, 명령어 치환

지역/ 환경변수 관리


echo abcd

: echo 뒤에 나오는 문자열(abcd) 출력

echo $SHELL

: '$'는 변수 인식 인자값 내용 출력

: 자신이 사용하고 있는 Shell 확인


사용자 환경 설정 파일

.bash_logout, .bash_profile, .bashrc .bash_history  // .bash_history 는 한번이라도 로그인하면 생김

원본파일 /etc/skel/ 존재


새로운 사용자 추가 시 마다 각 사용자의 홈 디렉토리에 복사됨

"." 으로 시작하는 파일은 숨김파일을 의미


모든 사용자 환경설정 파일

/etc/profile, /etc/bashrc


PATH 디렉토리 추가

echo $PATH  // $PATH 는 환경변수

출력: /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin 

//여기에서 :(콜론)은 디렉토리 구분자

현재 로그인에서만 추가 (로그 아웃 시 소멸)

PATH=$PATH: <추가할 디렉토리>


단축명령어 등록

alias cc='clear' (로그아웃 시 소멸)

*Ctrl + l // clear 단축기



Linux Directory


절대경로 (전체경로)

상대경로 (현 위치로 부터)


./  (현 위치)

../ (상위 위치)


ex) cd ./하위디렉토리 == cd 하위디렉토리 , cd ../  //(상위디렉토리로 올라감)


· / 

-루트 디렉토리(최상위 디렉토리)

-이 디렉토리를 기준으로 모든 디렉토리가 생성됨

- 모든 디렉토리의 출발점이자 다른 파티션의 연결점


· /bin

-시스템을 사용하기 위한 기본적인 명령어 포함

-ex) cp, mv, vi, ...


· /boot

- 부팅에 필요한 커널과 부팅할 때 필요한 핵심 파일이 들어있음


· /dev

- 장치 파일이 위치함


· /etc

- 리눅스 시스템 설정 파일이 들어있음


· /home

- 일반 사용자의 홈 디렉토리가 생성되는 곳


· /lib

- 시스템 운영 및 프로그램 구동할 때 필요한 공유 라이브러리


· /root

- 시스템 관리자, 즉 root 사용자의 홈 디렉토리


· /mnt

- CD-ROM과 플로피 장치에 대한 기본 마운트 포인트를 제공

- ex) mount /mnt/cdrom , mount /mnt/floppy , mount /dev/sda/mnt/usb


· /proc

- 프로세스와 시스템 정보를 제공하기 위한 목적으로 설계된 가상 파일 시스템을 사용하는 디렉토리

- 문자로 이루어진 이름의 디렉토리와 파일 : 시스템 및 커널 정보

- 숫자로 이루어진 이름의 디렉토리 : 현재 실행중인 프로세스의 정보


· /sbin

- 관리자가 사용하는 시스템 운영에 필요한 명령어가 존재하는 디렉토리

- fdisk, reboot 등


· /tmp

- 프로세스 생성 과정에서 발생되는 임시 파일을 저장하는 디렉토리


· /usr

- 프로그램을 설치할 때 패키지에 포함된 대부분의 파일이 이곳에 설치

- 윈도우 Programs files 폴더와 유사


· /var

- 내용이 자주 변경되는 가변 자료가 저장

- 시스템이 운영할 때 발생되는 로그(log)

- 메일 송/수신할 때 임시로 저장되는 스풀(spool)

- 프린터로 전송하기 위해 임시로 저장하는 프린트 스풀 데이터

- 레드햇 배포판에서 패키지로 제공하는 아파치(apache)웹 서버 관련 자료 (/var/www) // 버전에 따라 /var/www/html 에 홈페이지 소스 있음

- MySQL의 데이터 베이스

- FTP의 최상위 디렉토리 등 (서비스를 제공하는 서버로 리눅스를 운영한다면 /var 만드는 것이 바람직)

'보안 > Linux' 카테고리의 다른 글

Linux -6 Linux Command Ⅲ  (0) 2016.03.28
Linux -5 Linux Command Ⅱ  (0) 2016.03.28
Linux -4 Linux Command Ⅰ  (0) 2016.03.28
Linux -2 Linux System Ⅰ  (0) 2016.03.27
Linux -1 VMware , CentOS 설치  (0) 2016.03.27

Linux System


- 가상 콘솔

기본적으로 6개 제공

Ctrl + Alt + F1 ~ F6  : CLI // CentOS에서 F1은 CLI 못씀

Ctrl + Alt + F7 or F8  : X 윈도우 전환   // 환경마다 다름!


- Root 계정 (관리자)

시스템 설치 시 자동 생성 // ID : root  PW : 가상머신에서 운영체제 설치 시 설정 했던 비밀번호

시스템 관리를 위한 모든 권한을 소유


- 일반 계정 (사용자)

시스템 관리자에 의해 생성

시스템 관리자가 초기 패스워드 설정

개인 사용 환경 변경 및 저장 가능


- 부팅과 종료

shutdown -h now == halt == init 0       //즉시 종료

shutdown -r now == reboot == init 6     //즉시 재부팅

 -h 

 시스템 종료 

 -r

 시스템 종료 후 재시작 

 -c

 shutdown 명령 취소 


Ctrl + c // 취소와 동일한 역할을 함


- 명령어 메뉴얼 

man 명령어 // 메뉴얼 종료는 q , Page Up / Page Down & space[다음 페이지] / b[이전 페이지]

명령어 --help //Shift + Page Up / Page Down 으로 확인

'보안 > Linux' 카테고리의 다른 글

Linux -6 Linux Command Ⅲ  (0) 2016.03.28
Linux -5 Linux Command Ⅱ  (0) 2016.03.28
Linux -4 Linux Command Ⅰ  (0) 2016.03.28
Linux -3 Linux System Ⅱ  (0) 2016.03.27
Linux -1 VMware , CentOS 설치  (0) 2016.03.27

VMware , CentOS 설치


가상 머신 ?

-특정 운영체제에서 별도의 하드디스크를 분리 하지 않고, 타 운영체제를 설치 및 사용 할 수 있도록 해주는 응용 프로그램

ex) Windows 8 안 Linux

    Linux 안 Windows 10


가상 머신 프로그램

- VMware Workstation (셰어웨어) - 사용기간 30일 제한

- VMware Worksation Player (프리웨어)


Install (VMware Workstation 10)



1) Next > 눌러 줍니다.



2) 동의 선택하고 Next > 눌러 줍니다.



3)  Typical 눌러 줍니다.



4) Next > 눌러 줍니다.



5) 또 Next > 눌러 줍니다.



6) 또또 Next > 눌러 줍니다.



7) 또또또 Next > 눌러 줍니다.



8) Continue 누르면 설치가 시작됩니다.



9) 설치가 끝날 쯤 라이센스 키가 있으면 입력 후 Enter > 없을 경우 Skip > 을 눌러 줍니다.



10) 설치가 끝났습니다.



CentOS Install


1) VMware Workstation 10 실행화면에서 Create a New Virtual Machine을 눌러 줍니다.



2)  Typical 선택이 되어있는지 확인 후 Next > 눌러 줍니다.



3) Installer disc image file (iso) 선택하고 Browse 눌러 iso파일을 찾아 선택한 다음 Next> 눌러 줍니다.



4) Full name , User name , Password , Confirm 빈 칸 부분에 정보 입력을 합니다.



5) 정보 입력 후 Next > 눌러 줍니다.



6) Browse 눌러 설치경로를 정한 다음 Next > 눌러 줍니다.



7) Next > 눌러 줍니다. (disk size가 20GB로 되어있지만 가상머신에서 용량을 더 쓴다면 늘려도 무방합니다.)



8) Customize Hardware 버튼을 눌러 줍니다.



9) Network Adapter 부분을 누른 다음 Network Connection 부분에서 Bridged를 선택 합니다. (기본설정은 NAT로 되어있습니다.)



10) Finish 눌러 줍니다.



11) OK 버튼을 누르면 CentOS를 자동으로 설치하기 시작합니다. (클릭 X 엔터 O)


 

12) CentOS 설치가 끝난 화면 입니다.


※가상머신에서 마우스 포인터를 호스트로 나오게하는 단축키는 Ctrl + Alt // Edit - Preferences - Hot Keys 에서 설정을 바꿀 수 있습니다.


'보안 > Linux' 카테고리의 다른 글

Linux -6 Linux Command Ⅲ  (0) 2016.03.28
Linux -5 Linux Command Ⅱ  (0) 2016.03.28
Linux -4 Linux Command Ⅰ  (0) 2016.03.28
Linux -3 Linux System Ⅱ  (0) 2016.03.27
Linux -2 Linux System Ⅰ  (0) 2016.03.27

+ Recent posts