Born2be 디펜스를 위한 공부...!

조병화·2022년 7월 18일
0

CH.01 shasum

터미널에서 goinfre에서 내가 만든 가상머신 이름을 가진 폴더로 이동한다.


shasum bcho_s\ vm.vdi > signature.txt

위 명령어를 입력해 가상머신의 서명을 확인한다. 만약에 내가 git에 push 해 놓은 것과 이를 비교했을 때 같으면 제대로 한거. defense 할 준비가 된 것이다. 만약 틀렸으면 걍 평가 종료ㅋㅋ

그럼, shasum 이라는 명령어는 무엇일까?

리눅스 에서는 sha1sum, 맥에선 shasum 인 명령어로,

shasum 은 어떠한 파일에 대해 원본 파일과 해당 파일이 완전히 동일한 파일인지 확인하기 위해 사용된다. 이 파일에는 checksum 정보가 포함되어 있다.
-> dayunrpdl : 체크섬은? 나열된 데이터를 더해 체크섬 숫자를 얻고 , 정해진 비트 수의 모듈러로 정해진 비트수로 재구성한다.

그렇기 때문에, 깃에 푸시한 shasum 파일과 지금 내 가상머신에 대해 shasum을 적용한 것이 정확하게 일치한다면, 이후 가상머신이 바뀌지 않았단 것을 의미하게 되는것!


CH.02 가상머신?

출처 : https://ko.wikipedia.org/wiki/가상_머신
https://www.vmware.com/kr/topics/glossary/content/virtual-machine.html

가상 머신은 컴퓨팅 환경을 소프트웨어로 구현한 것. 가상머신 상에서 운영체제, 응용 프로그램을 설치, 실행할 수 있다.

  • 종류
    1. 시스템 가상머신
    2. 프로세스 가상머신

시스템 가상머신 : 실제 기계의 대체제를 제공한다. 같은 컴퓨터에서 다른 운영체제를 돌릴 수 있다. 호스트 컴퓨터의 물리적 리소스를 여러 가상 머신 간에 공유할 수 있습니다.

프로세스 가상머신 : 플랫폼 독립적인 환경에서 컴퓨터 프로그램을 실행한다. 이는 기반 하드웨어, 운영 체제의 정보를 감춘다. 프로그램이 모든 플랫폼에서 동일한 방식으로 실행된다.

emulator : 한 시스템에서 다른 시스템을 복제한다. 그리해 두 번째 시스템이 첫번째 시스템을 따라 행동하는 것이다.

예로 뭔 게임같은걸 만든다 할때, 여러 오에스에서 다 돌아가는지 확인해보고 싶을 때 가상머신을 오에스별로 만들어서 구동해볼 수 있지.


CH.03 LVM 이란?

Logical Volume Manager - 리눅스의 저장 공간을 효율적이고 유연하게 관리하기 위한 커널의 한 부분이다.

그럼 여기서 커널이 무엇일까? ->

Linux 커널은 Linux 운영 체제(OS)의 주요 구성 요소이며 컴퓨터 하드웨어와 프로세스를 잇는 핵심 인터페이스입니다. 그리고 두 가지 관리 리소스 사이에서 최대한 효과적으로 통신합니다.

커널은 다음과 같은 4가지 기능을 수행합니다.

  1. 메모리 관리: 메모리가 어디에서 무엇을 저장하는 데 얼마나 사용되는지를 추적합니다.
  2. 프로세스 관리: 어느 프로세스가 중앙 처리 장치(CPU)를 언제 얼마나 오랫동안 사용할지를 결정합니다.
  3. 장치 드라이버: 하드웨어와 프로세스 사이에서 중재자/인터프리터의 역할을 수행합니다.
  4. 시스템 호출 및 보안: 프로세스의 서비스 요청을 수신합니다.

LVM 과 기존 저장 공간 관리 방식의 차이

기존에는 하드 디스크를 파티셔닝 후 OS 영역에 마운트하여 read/write 를 수행했는데, 이 경우는 저장 공간의 크기가 고정되어 증설/축소가 어려웠다. 하지만 LVM 은 파티션 대신 volume 이란 단위로 저장 장치를 다루기 때문에 저장공간의 확장/변경이 유연하고 크기 변경 시 기존 데이터 이전이 필요 없다는 장점이 있다.
<파티션은 물리적으로 나누는 단위, volume은 논리적으로 나누는 단위>

