CentOS 7 서버 관리자를 위한 완벽 가이드: 설치부터 보안까지

CentOS 7 서버 관리자를 위한 완벽 가이드: 설치부터 보안까지

안정성과 신뢰성으로 유명한 CentOS 7은 웹 서버, 데이터베이스 서버, 개발 서버 등 다양한 용도로 널리 사용되는 리눅스 배포판입니다. 이 가이드에서는 CentOS 7 서버 설치부터 기본적인 관리, 보안 설정, 네트워크 구성, 응용 프로그램 설치까지 모든 과정을 상세히 다룹니다.

1, CentOS 7 서버 설치

CentOS 7 서버 설치는 여러 방법으로 가능합니다. 가장 일반적인 방법은 ISO 이미지를 다운로드하여 가상 머신(VM)에 설치하는 것입니다.

1.
1, 가상 머신 설치

가상 머신은 실제 하드웨어에서 소프트웨어를 사용하여 여러 운영 체제를 동시에 실행할 수 있도록 하는 프로그램입니다. VMware Workstation, VirtualBox, KVM 등 여러 가상 머신 소프트웨어를 사용할 수 있습니다.

  • VMware Workstation: 상용 가상 머신 소프트웨어로 강력한 기능을 제공합니다.
  • VirtualBox: 무료 오픈 소스 가상 머신 소프트웨어로 사용이 간편합니다.
  • KVM: 리눅스 커널 기반의 가상화 기술로 성능이 뛰어납니다.

예시:

VMware Workstation을 사용하여 CentOS 7을 설치하는 경우 다음 단계를 따르세요.

  1. VMware Workstation을 실행하고 새 가상 머신 만들기를 클릭합니다.
  2. 사용자 지정(고급) 설정을 선택하고 다음을 클릭합니다.
  3. 디스크 이미지 파일 옵션을 선택하고 다음을 클릭합니다.
  4. CentOS 7 ISO 이미지 파일을 선택하고 다음을 클릭합니다.
  5. 가상 머신 이름위치를 설정하고 다음을 클릭합니다.
  6. 프로세서 수메모리 크기를 설정하고 다음을 클릭합니다.
  7. 네트워크 유형을 선택하고 다음을 클릭합니다.
  8. 디스크 크기를 설정하고 마침을 클릭합니다.

  9. 가상 머신이 생성되면 전원 켜기를 클릭하여 CentOS 7 설치를 시작합니다.

1.
2, 설치 과정

CentOS 7 설치 과정은 다음과 같습니다.

  1. 언어 선택: 설치 언어를 선택합니다.
  2. 키보드 레이아웃 선택: 키보드 레이아웃을 선택합니다.
  3. 설치 목표: 서버 설치, 데스크탑 설치, 최소 설치 중 하나를 선택합니다.
  4. 날짜 및 시간: 서버의 날짜와 시간을 설정합니다.
  5. 인스톨 위치: CentOS 7을 설치할 파티션을 선택합니다.
  6. 네트워크 구성: 네트워크 인터페이스를 설정하고 IP 주소를 할당합니다.
  7. 루트 암호 설정: 루트 계정의 암호를 설정합니다.
  8. 사용자 추가: 사용자 계정을 추가합니다.
  9. 시스템 업데이트 활성화: 시스템 업데이트를 활성화합니다.
  10. 설치 시작: 설치 과정이 시작됩니다.

2, CentOS 7 서버 관리

CentOS 7 서버는 SSH (Secure Shell) 프로토콜을 사용하여 원격으로 관리할 수 있습니다. SSH는 암호화된 연결을 통해 서버에 안전하게 접속하는 데 사용됩니다.

2.
1, SSH 접속 설정

SSH 접속을 설정하려면 먼저 SSH 서버를 활성화해야 합니다. SSH 서버는 CentOS 7에 기본적으로 설치되어 있지만, 활성화되어 있지 않을 수 있습니다.

SSH 서버 활성화:

