CentOS 8.2 시스템 초기 설정 및 관리 가이드

일반 사용자 계정 생성

서버 보안을 강화하기 위해 root 외부에서 작업할 일반 사용자를 추가하는 것이 권장됩니다.

# 사용자 추가 및 비밀번호 설정
useradd adminuser
passwd adminuser
# 입력한 비밀번호를 확인 후 설정 완료

wheel 그룹에 사용자를 포함하면 sudo를 통한 관리자 권한 상승이 가능합니다.

usermod -aG wheel adminuser

wheel 그룹 소속 사용자가 암호 없이도 root 권한을 사용하도록 설정하려면 /etc/sudoers 파일을 수정합니다.

visudo
# 아래 줄 추가:
%wheel ALL=(ALL) NOPASSWD: ALL

이후 해당 사용자는 sudo su - 명령어로 root 계정으로 전환할 수 있습니다.

방화벽 및 SELinux 구성

firewalld는 기본적으로 활성화되어 있으며, 상태 확인은 다음 명령어로 수행합니다.

systemctl status firewalld

외부 서비스 접근이 필요 없는 환경에서는 방화벽을 중지하고 비활성화할 수 있습니다.

systemctl stop firewalld
systemctl disable firewalld

SELinux의 현재 모드는 getenforce 명령어로 확인할 수 있습니다. Permissive 또는 Enforcing 상태일 수 있습니다.

getenforce

SELinux를 비활성화하려면 /etc/selinux/config 파일 내 SELINUX=disabled로 설정 후 재부팅합니다.

네트워크 인터페이스 설정

hostname을 변경하려면:

hostnamectl set-hostname server.example.com

NMCLI 도구를 사용하여 네트워크 설정을 조정합니다.

# 연결 이름 확인
nmcli connection show

# 정적 IP 설정 예시
nmcli connection modify ens3 ipv4.addresses 192.168.10.50/24
nmcli connection modify ens3 ipv4.gateway 192.168.10.1
nmcli connection modify ens3 ipv4.dns "192.168.10.1"
nmcli connection modify ens3 ipv4.method manual

# 설정 적용
nmcli connection down ens3 && nmcli connection up ens3

IPv6를 사용하지 않을 경우 커널 부팅 파라미터에 ipv6.disable=1을 추가하고 GRUB 설정을 갱신합니다.

grub2-mkconfig -o /boot/grub2/grub.cfg
reboot

서비스 관리

실행 중인 서비스 목록을 확인하려면:

systemctl list-units --type=service --state=active

불필요한 백그라운드 서비스는 중지하고 자동 시작을 해제할 수 있습니다.

# 예: smartd 서비스 비활성화
systemctl stop smartd
systemctl disable smartd

시스템 업데이트

CentOS 8은 DNF를 기본 패키지 관리자로 사용합니다. YUM 명령어는 DNF로의 심볼릭 링크입니다.

dnf update -y

업데이트 후에는 주요 커널 및 시스템 컴포넌트가 최신 상태로 유지됩니다.

모듈 리포지토리 활용

DNF 모듈을 통해 동일한 소프트웨어의 여러 버전을 관리할 수 있습니다.

# 사용 가능한 모듈 확인
dnf module list postgresql

# 특정 스트림 설치
dnf module install postgresql:10/server

# 기존 모듈 변경 시 먼저 리셋
dnf module reset postgresql
dnf module install postgresql:9.6/server

이 방식으로 PostgreSQL 버전 간 전환을 안정적으로 수행할 수 있습니다.

웹 기반 관리 콘솔(Cockpit) 설정

Cockpit은 시스템 상태 모니터링 및 원격 관리를 위한 웹 인터페이스입니다.

systemctl enable --now cockpit.socket
firewall-cmd --permanent --add-service=cockpit
firewall-cmd --reload

설정 완료 후 브라우저에서 https://서버IP:9090 접속하여 로그인합니다. 로컬 시스템 계정으로 인증 가능합니다.

  • 대시보드에서 리소스 사용량 확인
  • 로그, 스토리지, 네트워크 설정 편집
  • 서비스 시작/중지 제어
  • 사용자 계정 관리
  • 터미널 직접 접근 제공

Vim 편집기 환경 개선

편의성을 위해 ~/.vimrc 파일을 생성하고 기본 설정을 추가합니다.

set number
set tabstop=4
set shiftwidth=4
set expandtab
syntax on
set hlsearch

이 설정으로 코드 가독성과 편집 효율성이 향상됩니다.

추가 사용자 정의 설정

시간 동기화를 위해 chronyd를 활성화하는 것이 좋습니다.

systemctl enable chronyd
systemctl start chronyd

또한 불필요한 GUI 컴포넌트 제거로 서버 성능을 최적화할 수 있습니다 (Minimal 설치 기준).

태그: CentOS 8.2 dnf firewalld SELinux Cockpit

8월 6일 10:02에 게시됨