정리하자면 LVM 사용의 장점은

  1. 유연한 용량 조절
  2. 크기 조절이 가능한 storage pool
  3. 편의에 따른 장치 이름 지정
  4. disk striping, mirror volume 제공

LVM 개략적 느낌 : 물리적 매체가 있고 이를 PV(Physical Volume)로 나눈다. 이들을 적당히 모아서 VG(Volume Group)로 구성. 그 후 각 VG를 LV(Logical Volume)으로 나누어서 사용.


CH 04. CentOS, Debian 차이?

초기 데비안, 센토스 운영체제 중 한가지를 선택해야 하는데, 둘 다 리눅스의 종류이다. 데비안을 사용하는 것을 강력히 추천한다.
데비안을 추천하는 이유는 centos 설치는 꽤나 복잡하기 때문인데, 대신 KDump를 설정할 필요가 없다.

  • KDump : 커널 패닉 이벤트 시에 충돌 덤프를 생성하는 리눅스 커널의 한 부분. 커널 패닉(윈도우의 블루스크린 같은 거) 이 발생했을 때 시스템의 메모리 상태를 vmcore 라는 파일형태로 생성한다.

레드햇

  • 레드햇 회사에서 배포한 리눅스
  • 2003년까지 오픈소스 라이선스로 진행하다가 이후 상용
  • 배포판 중 가장 인기 있음
  • 커뮤니티가 아닌 회사에서 관리
    ⇒ 패치빠름, 유틸리티 양 많음, 관리툴성능 굿, 호환성짱

데비안

  • 온라인 커뮤니티에서 제작하여 레드햇보다 먼저 배포.
  • 커뮤니티에서 만든 배포판이라 사후지원 및 배포가 늦어 레드햇에게 밀렸으나, 현재 무료 개인사용자 서버용으로 인기가 매우 높고 성능 안뒤쳐짐.
  • 진입장벽이 낮아 초보 유저가 접근하기 용이

CentOS 는 레드햇이 공개한 rhel을 그대로 가져와서 배포한 배포본. 무료로 사용가능 하다. 대규모 커뮤니티에서 주로 사용한다. 다양한 아키텍처를 지원하지 않는다. RPM패키지 형식을 사용한다.

데비안은 온라인 커뮤니티에서 제작해 레드햇보다 더 먼저 배포되어 시장을 선점하였다. 무료 개인사용자 서버용으로 인기가 높다. 넓은 유저층, 낮은 진입장벽. linux를 커널로 사용한다. 패키지 설치, 업그레이드가 단순하다. 많은 패키지. 쉬운 업그레이드

즉 센토스는 기업에서 관리해서 업데이트 등이 오랜 시간이 걸리는 반면 데비안은 더 빨리 처리 되기 때문에 데비안을 쓰는걸 추천.

내가 쓰고 있는 OS 가 뭔지 확인하는 법

uname -a


CH05. Selinux AppArmor

디펜스 중 내가 선택한 운영체제에 대해 질문을 한다고 한다. 예를 들어, aptitude와 apt의 차이가 무엇이고, SELinux 와 AppArmor가 무엇인가? 등과 같은 질문을 한다.

SELinux와 AppArmor가 뭔지 먼저 알아보겠다!

먼저 이 두 개념을 알기 전에 접근 통제라는 것에 대해 간단하게 알아보고자 한다.

접근통제

접근 통제란 운영체제에서 디렉토리, 파일, 네트워크 소켓 등의 시스템 자원을 적절한 권한을 가진 사용자나 그룹이 접근, 사용할 수 있게 통제하는 것이다.

  • 시스템 자원을 객체(object) 라고하고,
  • 자원에 접근하는 사용자, 프로세스를 주체 (subject) 라고 한다.

다음은 접근 통제의 종류에는 무엇이 있는지 알아보자.

* DAC (임의적 접근 통제) Discretioary Access Control :

주체가 속해있는 그룹의 신원에 근거하여 객체에 대한 접근을 제안하는 방법
1. 객체의 주체가 접근 여부를 결정 (분산형 보안관리)
2. 하나의 주체마다 객체에 대한 접근 권한 부여

장점 :
1. 객체 별 세분화 된 접근 제어
2. 특정 주체가 다른 주체에게 임의적인 접근 제어 가능
3. 유연한 접근 제어 서비스

단점 :
1. 시스템 전체 차원에서의 일관적 접근 제어 부족
2. 밀웨어,바이러스 등에 취약함.

