728x90

네트워크 관리자 도구 활용


 

nmcli 사용


1. 네트워크 연결 목록 확인: nmcli con show [옵션] [연결 이름]

 

# 연결 확인
nmcli con show

 

모두 같은 명령

 

 

2. 연결 생성: nmcli con add [subcommand1] [argument1] [subcommand2] [argument2] ...

 

# 연결 생성
nmcli con add type ethernet con-name test-net ifname enp0s3 ip4 10.0.2.16/24 gw4 10.0.2.1

 

1) type: 연결 유형

2) con-name: 연결 이름

3) ifname: 연결과 매핑되는 인터페이스 지정

4) ip4: IPv4 주소와 서브넷마스크 지정

5) gw4: 게이트웨이 주소 지정

 

연결 생성

 

 

3. 연결 활성화: nmcli con up [연결 이름]

 

# 추가한 연결 활성화
nmcli con up test-net

 

생성한 연결 적용

 

 

4. 연결 수정: nmcli con mod [연결 이름] [subcommand] [argument]

 

# nmcli con mod 사용 방법

# 실제 네트워크 설정 파일에 변경 사항 적용
# 정적 세팅
nmcli con mod test-net ipv4.addresses x.x.x.x/24
nmcli con mod test-net ipv4.gateway x.x.x.x
nmcli con mod test-net ipv4.dns 8.8.8.8
nmcli con mod test-net ipv4.method manual

# 동적 세팅
nmcli con mod test-net ipv4.method auto
nmcli con reload
nmcli con up test-net

# 수정 값을 다시 불러옴
nmcli con reload

# 연결 활성화
nmcli con up test-net

 

1) 변경 전 IP 주소: 10.0.2.16/24

 

2) IP 주소 변경: 10.0.2.17/24

변경 사항 적용 및 연결 활성화

 

 

5. 연결 삭제: nmcli con del [연결 이름]

 

# 연결 비활성화
nmcli con down test-net

# 연결 삭제
nmcli con del test-net

 

 

728x90
728x90

SSH 연결 과정


암호화: 대칭키, 공개키


1. 일방향 암호화: md5, sha

 

2. 양방향 암호화

 

1) 대칭키(비밀키): des, 3des, aes

1-1) 단점: 키 전달 문제

1-2) 해결책: 비대칭키 암호화

 

2) 비대칭키 또는 공개키, 개인키: rsa

2-1) 대칭키의 단점을 보완

2-2) 공개키로 암호화한 것은 개인키로만 해독 가능

2-3) 개인키로 암호화한 것은 공개키로만 해독 가능

2-4) 공개키는 누구나 가질 수 있는 전세계에 공유 가능한 키

2-5) 개인키는 절대 누구에게도 주지 않는 키

2-6) 단점1: 중간에 공격자가 키를 바꿔치기할 수 있음 > 키의 신뢰성 문제, 대칭키 방식에 비해 속도가 느림

2-7) 해결책1: 대칭키만 암호화해서 전달하는 데 사용

2-8) 해결책 1-1: 제 3의 인증 기관(SSL) > 인증 기관에서 인증한 공개키 = 인증서

 

 

3. SSL

- 평문 통신 프로토콜(http, ftp, telnet 등)을 암호화해주는 프로토콜

- 3.0 이후로 TLS: 현재 전 세계 암호화 통신의 표준

- 일반적으로 http를 암호화하는데 사용해서 https를 SSL로 생각하는 경우가 많음

 

 

SSL 통신 과정


3-way-handshake

 

1. Client Hello: 클라이언트가 서버에 접속, 클라이언트가 생성한 랜덤 데이터(1) 전달, 사용 가능한 암호화 방식

2. Server Hello: 클라이언트에 응답, 서버가 생성한 랜덤 데이터(2) 전달, 인증서(서버의 공개키) 전달, 서버가 선택한 암호화 방식

