라벨이 SE인 게시물 표시

우분투 22.04 LTS에서 MariaDB 설치 및 설정

이미지
포스팅을 시작하며 이번 포스트에서는 MariaDB를 우분투 22.04 LTS에 설치하고 설정하는 방법에 대해 다루려고 한다. MariaDB는 MySQL과 동일한 데이터베이스 관리 시스템으로, 일정 버전 이상이면 유료로 사용해야 하는 MySQL을 대체하는 훌륭한 오픈소스기반의 DBMS이다. MariaDB 설치 MariaDB를 설치하려면 터미널에서 다음 명령어를 입력하면 된다. (설치 명령어) sudo apt install mariadb-server MariaDB 설정 MariaDB를 설치한 후에는 다음과 같이 몇 가지 설정을 해야한다. 1. 보안 설정 MariaDB를 설치하면 root 사용자에 대한 암호를 설정해야한다. 최초 설치 후 아래 명령어를 통해 암호를 설정 할 수 있다. (실행 명령어) sudo mysql_secure_installation 위 명령어를 실행하면 보안 설정 프로세스가 시작되고, 아래의 값들을 설정할 수 있다. root 암호 설정 익명 사용자 계정 삭제 root 원격 로그인 비활성화 테스트 데이터베이스 삭제 2. 외부 접근 허용 MariaDB는 기본적으로 로컬에서만 접근할 수 있도록 설정되어 있다. 그러나 workbench나 DBeaver 같은 DBMS접속 툴을 이용해서 접속할 경우 원격 호스트에서도 접근해야 할 수 있다. 이때는 아래와 같이 설정파일을 수정해줘야 한다. sudo vi /etc/mysql/mariadb.conf.d/50-server.cnf를 실행해서 설정파일을 연다. bind-address를 찾아서 주석 처리한다.  다음 줄에 skip-networking을 주석 처리한다. 3. 새로운 사용자 생성 보통 현업에서는 각 DB별로 권한을 차등하는 user를 생성해서 사용한다. 아래는 특정 DB에 모든 권한을 가진 계정을 생성하는 예시이다. (mysql에 접속 후 실행) MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO '새로운 사용자 이름'@'localhost

우분투 22.04 LTS에 슈퍼바이저(Supervisor) 설치 및 구성하는 방법

이미지
포스팅을 시작하며 이번 포스트에서는 슈퍼바이저(Supervisor)를 우분투 22.04 LTS에 설치하고 구성하는 방법에 대해 다루려고 한다. 슈퍼바이저는 백그라운드 프로세스를 관리하고 제어하기 위한 툴이며, 이를 이용하여 서버의 안정성과 가용성을 높일 수 있다. 이번 포스트에서는 슈퍼바이저의 설치 방법과 기본 설정 방법을 다루고, apache2와 mariadb를 예시로 설정하는 방법을 소개한다. 1. 슈퍼바이저(Supervisor)란? 슈퍼바이저(Supervisor)는 백그라운드 프로세스를 관리하고 제어하기 위한 툴로, 서버의 안정성과 가용성을 높이기 위해 사용된다. 슈퍼바이저는 다양한 언어로 작성된 프로세스를 모니터링하고, 이를 제어할 수 있는 기능을 제공한다. 2. 슈퍼바이저 설치하기 우분투 22.04 LTS에서 슈퍼바이저를 설치하기 위해서는 apt-get 명령어를 이용하여 supervisor 패키지를 설치하면 된다. 슈퍼바이저가 python을 기반으로 만들어졌기 때문에 pip를 이용해서 패키지형태로 설치해도 되지만, 여기서는 시스템에 종속시켜 관리 및 사용의 편의성을 높이고자 apt를 이용해서 설치하겠다. (설치 명령어) sudo apt-get update sudo apt-get install supervisor 슈퍼바이저 설치 3. 슈퍼바이저 설정하기 슈퍼바이저를 설치하면, 기본 설정 파일이 /etc/supervisor/supervisord.conf 경로에 생성된다.  이 파일을 수정하여 서버에서 관리하고자 하는 프로세스를 추가하거나 수정할 수 있다. 3-1. 프로그램 추가하기 새로운 프로그램을 추가하려면, /etc/supervisor/conf.d 디렉토리에 새로운 파일을 생성해야 한다. 이 파일은 .conf 확장자를 가지며, 다음과 같은 형식을 가진다. [program:프로그램명] command=실행명령어 directory=실행경로 user=실행유저 autostart=true autorestart=true 3-2. 예시: Apache2와 MariaD

우분투 22.04 LTS에 fail2ban 설치 및 설정하기 (feat. 리눅스 보안설정)

이미지
fail2ban으로 brute force attack (무작위 대입공격) 막아보자. 나는 현직 SE(Server Engineer)다. 직업 특성상 수많은 서버들을 다뤄봤었는데, Linux계열 서버를 관리할 때 가장 많이 겪어 본 서버공격 사례 중 하나가 바로 'brute force attack' 이다. brute force attack는 '무작위 대입공격' 으로 불리는 공격 중 하나로, 무차별적으로 아이디와 패스워드를 대입해서 접속 시도를 하는 공격이다. 이는 패스워드를 복잡하게 만드는 것으로도 막을 수 있지만, 과도한 공격으로 인해 서버에 부하가 오거나 공격시도가 찝찝하게 느껴 질 때가 있다. 이때 공격자의 ip를 확인하고 자동으로 차단해주는 프로그램이 있다면 앞선 걱정을 말끔히 씻어낼 수 있다. 이번 포스팅에서는 이러한 프로그램 중 하나인 'fail2ban'에 대해 자세하게 알려주겠다. 따라오라고~! fail2ban 설치하기 sudo apt install fail2ban -y : fail2ban 설치, ubuntu 22.04 LTS에는 레포지토리에 기본으로 포함되어 있다. sudo systemctl enable fail2ban --now : 부팅 시 자동으로 시작 fail2ban 설치 fail2ban 설정하기 fail2ban을 설치한 후에는 설정 파일을 수정해서 원하는 서비스에 대한 보호 규칙을 적용할 수 있다. fail2ban의 설정 파일은 /etc/fail2ban/ 디렉토리에 위치하고 있는데, 이 디렉토리에는 jail.conf, jail.local, jail.d, filter.d, action.d 등의 파일과 폴더가 있다. jail.conf 파일은 fail2ban의 기본 설정을 담고 있고, jail.local 파일은 사용자가 커스텀한 설정을 담을 수 있는데 보통 jail.conf는 그대로 두고 jail.local 파일을 수정해서 쓴다. jail.d 폴더는 각 서비스에 대한 설정을 별도의 파일로 저장할 수 있다.