* MAC (강제적 접근 통제) Mandatory Access Control :

자원의 보안레발과 사용자의 보안 취금 인가를 비교하여 접근을 제한하는 방식. 객체의 보안레벨보다 주체의 보안레벨이 낮으면 접근할 수가 없다.

관리자만 접근제어 규칙을 설정,변경 가능하다. (중앙집중형 보안관리)
다중 수준 보안 정책 기반

장점 :
1. 매우 엄격한 보안.
2. 모든 객체에 대한 관리가 용이

단점 :
1. 구현, 운영이 복잡
2. 모든 접근에 대해 확인해야 하므로 성능 저하
3. 상업적인 환경에 부적합

접근 통제에 대해 간단하게 알아보았으니, Selinux와 Apparmor를 보자.

  • SELinux :
    Selinux 는 관리자가 시스템 엑세스 권한을 효과적으로 제어할 수 있게 하는 linux 시스템용 보안 아키텍처.
    리눅스는 과거 공개된 코드여서 보안에 취약했기에 이를 보완하기에 나온 아키텍쳐이다. 레드햇 계열 운영체제 에서 많이 사용되는데, 아까 위에서 레드햇은 설명했다. MAC이 적용되었다. (전통적인 linux는 DAC) 시스템 전체에 대한 보안 설정이 가능하가는 장점이 있다.

    SELinux의 장점으로는 사전 정의된 통제 정책 탑제, 권한 상승 공격에 의한 취약점 감소 등이 있다.

    Selinux의 한계는 다음과 같다!
    1. SELinux 의 주요 목표는 잘못된 설정이나 프로그램의 보안 버그로 인해 시스템이 공격 당해도 시스템, 데이터를 보호하는 것이다. 즉, 모든 보안 요건이 충족되지는 않기 때문에 침입차단시스템, 침입탐지시스템, 바이러스 백신 같은것들이 아니기 때문에 여러 보안요소와 혼용하여 사용해야 한다.

그럼 AppArmor에 대해 알아보자.

  • AppArmor :

AppArmor 는 시스템 관리자가 프로그램 프로필 별로 프로그램의 역량을 제한할 수 있게 하는 리눅스 커널 보안 모듈이다.
데비안 계열 운영체제에서 주로 사용되고 MAC이 적용되었다.
개별 응용프로그램을 보호하는 일에 집중하고, 응용프로그램단위의 보안 모델이 구현되어 있다.

Apparmor의 장점은 제로 데이 공격을 비롯한 외,내부 위협으로부터 운영체제, 애플리케이션을 보호하고, 개별 애플리케이션이 액세스할 수 있는 시스템 리소스와 권한을 정의한다는 것이 있다.

단점 : 스냅에 중점을 두고 있으며, 기본 정책은 시스템의 프로그램을 거의 제한하지 않고 지원하는 정책 모듈이 부족하다.
정책 규칙이 세분화되지 않고 유연성이 부족하다.
네트워크 규칙에 대한 권한이 없다.

-> 중요한건 AppArmor가 개별 프로그램을 보호하는데 집중한다는 것!

Selinux와 Apparmor의 차이 :
Apparmor는 순전히 정책파일을 기반으로 한다.
Selinux는 정책파일에 올바른 파일 시스템 레이블이 필요하다는 것.


CH06. Aptitude, Apt

이번에는 Aptitude 와 apt가 무엇이고, 차이가 무엇인지 알아보자.

둘 다 우분투에서 패키지를 관리하는 툴이다.

aptitude 는 사용자 인터페이스를 추가해 대화형으로 패키지를 검색하고 설치, 제거할 수 있는 고급 패키징 도구에 대한 프론트엔드
강력한 검색을 제공한다.

apt 는 소프트웨어 설치, 제거를 정상적으로 처리하는 무료 오픈소스 소프트웨어 이다. 초기에는 데비안 패키지 설치용으로 설계되었는데, 이젠 rpm 패키지관리자와도 호환되도록 만들어졌다.
GUI가 없다.
apt-get, apt-mark, apt-cache 등이 있다.

Aptitude가 더 방대하고 apt-get, apt-cache를 포함한 기능들을 포함한다.
apt-get이 패키지 설치, 업그레이드, 시스템 업그레이드, 종속성 검사 등을 한다면, aptitude는 이보다 더 많은 일을 할 수 있다. 설치된 패키지 목록, 패키지를 자동 또는 수동으로 설치하도록 표시, 업그레이드에 사용할 수 없는 패키지 보관 등이 있다.