3. 인증서 확인: 서버의 인증서가 CA에 의해서 발급됐는지 확인, pre master secret 키 생성(12를 조합하여 생성)

  1) 클라이언트에 내장된 CA 리스트 확인

  2) 클라이언트에 내장된 CA의 공개키를 이용해 인증서 복호화

  3) 복호화에 성공한다면 인증서는 CA의 개인키로 암호화된 문서임이 증명됨

4. pre master secret: 인증서 안에 있는 공개키를 이용하여 pre master secret 값을 암호화한 후 서버로 전송

5. pre master secret 복호화: 자신의 비공개키로 복호화

 

=> 서버와 클라이언트 모두 pre master secret 값을 공유하게 됨

 

6. master secret 및 session key(대칭키) 생성

  1) 서버와 클라이언트는 모두 일련의 과정을 거쳐 pre master secret 값을 master secret 값으로 만듦

  2) 서버와 클라이언트가 통신할 때 사용할 세션 키를 서로 가지고 있음


7.  session key 값을 이용해 서버와 클라이언트는 데이터를 대칭키 방식으로 암호화한 후 주고받음

 

8. 세션 종료

  1) 데이터 전송이 끝나면 SSL 통신이 끝났음을 서로에게 알림

  2) 통신에서 사용한 세션 키 폐기

 

 

 

 

SSL 작동 방식


 

 

ssh 명령


ssh 접속 사전 확인 사항


1. sshd 서비스가 실행 중인지 확인

systemctl status sshd -l

 

2. 방화벽: 22번 포트 확인

netstat -an | grep :22

 

3. 클라이언트와 서버의 네트워크 상태 확인

1) NAT 네트워크 설정

2) 호스트 전용 어댑터 설정

 

 

ssh 명령: ssh [사용자 이름]@[IP 주소 또는 DNS 이름]


1. 클라이언트에서 ssh를 이용하여 원격 접속을 시도할 때 사용

 1) 사용자 이름: 접속하고자 하는 사용자의 이름

 2) IP 주소 또는 DNS 이름: 접속하고자 하는 IP 주소 또는 DNS 이름

2. -X 옵션: x포워딩을 하여 GUI 프로그램 사용 가능

 

ssh 설정 파일


1. ssh 구성 파일 위치: /etc/ssh 디렉토리

 1) ssh_config: 클라이언트 설정

 2) sshd_config: 서버 설정

 3) ssh_host_[암호화 알고리즘]_key: 해당 알고리즘의 개인키

 4) ssh_host_[암호화 알고리즘]_key.pub: 해당 알고리즘의 공개키

 

2. ssh 서버 설정: /etc/ssh/sshd_config

 1) 기본 연결 설정: 22번 포트 사용

 

 2) 키 파일 관련 설정: ssh에서 사용할 암호화 알고리즘의 키 파일 선택

 - 현재 rsa, ecdsa, ed25519 암호화 알고리즘을 사용하는 키 파일을 생성하여 /etc/ssh 디렉토리에 저장하도록 설정됨

 

3. 로그 관련 설정: 생성된 로그 파일은 /var/log/secure 에서 확인

 1) 로그 파일 생성 시 해당 로그 파일의 종류 지정

 2) AUTHPRIV: 인증 관련 로그

 

4. 인증 관련 설정

 1) 로그인 실패 시 연결 끊는 시간 설정

 2) 원격 root 로그인 방지

 - 루트 사용자로 원격 접속을 시도할 때 허용 여부 설정

 - 일반적으로 루트 사용자 원격 로그인은 비활성화 설정

# /etc/ssh/sshd.config 파일에서 설정
PermitRootLogin no

# 변경 사항 적용을 위한 서비스 재시작
systemctl restart sshd

3) 원격 로그인 실패 시 패스워드 인증 사용 유무 설정

 

 

 

ssh 실습


ssh 비밀번호 없이 로그인 (키 기반 인증)

- 클라이언트의 공개키를 서버로 복사하여 ssh 비밀번호 없이 로그인이 되는지 확인


1. 클라이언트

# 공개키와 개인키를 생성
ssh-keygen

