Born2BeRoot (1 step)

jukim·2021년 7월 1일
0

프로젝트

목록 보기
5/8

< 프로젝트 소개 >

: VirturalBox(가상머신)으로 서버 구축하기

< 프로젝트 기본상식 >

  1. 가상머신이란?
  2. CentOS & Debian
  3. APT & aptitude
  4. AppArmor & SELinux

< 해야할 것 >

  1. 최소한 적은 개수의 서비스를 설치해야함. so, 그래픽 인터페이스는 사용되지 않음

  2. 사용할 운영체제로 Debian 최신 stable버전 or CentOS 최신 stable 버전 중 하나를 선택하기
    CentOS를 선택했다면 시작 시에 SELinux가 구동되어야 함
    Debian을 선택했다면 시작 시에 AppArmor가 구동되어야 함

  3. ssh 서비스를 4242 포트에서만 작동하게 만들기

  4. UFW 방화벽을 이용하여 운영체제를 설정(4242포트만 열어둬야 함)

  5. 엄격한 비밀번호 체계를 도입하기

    • 비밀번호는 30일마다 소멸되어야 함
    • 비밀번호 변경을 위해 기다려야 하는 기간은 최소 이틀로 설정
    • 유저는 비밀번호 소멸 7일 전에 경고 메세지를 받아야 함
    • 비밀번호는 최소 10글자 이상이 되어야 하고, 대문자와 숫자를 포함하여야 하며, 같은 글자가 3번 이상 연속되면 안됨
    • 비밀번호에 유저명이 포함되면 안됨
    • 비밀번호는 이전 비밀번호에 포함되지 않는 문자를 최소 7개 이상 포함해야함
    • 루트 군한 비밀번호 또한 해당 규칙을 따라야 함
  6. 강한 sudo 그룹설정 도입하기

    • sudo 인증 시에는 비밀번호가 틀렸을 때 3번의 기회만 주어져야함
    • sudo 권한 사용 중에는 비밀번호가 틀렸을 때 내가 설정한 오류 메시지가 출력되야함
    • sudo 권한을 이용하여 수행한 명령어들은 입출력 모두 기록되어야 함.
      해당 기록은 log파일로 /var/log/sudo/폴더에 저장되어야함
    • 보안상 문제때문에, TTY모드는 활성화되어 있어야 함
    • 보안상 문제때문에, sudo권한으로 이용할 수 있는 폴더 경로는 반드시 제한되어야 함
      ex) /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
  7. monitoring.sh 라는 간단한 스크립트 작성 (bash환경에서 작동해야 함)

    • 서버가 시작될 때, 스크립트는 모든 터미널에 몇 가지 정보를 10분에 한 번씩 보여줘야 함

    < 스크립트는 아래의 정보를 포함해야 함 >

    • 내가 사용하는 운영체제의 아키텍쳐와 커널 버전
    • 물리 프로세서의 개수
    • 가상 프로세서의 개수
    • 서버 내에서 사용가능한 램과 가동률(utilization rate)을 백분율로 표시
    • 서버 내에서 사용가능한 메모리와 가동률을 백분율로 표시
    • 프로세서들의 가동률을 백분율로 표시
    • 마지막 부팅시간과 날짜
    • LVM이 활성화 되었는지 여부
    • 활성화된 연결의 수
    • 서버를 사용하고 있는 유저의 수
    • 서버의 IPv4 주소와 MAC주소
    • Sudo로 실행된 커맨드의 수

< 간단한 개념 익히기 >

[ 운영 체제 ]

  • 정의
    : 사용자가 컴퓨터를 사용하기 위해 필요한 소프트웨어.
    ex) 우리가 일반적으로 컴퓨터를 사용하면서 실행한 모든 프로그램들은 운영체제에서 관리하고 제어한다.
  • 목적
  1. 컴퓨터의 하드웨어를 관리.
    ex) 컴퓨터의 하드웨어 (ex, CPU, 메모리, 디스크, 키보드, 마우스, 모니터, 네트워크 등)
  2. 사용자에게 편의를 제공.
    ex) 컴퓨터의 하드웨어에 관한 모든 관리를 알아서 해주기 때문에 사용자에게 부담이 없음

출처
: https://jhnyang.tistory.com/16
https://velog.io/@codemcd/운영체제OS-1.-운영체제란

[ 부트로더 ]

  • 정의
    : 운영체제(이하 OS)가 시동되기 이전에 미리 실행되면서
    커널이 올바르게 시동되기 위해 필요한 모든 관련 작업을 마무리하고
    최종적으로 운영 체제를 시동시키기 위한 목적을 가진 프로그램을 말한다.

출처
: https://heeyamsec.tistory.com/19
https://symnoisy.tistory.com/entry/4부팅과-부트로더1이론

profile
21세기 모험가

0개의 댓글

관련 채용 정보