가상머신으로 나만의 서버 만들기

안준성·2023년 7월 7일

Linux

목록 보기
5/5

Debian과 Rocky의 차이점

Debian과 Rocky Linux는 모두 리눅스 배포판이지만,
Debian은 넓은 사용자 베이스를 위한 일반적인 용도로 개발되었지만,
Rocky Linux는 주로 기업 환경에 사용될 목적으로 개발되었습니다.

AppArmor

AppArmor는 강력한 보안 도구로서, 애플리케이션에 대한 세밀한 제어를 가능하게 합니다. 이를 통해 시스템의 보안을 향상시킬 수 있습니다.

LVM

LVM이란 무엇인가?

LVM(Logical Volume Manager)은 리눅스 운영체제에서 물리적인 디스크 공간을 효율적으로 관리하고 사용할 수 있도록 도와주는 도구입니다. LVM을 사용하면, 여러 개의 디스크를 하나의 논리적인 볼륨으로 묶거나, 반대로 하나의 물리적인 디스크를 여러 개의 논리적인 볼륨으로 분할할 수 있습니다.

파티션 넘버링: sda1, sda2에서 sda5로 바로 가는 이유

MBR에서는 4개의 기본 파티션 또는 3개의 기본 파티션과 1개의 확장 파티션을 가질 수 있습니다. 확장 파티션은 물리적 디스크에 더 많은 파티션을 생성하려는 용도로 사용됩니다. 확장 파티션 내에서는 여러 개의 논리적 파티션을 생성할 수 있으며, 이 논리적 파티션의 넘버링은 5부터 시작합니다.

dpkg

dpkg는 Debian 패키지 관리 시스템입니다.
이는 Debian 기반의 리눅스 시스템에서 소프트웨어 패키지를 설치, 제거, 관리하는 데 사용됩니다.

dpkg명령어를 이용하면 시스템에 설치된 패키지의 목록을 조회하거나, 새로운 패키지를 설치하거나, 기존 패키지를 제거하는 등의 작업을 수행할 수 있습니다.
그러나 dpkg는 패키지의 의존성을 자동으로 처리하지 못하므로,
일반적으로는 dpkg의 상위 계층에 위치한 apt 또는 apt-get 같은 패키지 관리 도구를 이용하여 패키지를 관리하는 것이 일반적입니다.
이런 도구들은 dpkg에 기반을 두고 있으며, 패키지의 의존성 관리를 자동으로 처리해 줍니다.

APT와 Aptitude

APT와 Aptitude의 주요 차이점은 다음과 같습니다:

  1. 인터페이스: APT는 명령 줄 인터페이스만 제공하지만, Aptitude는 명령 줄 및 그래픽 사용자 인터페이스를 모두 제공합니다.

  2. 패키지 검색: Aptitude는 패키지 검색 기능을 제공합니다. 이를 통해 사용자는 특정 패키지를 쉽게 찾을 수 있습니다. 반면 APT는 이런 기능을 제공하지 않습니다.

  3. 종속성 해결: Aptitude는 패키지 종속성 문제를 해결하는 데 APT보다 더 우수하다고 알려져 있습니다. Aptitude는 문제가 발생할 경우 사용자에게 여러 해결책을 제시하며, 사용자가 이 중 가장 적합한 선택을 할 수 있게 해줍니다.

계정 생성하고 그 계정으로 ssh 접속하기

etc/ssh/sshd_config
sudo groupadd groupname

hostname 수정하기

etc/hosts/
etc/hostname

password policy

etc/login.defs
etc/pam.d/common-pass

sudo

which sudo

sudo visudo

sudosecure_pathsudo 명령을 실행할 때 사용되는 경로입니다.
일반적으로, 유닉스 또는 리눅스 시스템에서 PATH 환경 변수는 사용자가 명령어를 입력할 때 해당 명령어를 찾을 위치들을 지정합니다.
즉, PATH 환경 변수에 등록된 디렉터리 경로를 순서대로 검색하여 사용자가 입력한 명령어의 실행 파일을 찾아냅니다.

그러나 sudo 명령을 사용할 때는 secure_path 설정이 적용됩니다.
이 설정은 sudo로 실행하는 명령어를 찾을 때 사용하는 디렉터리 경로를 지정합니다.
즉, sudo를 사용할 때는 사용자의 PATH 환경 변수 대신 secure_path 설정에 따라 명령어를 찾아냅니다.

이러한 secure_path의 목적은 보안 강화입니다.
일반 사용자가 임의의 디렉터리에 악의적인 실행 파일을 위치시켜 놓고,
이를 sudo 명령어로 실행하는 것을 방지하기 위함입니다.
secure_path는 일반적으로 시스템 명령어가 위치한 디렉터리만 포함하므로,
sudo로 실행하는 명령어는 이 디렉터리들에서만 찾게 됩니다.

tty

requiretty 옵션은 사용자가 실제로 콘솔에 로그인하고 터미널에서 직접 명령어를 입력했을 때만 sudo 권한을 부여한다.
터미널이 아닌 곳(ex. 원격접속)에서 sudo를 사용하려는 시도는 모두 거부되며, 이는 악의적인 프로그램이나 스크립트가 사용자의 알지 못하는 사이에 sudo를 사용하는 것을 방지해줍니다.

pts

Pseudo TTY(혹은 Terminal) Slave의 약어로,
가상 터미널을 의미한다.
원격 접속이나 터미널 에뮬레이터 등의 작업을 수행할 때 생성된다

cron

cron은 Unix 및 Unix 계열 시스템에서 주기적으로 실행되어야 하는 작업을 관리하는 시스템 유틸리티입니다. 이름 'cron'은 'Chronos'(시간을 의미하는 그리스어)에서 유래했습니다.

cron은 백그라운드에서 실행되며, 주로 시스템 유지보수 작업, 보고서 작성, 주기적인 데이터 백업 등을 자동화하는 데 사용됩니다.
cron은 'crontab' 파일을 통해 구성되며,
이 파일은 각 사용자가 관리하며 시스템 전체 또는 개별 사용자의 주기적인 작업을 정의합니다.

service cron start

systemctl disable cron

profile
안녕하세요

0개의 댓글