# 클라이언트에서 생성한 공개키를 서버에 등록함
ssh-copy-id id@serverip 
ssh-copy-id root@10.0.2.15

# 클라이언트의 공개키 확인
cat /root/.ssh/id_rsa.pub

 

1) 공개키와 개인키 생성

 

2) 생성한 클라이언트의 공개키를 서버에 등록

 

3) 클라이언트의 공개키 확인

 

 

2. 서버

# 복사된 클라이언트의 공개키 확인
cat /root/.ssh/authorized_keys

 

- 복사된 클라이언트의 공개키 확인

 

 

3. 클라이언트

- 암호 없이 SSH 연결 성공

 

728x90
728x90

패키지 관리: RPM

 

RPM의 특징

Redhat Package Manager: 레드햇에서 만든 패키지 관리 도구

 

1. 바이너리 파일로 구성됨 > 컴파일 필요 없음

2. 패키지의 파일들이 관련 디렉토리로 바로 설치됨

3. 설치된 패키지의 파일들을 일괄적으로 삭제할 수 있음

4. 기존에 설치된 패키지를 삭제하지 않고 바로 업그레이드할 수 있음

5. 패키지의 설치 상태를 검증할 수 있음

6. 패키지에 대한 정보를 제공함

7. 단점: 패키지 의존성에 따라 관련 패키지가 먼저 설치되어 있지 않으면 설치 불가

 

 

RPM 패키지 관리: rpm [옵션]

-옵션

옵션 기능
-vv 디버깅 상세 정보 출력
--quiet 출력 최소, 오류 메시지만 출력
--help 도움말 출력
--version 사용 중인 rpm 버전 출력

 

 

RPM 패키지 설치: rpm -i [설치 옵션] [패키지명]

- 옵션

옵션 기능
-h 해시(#) 출력
-v 설치 과정에 대한 메시지 출력
--replacefiles 이미 설치된 다른 패키지의 파일을 덮어쓰기하여 강제 설치
--replacepkgs 이미 설치된 패키지 재설치
--test 설치하지 않고 충돌 사항 있는지 점검 및 보고
-ivh [rpm 파일] 패키지 설치
-Uvh [rpm 파일] 설치 및 업그레이드
-qa 전체 패키지 목록 출력
-qa | grep [패키지명]
-q [패키지명]
특정 패키지 정보 검색
-qf [rpm말고 아무 파일] 특정 파일을 포함한 패키지 확인
-qi [패키지명] 패키지 상세 정보 확인
-qif [rpm말고 아무 파일] 어떤 특정 파일을 포함한 패키지 상세 정보 출력
-qip [rpm 파일] rpm 파일 정보 출력
-ql [패키지명] 패키지가 설치한 파일 목록 확인
-qR [패키지명] 패키지 의존성 확인

 

 

패키지 삭제: rpm -e [패키지명]

 

 

 

패키지 관리: YUM

 

YUM 저장소 (리포지토리, repository)

- 패키지들을 저장해놓은 하나의 서버

- 리포지토리 파일(리포 파일): YUM 저장소에 연결할 수 있도록 설정한 파일

- 리포 파일 위치:  /etc/yum.repos.d 디렉토리

- 리포 파일 확장자: .repo

- 리포 파일 수정 및 생성 후에는 리포 파일이 정확하게 인식되는지 확인: yum repolist all

 

 

YUM 명령어

명령 subcommand 설명
yum [subcommand] [argument]   YUM 패키지 정보 확인
info 패키지 상세 정보 확인
provides 지정된 파일과 관련된 패키지 확인
search 키워드를 사용하여 검색
list 현재 연결된 모든 YUM 저장소의 패키지 목록 출력
1) updates: 업데이트 가능한 목록 확인
2) installed: 설치된 패키지 확인
yum [-y] install [패키지 이름]   YUM 패키지 설치
(= yum localinstall [파일명] > 요즘은 잘 안씀)
yum [-y] update [패키지 이름]   YUM 패키지 업데이트
yum [-y] remove [패키지 이름]   YUM 패키지 제거
(= yum erase [패키지 이름])
yum groups [subcommand] [argument]   YUM 그룹 패키지
info 패키지 그룹 정보 확인
install 패키지 그룹 설치
list 패키지 그룹 목록 확인
remove 패키지 그룹 제거
yum history [subcommand]   패키지 설치 기록 (cat /var/log/yum.log)
  rollback [id 번호] 해당 id로 yum 롤백 (해당 번호로 복구)