또한, Aptitude 는 interactive UI 를 제공하는 반면 apt는 text-only UI 를 제공한다는 차이가 있다.

https://www.tecmint.com/difference-between-apt-and-aptitude/

CH07. SSH

https://library.gabia.com/contents/9008

기존 원격 접속은 암호화를 제공하지 않아 보안상 취약하다. 이 때문에 ssh 기술이 등장했고, ssh의 기본 작동 원리는 대칭키, 비대칭키 방식을 이용한다는 것이다.

사용자와 서버가 서로의 정체를 증명하기 위해 생성하는 key pair 에는 공개키와 개인키 두가지가 있으며, 공개키는 서버에 전송되고 그 내용이 공개되어도 큰 문제가 되지 않는다. 서버는 공개키를 받아 새롭게 랜덤한 값을 생성해 사용자에게 다시 전송한다. 이는 시험지 같은 개념으로 사용자는 개인키를 이용해 그 시험지를 풀어낸다. 키 페어 생성 시 함께 생성된 공개키와 개인키만이 서로 해석이 가능하다. 이렇게 해석 된 시험지의 값이 서로 같다면 서버와 사용자는 서로의 정체를 인식하게 되고, 서로 접속이 허용된다. 이처럼 최초 접속 시 사용자와 서버는 비대칭키 인증방식을 사용한다.

이제 서로의 정체를 인식한 사용자와 서버가 서로 정보를 주고받고자 한다. 이 때 정보가 새어나가지 않도록 암호화하는데, 이때는 '대칭키' 방식을 사용하게 된다. 하나의 공유된 대칭키를 통해 암호화 하고, 같은 대칭키를 통해 받은 쪽에서 암호화를 해독한다. 이러한 방식으로 ssh를 통해 원격 접속이 원활하게 이루어 진다.

SSH 관련 명령어

$ systemctl status ssh -> 실행중인지 확인


CH08. 방화벽, UFW, DNF

요구사항에서 가상 머신을 실행했을 때 방화벽이 활성화되어 있어야 한다고 하고, CentOS 사용시 UFW를 기본 방화벽 대신 사용해야 한다고 한다. 또 그러기 위해선 DNF가 필요하다고 하는데, 이것들이 뭔지 알아보자.

UFW 는 Uncomplicated FireWall 으로, 데비안 계열 및 다양한 리눅스 환경에서 작동되는 사용하기 쉬운 방화벽 관리 프로그램을 뜻한다.
쉽다는게 큰 장점.
https://fashguide.net/ko/linux에서-ufw로-방화벽을-설정하는-방법

ufw는 프로그램 구성에 iptable 을 사용한다. iptable 은 리눅스 커널 방화벽이 제공하는 테이블과 그것들을 저장하는 체인,규칙들을 구성할 수 있게 해주는 사용자 공간 응용프로그램이다.

cat /etc/ufw/user.rules 로 usw 에 적용된 규칙, 어느 포트 에 한해 허용되는지 등 확인 가능

그럼 ufw 를 사용하는 이유는?
원하는, 허용된 포트만 외부로부터 출입이 가능하도록 함으로써 내부의 정보자산을 보호할 수 있다.
사용자 인증, 주소변환, 감사기록 등 장점이 있다.

DNF 는 RPM 기반 리눅스 배포판을 위한 패키지 관리도구 이다. 이 DNF를 이용해 ufw를 다운받는다?라 생각하면 될 거 같다.

UFW 관련 명령어들

$ sudo apt install ufw : ufw 방화벽 설치
$ sudo ufw status verbose : 상태 확인(디폴트는 inactive)
$ sudo ufw enable : 부팅시 ufw 활성화 하기
($ sudo ufw disable :비활성화)
$ sudo ufw default deny : 기본 incoming deny
($ sudo ufw default allow : 기본 incomig allow)
$ sudo ufw allow 4242 : 4242port로 ssh 연결 허용
$ sudo ufw status numbered : 규칙번호 확인
$ sudo ufw delete deny 8080 : 8080포트 차단 rule 삭제
$ sudo ufw deny 8080 : 8080포트 차단

삭제하려면 allow 한 포트를 deny 해주고, delete deny 해주어야함.

CH09. Group 설정