bash
sudo systemctl enable sshd
sudo systemctl start sshd

SSH 접속을 위해서는 SSH 클라이언트 프로그램이 필요합니다. PuTTY, Termius, OpenSSH 등 다양한 SSH 클라이언트 프로그램을 사용할 수 있습니다.

예시 (PuTTY 사용):

  1. PuTTY를 실행하고 Host Name (or IP address)에 서버의 IP 주소를 입력합니다.
  2. Port22를 입력합니다.
  3. Open 버튼을 클릭하여 서버에 접속합니다.
  4. 사용자 이름과 암호를 입력하고 Enter를 누릅니다.

2.
2, 기본 명령어

CentOS 7 서버에서 사용되는 기본적인 명령어는 다음과 같습니다.

  • ls: 디렉토리의 파일 목록을 표시합니다.
  • cd: 디렉토리를 변경합니다.
  • pwd: 현재 디렉토리의 경로를 표시합니다.
  • mkdir: 새 디렉토리를 생성합니다.
  • rmdir: 디렉토리를 삭제합니다.
  • cp: 파일 또는 디렉토리를 복사합니다.
  • mv: 파일 또는 디렉토리를 이동하거나 이름을 변경합니다.
  • rm: 파일 또는 디렉토리를 삭제합니다.
  • cat: 파일의 내용을 표시합니다.
  • grep: 파일에서 특정 텍스트를 검색합니다.
  • find: 디렉토리에서 특정 파일을 검색합니다.
  • ps: 현재 실행중인 프로세스를 표시합니다.
  • top: 시스템 리소스 사용 현황을 보여줍니다.
  • df: 디스크 사용량을 표시합니다.
  • du: 디렉토리의 크기를 표시합니다.

2.
3, 시스템 업데이트 및 패키지 관리

CentOS 7 서버는 패키지 관리 시스템을 통해 다양한 소프트웨어를 설치하고 관리할 수 있습니다. CentOS 7에서 사용되는 패키지 관리 시스템은 yum (Yellowdog Updater, Modified)입니다.

서버 업데이트:

bash
sudo yum update

패키지 설치:

bash
sudo yum install [package name]

예시:

  • Apache 웹 서버 설치: sudo yum install httpd
  • MySQL 데이터베이스 설치: sudo yum install mysql-server
  • PHP 설치: sudo yum install php

패키지 삭제:

bash
sudo yum remove [package name]

예시:

  • Apache 웹 서버 삭제: sudo yum remove httpd

2.
4, 사용자 관리

CentOS 7 서버에서 사용자를 관리하려면 다음 명령어를 사용합니다.

  • useradd: 새 사용자 계정을 생성합니다.
  • passwd: 사용자 암호를 변경합니다.
  • usermod: 사용자 계정 정보를 수정합니다.
  • userdel: 사용자 계정을 삭제합니다.

예시:

  • 새 사용자 계정 생성: sudo useradd [username]
  • 사용자 암호 변경: sudo passwd [username]
  • 사용자 계정 정보 수정: sudo usermod -G [group name] [username]
  • 사용자 계정 삭제: sudo userdel [username]

3, CentOS 7 서버 보안

CentOS 7 서버를 안전하게 유지하는 것은 매우 중요합니다. 서버 보안을 강화하기 위해 다음과 같은 단계를 수행해야 합니다.

3.
1, 암호 강도 설정

루트 계정 암호 강도:

루트 계정은 서버의 최고 관리자 권한을 가지고 있으므로 암호를 강력하게 설정해야 합니다. 암호는 최소 12자 이상, 대문자, 소문자, 숫자, 특수 문자를 포함해야 합니다.

사용자 계정 암호 강도:

다른 사용자 계정의 암호도 마찬가지로 강력하게 설정하는 것이 좋습니다.

예시 (사용자 계정 암호 정책 변경):

bash
sudo nano /etc/login.defs

위 명령어 실행 후 아