yum clean all   리포지토리 초기화 (기존 yum 캐시 초기화)
yum repolist   설정된 리포지토리 리스트 출력
yum deplist [패키지 이름]   패키지 의존성 확인
yum check-update   현 시스템에 설치된 패키지 중에서 업데이트 가능 목록 출력

 

참고 사항

- yum update 사용 권장

subcommand apt-get yum
update 저장소 정보 업데이트 프로그램 업데이트
udgrade 프로그램 업데이트 구식 패키지 제거 및 설치

 

728x90
728x90

로그 아키텍처

 

로그란

 

- 시스템에서 발생한 이벤트를 기록한 파일

- 로그는 시스템에서 발생된 문제의 원인 파악 또는 침입 경로 조회가 가능함

- systemd 시스템에서 로그는 rsyslogd와 systemd-journald 두 데몬에 의해 관리됨

- systemd에서는 systemd-journald를 통해 시스템에서 발생한 모든 로그를 수집하고 데이터 형식으로 관리함

- 따라서 원하는 내용의 로그를 쉽고 빠르게 검색이 가능함

 

 

로그 파일 저장 흐름도

 

 

 

로그 파일의 위치: rsyslogd

 

1) syslogd: rsyslogd에 의해서 수집되는 로그

2) /var/log 디렉토리: 로그 종류 별로 텍스트 파일의 형태로 저장됨

 

파일 설명
/var/log/messages 대부분의 로그 기록
(인증, 메일, cron, 부팅, 디버깅과 관련된 로그 제외)
/var/log/secure 인증과 관련된 로그 기록
/var/log/maillog 메일과 관련된 로그 기록

 

 

 

 

 

rsyslogd

 

1) 유닉스나 리눅스 계열 시스템에서 로그를 기록하기 위한 표준 프로토콜인 syslog를 사용하여 로그를 저장하는 프로세스

2) syslog에 비해 로그 전송 시 암호화 옵션 등을 사용하여 보안이 강화되었고 로그 처리 및 저장 성능이 우수함

3) /etc/rsyslog.conf 파일을 사용하여 저장할 로그의 종류 및 우선 순위를 설정함

4) 수신한 로그는 /var/log 디렉토리에 각 파일로 저장함

 

 

5) syslog-facility 설명

 

facility 설명
* 모든 서비스
auth 로그인과 같이 사용자 인증에 관한 메시지
authpriv 보안 및 승인에 관한 메시지
cron crond 데몬과 atd 데몬에 의해 발생하는 메시지
 daemon telnet, ftp 등과 같은 데몬에 의한 메시지
kern kernel에 의한 메시지로서 커널 메시지라고 함
lpr 프린터 데몬인 lpd에 의해 발생되는 메시지
mail sendmail 또는 qmail 등의 메일에 의해 발생되는 메시지
news innd 등과 같은 뉴스 시스템에 의해 발생되는 메시지
uucp UUCP 하위 시스템
user 사용자에 의해 생성된 프로세스
syslog syslogd에 의해 발생되는 메시지
local0 ~ local7 시스템 부팅 메시지 기록, 기타 여분 서비스에 사용하기 위함

 

 

systemd-journald

 

저널 데이터 조회: journalctl [옵션] [인자 값]

 

1. 기본 사용: journalctl

 

- 현재 저장된 저널 데이터를 순차적으로 출력

- 시간 순으로 출력됨

- 가장 먼저 출력되는 데이터는 시스템이 부팅 될 때 발생하는 이벤트

 

 