이번에는 사용자 그룹을 설정해본다.
사용자를 어느 그룹에 추가하고, 즉석에서 어느 유저를 만들고 그룹에 추가하는 거까지
sudo 그룹에 추가하는거랑 sudo 그룹 비밀번호 정책

sudo visudo 를 통해 visudo 파일의 설정을 바꿔주면 sudo 그룹의 비밀번호 인증, 경고 메시지 , 로그 저장, TTY 등을 설정가능하다.

그룹을 추가하는 명령어 : groupadd user42
그룹 조회 : cat /etc/group
그룹 삭제 : groupdel user42
사용자를 그룹에 추가 : usermod -aG user42 bcho
사용자의 group 확인 : id bcho


CH10. Sudo

이번에는 sudo.
sudo는 유닉스 운영 체제에서 다른 사용자의 보안 권한, 슈퍼유저로서 프로그램을 구동할 수 있도록 하는 프로그램이다.
root 가 아닌 사용자를 root 에 해당하는 권한으로 실행할 수 있는 명령어. 권한이 부여된 사용자는 모두 사용 가능하다.
apt install sudo 로 설치!

adduser로 추가한 새 사용자를 sudo 그룹에 추가하기
아까 위에서 사용자를 그룹에 추가하는 것과 똑같음
-> usermod -aG sudo 추가할유저이름
sudo visudo 에서
iolog_dir="/var/log.." 이거가 00/00/ 폴더 안에 로그 만들어줌
requiretty -> 이거는 pdf에 나와있는 TTY 모드를 켜야 한다고 해서! -> 로그인 되어있는 터미널에서만 sudo 기능을 사용할 수 있게 함. (보안상의 이유, 근데 레드헷에선 딱히 없다고 함ㅋ)


보여드리면 좋거나 보여줘야하는 것, 명령어들

lsblk -> 내가 논리 파티셔닝한 거 보여줌(이름, 용량, 마운트 제대로 되었는지) 마운트? -> 만든 파티션과 이름을 일치시켜주는 과정.
LVM을 할당한 디스크가 sda5번이다. 이 1~4 번 디스크는 기본파티션으로 정해져 있고, 5번부터가 논리 파티션이기 때문이다.

포트 값이 192로 되어있음
ip가 찾아갈 주소(고유).. ip를 망 공급자(sk,kt)가 공급.수가 적어서 다 다르게 가질수 없음,, 로컬망에선 따로 설정.. DHCP 로 따로 만들어서 할당을 해줄 수 있음. 내부에서 우리끼ㄹ리 쓰기로하는 ip주소 느낌. 폐쇠된 망안에서 고유의 주소를 가질 수 있고, 그런 폐쇄망에서 대표적인 ip 하나!
가상머신 내부의 고유주소가 있겠지. 이mac에서 가상머신의 ip로 바로 접근을 못하지! 왜냐? 가상머신의 ip로 뜨는 애는 그 자기 폐쇄망 안에서의 ip주소가 되기때문... 그래서 내 mac에서 연결하려면 port forwarding 하면 소프트웨어적으로 가상의 컴터와 실제 내 mac을 연결할 수 있다.
로컬호스트의 주소로 접근하는 이유가

192.168.56.1 -> 대표적인 로컬ip주소... 라우터가 사용할 수 있는 여러 로그인 주소 중 하나.

패스워드 설정 보려면, sudo vi /etc/login.defs 에서 PASS 뭐시기 3종류 잇다.

비밀번호 정책 변경은 어떻게 했는가 ?
-> sudo visudo /etc/pam.d/common-password

✓ retry=3 : 암호 입력 3회까지
✓ minlen=10 : 암호 최소 길이 10
✓ difok=7 : 기존 암호와 달라야 하는 문자 수 7
✓ ucredit=-1 : 대문자 1개 이상(-1은 최소 한개)
✓ lcredit=-1 : 소문자 1개 이상
✓ dcredit=-1 : 숫자 1개 이상
✓ reject_username : username이 그대로 또는 뒤집혀서 패스워드에 드러있는지 검사, 들어있으면 거부
✓ maxrepeat=3 : 중복 글자 제한
✓ enforce_for_root : root 사용자가 암호를 바꿔도 위의 조건들 적용