2. 최근에 발생한 저널 데이터 출력: journalctl -r

 

- 최근의 저널 데이터부터 역순으로 로그를 조회할 경우

 

 

3. 저널 데이터 조회

 

1) 시스템 재부팅으로 분리된  저널 데이터 조회: journalctl --list-boots

2) 특정 부트 번호에 해당하는 저널 데이터 조회: journalctl -b

 

 

 

[실습 1] cron.err의 메시지가 발생할 경우 /var/log/cron1로 저장하도록 설정

 

1. /etc/rsyslog.conf 파일에서 설정

 

 

2. 변경한 설정 값이 적용되도록 서비스 재시작

 

 

3. 로그를 발생시켜 생성된 로그 파일 확인

 

 

 

[실습 2] journal 내용 영구 저장

 

* 시간이 지날 수록 용량이 늘어나기 때문에 제약 조건 필요, 아래 조건을 만족하지 못하면 저널 데이터는 더이상 저장되지 않음

 

1) 현재 파일 시스템 전체 사이즈의 10퍼센트를 초과하면 안됨

2) 현재 파일 시스템의 여유 공간 중 15퍼센트를 초과하면 안됨

 

 

1. 저널 파일이 영구 저장되도록 설정

 

1) 저널 데이터를 저장할 /var/log/journal 디렉토리 생성

2) 기존의 /run/log/journal 디렉토리와 같이 소유권 변경, 확장 권한인 setgid 설정

3) 변경된 디렉토리를 인식할 수 있도록 systemd-journald 데몬 재시작

- /var/log/journal 디렉토리에 저널 데이터가 저장되고 시스템이 재부팅되어도 유지됨

 

 

2. 재부팅 후에도 저널 파일이 저장되어 있는 것을 확인할 수 있음

 

1) 시스템을 재부팅하게 되면 새로운 부트 번호(boot-id)가 생성됨

2) --list-boots 옵션: 시스템 재부팅으로 인해 분리된 저널 데이터를 각각 조회할 수 있음

- 어느 부트 번호가 어느 시간대의 저널 데이터를 저장하고 있는지 확인할 수 있음

3) -b 옵션: 특정 부트 번호에 해당하는 저널 데이터 조회

 

728x90
728x90

사용자 패스워드 속성

 

패스워드 속성 변경: chage [옵션] [변경 값] [사용자 계정 이름]

 

1. 리눅스에서는 /etc/shadow 파일에 패스워드를 해시 패스워드로 저장

2. 패스워드에 대한 설정 값도 저장됨

3. 옵션

 

옵션 기능
-l 지정된 사용자의 패스워드 속성 확인
-d 마지막으로 패스워드를 변경할 날짜 수정
-m 패스워드를 변경할 수 있는 최소 기간 (단위: 일)
-M 패스워드를 사용할 수 있는 최대 기간 (단위: 일)
-W 패스워드 만료 일 전 경고 날짜 (단위: 일)
-I 패스워드 만료 후 변경할 수 있는 추가 기간
-E 사용자 만료 날짜 지정 (단위: YYYY-MM-DD)

 

[실습] 암속 속성 변경

 

1) 사용자: user01

2) 최소 기간: 10

3) 최대 기간: 100

4) 경고 기간: 10

 

 

 

 

 

 

사용자 정보 관리 명령

 

사용자 로그인 정보 확인: who [옵션]

 

- 현재 시스템을 사용하는 사용자의 정보 출력

- 옵션

 

옵션 기능
-q 사용자 명만 출력
-H 출력 항목의 제목도 함께 출려
-b 마지막으로 재부팅한 날짜와 시간 출력
-m 현재 사용자 계정의 정보 출력
-r 현재 런레벨 출력

 

UID와 EUID 확인: whoami, who am i, id

 

1) UID 출력: who am i, who -m

2) EUID 출력: whoami, id

 

 

 

root 권한 사용: su, sudo

1. su: root 계정으로 전환, 모든 권한 부여