10분마다 정보 표시 뜬느건 어떻게 구현했는가?
-> monitoring.sh 는 현재 VM의 상태를 나타내는 파일로, root directory에 직접 입력해야함.

  • sysstat
    collection of performance monitoring tools for Linux
  • uname
    prints the name, version and other details about current machine and the OS running on it.
  • nproc
    print the number of processing units available
  • free
    outputs a summary of RAM usage,
  • df
    display free disk space
  • who
    1. - display who is logged in
    2. -b
    *time of last system boot
  • ss(socket statistics)
    1. show network statistics
    2. simpler and faster than netstat
  • journalctl
    1. systemd의 서비스 로그를 확인할 수 있다.
    2. 부팅부터 모든 이벤트가 바이너리 형태�의 journal에 저장된다.
    3. _COMM
    로그 발생 명령

Monitorng.sh
각 옵션 설명
sysstat

  • 리눅스 성능 측정 도구 패키지
    uname
  • 시스템에 대한 정보 출력
  • 옵션이 없으면 커널 이름 출력 (uname -s 와 동일)
  • (-a) : 리눅스의 세부 정보(커널 버전을 포함한 정보)가 출력됨
  • Linux jeongmil 5.10.0-16 …… (2022-07-23) x86_64 GNU/Linux
    nproc
  • 실제 프로세서 칩에 있는 Physical Core 를 출력 (옵션이 없는 경우 현재 사용 가능한 수를 출력)
  • (--all) : 모든 코어 수를 출력
    cat /proc/cpuinfo
  • 각 행마다 프로세서가 나열되므로 wc -l , 1개라면 processor : 0 이기 때문
    free
  • 메모리 전체, 사용량, 여유량, 캐싱으로 사용되는 메모리 파악
  • (-m) : 메가바이트로 출력
    df
  • 리눅스 시스템 전체의 디스크 사용량 확인
  • (-P) : 파일시스템 경로를 한 줄로 출력(킬로바이트)
  • 1024, 10241024 를 해준 이유는 예제에 1009/2Gb 나와 있기 때문에
    Mb/Gb 로 처리했음 (Kib
    1024 = Mib, Kib 1024 1024 = Gib)
    mpstat
  • cpu 코어별 사용률 확인 가능
  • all 행에 각각의 퍼센트가 있음
  • 두번째 열부터 마지막에서 두번째까지 각각의 사용률, 마지막엔 잔여사용률이 나옴
  • 각각을 더하는 것보다 (100 - 잔여사용률 = 현재사용률)이 짧고 이해하기 쉬움
    who
  • 로그인 정보 출력 (하단의 user log에서도 사용)
  • (-b) : 마지막 부팅 날짜와 시간을 출력
    lsblk
  • 리눅스 디바이스 정보(마운트 or 마운트 되지 않은 블럭들 전부) 출력
    ss(socket statistics)
  • 네트워크 상태를 출력
  • netstat보다 간단하고 빠름
  • 연결된 tcp 개수를 출력하므로 wc -l
    Network IP
    -네트워크 아이피 출력, sed '2, $d'가 없으면 뒷줄의 다른 아이피도 출력됨
    journalctl
  • systemd의 서비스 로그를 확인할 수 있음
  • (_COMM) : 특정 로그 확인, _COMM=sudo : sudo 로그 확인

Crontab : 크론탭은 윈도우의 스케줄러와 비슷하다. 특정 시간에 특정 작업을 해야할 때 크론탭으로 미리 설정해 놓으면 되는것!

sudo crontab -u root -e
-> 이 명령어로 가서 * 찍힌 부분을 확인할 수 있다.

https://jdm.kr/blog/2

여기서 * 표로 반복 주기를 설정하는 방법에 대해 설명이 나와있다.
이거 보면서 설명해 드리면 될듯? (간격 실행)

그래서 내 걸 보면 */10 -> 10분 주기로, root/monitoring.sh 란 쉘파일을 실행하겠다~ 이런 뜻이 됨.
| wall : 모든 사용자에게 스크립트 출력 내용이 띄워짐.

새로운 유저를 생성하기 -> adduser ㅁㅁㅁㅁㅁ
유저 삭제하기 -> deluser ㅁㅁㅁㅁㅁ
그룹의 유저 정보 표시 -> getent group 그루비룸~
useradd로 등록된 id만 보기 -> grep /bin/bash /etc/passwd

가상머신 hostname 확인 -> hostnamectl
가상머신 hostname 변경하기 ->
hostnamectl set-hostname 변경할호스트이름

profile
yback주인님 미피킹!

0개의 댓글