2. sudo [명령]

 1)특정 작업만 수행할 수 있도록 제한된 권한 부여

 2) sudo 명령을 사용하기 위한 두 가지 조건

       - 현재 사용자의 패스워드

       - /etc/sudoer 파일에 등록되어야 함

3. su -: 계정 전환 명령어

 1) -옵션: 해당 옵션을 지정하면 해당 사용자의 환경 설정을 읽어옴, 그렇지 않을 경우 기존 사용자의 환경 설정 유지

 

 

4. root 계정으로 직접 로그인하는 것은 보안에 취약하므로, 일반 계정으로 로그인하고 su, sudo 명령 사용을 권장함

 

 

sudo 권한 설정: /etc/sudoers

 

1) 권한 부여: /etc/sudoers 파일에 설정

- % 기호: 그룹을 의미함

- ALL=(ALL) ALL: sudo 명령을 사용할 수 있음

 

/etc/sudoers 파일 내용

 

2) root 계정일 경우: 어디서나 어느 명령이든 실행할 수 있음

 

3) 특정 사용자에게 특정 명령을 수행할 권한을 부여할 경우: 해당 사용자에게 사용자 추가, 수정 권한을 부여한다고 가정

 - 명령은 절대 경로, 명령이 여러 개일 경우 쉼표로 구분 

 

 

[실습] test 사용자 계정이 어디서든 패스워드 없이 cat 명령어 사용 가능하도록 설정

 

1. /etc/sudoers 파일에 등록

 

 

 2. test 계정으로 전환 후 cat 명령어 실행 시 패스워드를 요구하지 않는 것을 확인할 수 있음

 

 

3. cat 명령어가 아닌 다른 명령어 실행 시에는 패스워드를 요구하는 것을 확인할 수 있음

 

 

 

sudo 명령 사용: sudo [옵션] [사용자 이름] [명령]

 

1. sudo 사용 조건

 1) sudoers 라는 파일에 계정이 등록되어야 함

 2) wheel 그룹에 소속되어야 함

 

2. -i 옵션

 1) su 명령의 - 옵션과 같은 역할

 2) -i 옵션을 사용하게 되면 지정된 사용자의 환경에서 명령을 수행함

 

user01 사용자 계정으로 전환 후 file01과 file02 생성, file02는 -i 옵션과 함께 생성

 

생성한 두 파일이 생성된 디렉토리 경로가 다른 것을 확인할 수 있음

 

 

파일 및 디렉토리의 소유자와 소유 그룹 변경: chown [옵션] [사용자 계정] [파일명/디렉토리명]

 

- 파일과 디렉토리의 소유자와 소유 그룹 변경

- R 옵션: 서브 디렉토리의 소유자와 소유 그룹 변경

 

 

 

 

728x90
728x90

- 사용자 계정 관리 실습에 이어 그룹 관리 실습 진행

- 아래 GID 값으로 변경 작업

 

사용자 UID GID 보조 그룹 설명 HOME SHELL
user01 1001 1001 wheel   /home/user01 /bin/bash
user02 1002 1002 wheel, adm user02 /home/user02 /bin/bash
user03 1003 1003 10   /home/user03 /bin/bash
user04 1004 1004 10, 2000 guser /home/user04 /bin/bash
user05         /home/user05 /bin/bash

 

 

1. 그룹 생성 및 변경

 

user01 계정의 GID를 1001로 변경

 

 

//그룹 이름이 user01이고 gid의 값이 1001인 그룹 생성

groupadd -g 1001 user01
usermod -g 1001 user01

//user02
groupmod -g 1002 user02

//user03
groupadd -g 1003 user03
usermod -g 1003 user03

//user04
groupmod -g 1004 user04

 

 

 

 

 

728x90
728x90

사용자 계정 관리 명령

 

1. 사용자 계정 정보 수정: usermod [옵션] [로그인 ID]

 

- 옵션

 

옵션 기능
-u UID 사용자 UID 변경
-g GID 사용자 기본 그룹 변경
-G GID 사용자 보조 그룹 변경
-a -G 옵션과 같이 사용, 사용자 보조 그룹 추가
-c 주석 주석 필드 값 변경
-d 디렉토리 사용자의 홈 디렉토리 변경
-m -d 옵션과 같이 사용, 홈 디렉토리 이동
-s 쉘 기본 쉘 변경
-o 사용자가 UID 변경 시 UID 중복 허용
-p 패스워드 패스워드 변경, /etc/passwd의 두 번째 필드
-e 만기일 EXPIRE 값 수정
-f 기간 INACTIVE 값 수정
-L 지정한 사용자를 잠금 상태로 변경
-U 지정한 사용자의 잠금 상태 해제

 

 

2. 사용자 계정 정보 삭제: userdel [옵션] [로그인 ID]

 

1) 사용자 계정 정보 삭제 시 -r 옵션과 함께 사용할 것을 권장

- -r 옵션을 사용하지 않을 경우, 삭제된 사용자의 홈 디렉토리가 남게 됨

- 남아 있는 홈 디렉토리와 파일은 삭제된 사용자와 같은 UID로 사용자를 생성하게 되면

   새로 생성된 사용자가 소유할 수 있음 > 보안상 문제 발생 

 

2) 보안상 소유자가 없어진 파일들을 삭제하는 명령어

 

find / -user [UID] -exec rm -r {} \;

find [경로 옵션] -exec command {} \;

 

 

3) 옵션

 

옵션 기능
-r 홈 디렉토리 삭제
-f 사용자 계정 로그인 중에도 강제로 삭제

 

 

 

그룹 관리 명령

 

1. 그룹 생성: groupadd [옵션] [그룹 이름]

 

1) /etc/group 파일에 그룹이 추가됨

2) 옵션

 

옵션 기능
-g 그룹 생성 시 GID 지정
-o 사용 중인 GID 중복 허용
-r 그룹 생성 시 시스템 그룹으로 생성

 

 

2. 그룹 정보 수정: groupmod [옵션] [그룹 이름]

 

1) 옵션

 

옵션 기능
-g GID 변경
-n 지정된 그룹의 그룹명 변경
-o GID 변경 시 GID 중복 허용
-p 패스워드 변경

 

728x90
728x90

* 스냅샷 복원 후 실습 진행

 

아레 조건으로 사용자 계정 생성

 

사용자 UID GID 보조 그룹 설명 HOME SHELL
user01 1001 10     /home/user01 /bin/bash
user02 2000 2000 wheel user /home/user02 /bin/sh
user03 3000 1000     /home/user03 /bin/csh
user04 4000 4000 10 guser /home/user04 /bin/bash

 

1. 사용자 계정 정보 확인

 

현재 user 계정만 생성되어 있는 상태

 

 

 

2. 사용자 계정 생성

 

1) user01 생성

 

 

2) user02 생성

 

 

3) user03 생성

 

 

4) user04 생성

 

 

5) 생성한 사용자 계정 정보 확인

 

 

 

3. 사용자 계정 정보 수정

 

* testuser01 계정 생성 후 user05로 사용자 정보 수정

사용자 UID GID 보조 그룹 설명 HOME SHELL
user01 1001 1000 wheel   /home/user01 /bin/bash
user02 1002 2000 wheel, adm user02 /home/user02 /bin/bash
user03 1003 1000 10   /home/user03 /bin/bash
user04 1004 4000 10, 2000 guser /home/user04 /bin/bash
user05         /home/user05 /bin/bash

 

1) 사용자 계정 수정

 

usermod -g 1000 -G wheel user01

usermod -u 1002 -aG adm -c user02 -md /home/user02 -s /bin/bash user02

usermod -u 1003 -G 10 -s /bin/bash user03

usermod -u 1004 -aG 2000 user04

usermod -l user05 -md /home/user05 -s /bin/bash testuser01

 

 

2) 사용자 계정 수정 정보 확인

 

 

728x90

+ Recent posts