메일 서버 설치 및 구성

LinuxBeginner
지금 연습하기

소개

매일 우리는 수많은 이메일을 받지만, 이메일이 어떻게 보내지고 수신되는지에 대한 기본적인 메커니즘을 종종 알지 못합니다. 메일 서버를 설정하는 것은 어렵게 보일 수 있지만, 적절한 환경만 갖춰진다면 충분히 가능합니다. 이 랩은 메일 서버의 작동 방식을 이해할 뿐만 아니라 직접 구성할 수 있는 실질적인 경험을 제공합니다. 기술의 실용적인 측면에 몰입하여 디지털 커뮤니케이션 기술을 향상시키세요!

🎯 과제

이 프로젝트에서는 다음을 배우게 됩니다:

  • Postfix 메일 서버를 설치하고 구성하는 방법
  • Vim 을 사용하여 Postfix 구성 파일을 편집하는 방법
  • 로컬 사용자를 생성하고 이메일 라우팅을 위한 이메일 주소 매핑을 설정하는 방법
  • 테스트 이메일을 보내고 전달 여부를 확인하는 방법

🏆 성과

이 프로젝트를 완료하면 다음을 수행할 수 있습니다:

  • Postfix 를 사용하여 메일 서버를 설치하고 구성합니다.
  • 구성 파일을 편집하여 메일 서버 설정을 사용자 정의합니다.
  • 효율적인 이메일 라우팅을 위해 로컬 사용자를 생성하고 이메일 주소 매핑을 설정합니다.
  • 이메일을 보내고 받음으로써 서버의 기능을 테스트합니다.

Postfix 설치

이 단계에서는 이메일을 보내고 받는 데 필수적인 일반적인 메일 서버 소프트웨어에 익숙해질 것입니다. 이 랩에서는 효율성과 모듈식 설계로 알려진 현대적인 MTA(Mail Transfer Agent) 인 Postfix 에 집중할 것입니다. Postfix 는 지속적으로 활발하게 개발되고 있어 트래픽이 많은 환경에 적합합니다.

터미널을 열고 다음 명령으로 Postfix 를 설치합니다:

sudo apt-get update
sudo apt-get install postfix

설치하는 동안 서버 유형으로 우리의 서버 구성 요구 사항에 맞는 Internet Site를 선택합니다. 메시지가 표시되면 도메인 이름을 labex.io로 설정합니다.

Postfix 설치 터미널 명령 Postfix 설치 서버 유형 선택 Postfix 도메인 이름 설정

Postfix 구성

이 단계에서는 Linux 환경에서 널리 사용되는 텍스트 편집기인 Vim 을 사용하여 Postfix 구성 파일을 편집합니다. Vim 은 초보자에게 복잡할 수 있으므로 Postfix 구성을 수정하려면 다음 지침을 주의 깊게 따르십시오.

구성 파일 열기

터미널에서 다음 명령을 입력하여 Vim 으로 main.cf 파일을 엽니다:

sudo vim /etc/postfix/main.cf

삽입 모드 진입

기본적으로 Vim 은 파일을 탐색할 수 있지만 텍스트를 편집할 수 없는 "normal" 모드로 시작합니다. 키보드에서 i 키를 눌러 "insert" 모드로 들어가 파일을 변경할 수 있습니다.

필요한 변경 사항 적용

화살표 키를 사용하여 변경해야 하는 줄로 이동합니다. 다음은 변경해야 할 사항입니다:

  • myhostname으로 시작하는 줄을 찾아 myhostname = labex.io로 변경합니다.
  • alias_maps에 대한 줄을 alias_maps = hash:/etc/postfix/virtual로 수정합니다.

선택적으로, 이 서버를 사용할 수 있는 호스트를 정의하는 mynetworks 섹션을 설정할 수도 있습니다. 여기서는 기본 로컬 주소를 사용합니다.

Postfix 구성 파일 예시

저장 및 종료

  • 필요한 변경 사항을 적용한 후 Esc 키를 눌러 삽입 모드를 종료하고 normal 모드로 돌아갑니다.
  • 변경 사항을 저장하고 Vim 을 종료하려면 :wq (write and quit) 를 입력하고 Enter 키를 누릅니다.
  • 변경 사항을 저장하지 않고 종료하려면 :q!를 입력하고 Enter 키를 누릅니다.

로컬 사용자 추가

홈 디렉토리를 가진 'master'라는 사용자를 생성하고 비밀번호를 설정합니다.

sudo useradd -m -d /home/master master
sudo passwd master
## Set the password to "123456"

이 명령은 master 라는 사용자를 생성하며, 여기서 -d-m 옵션은 로그인 이름 master 에 대한 홈 디렉토리 /usr/master를 생성하는 데 사용됩니다 (기본 사용자 홈 디렉토리는 /usr 상위 디렉토리에 있습니다).

이메일 주소 매핑 편집

Postfix 가 이메일을 라우팅하는 데 사용할 이메일 주소 매핑 파일을 준비합니다.

echo "master@labex.io    master" | sudo tee -a /etc/postfix/virtual

이 명령은 /etc/postfix/virtual 파일에 새 줄을 추가하여 이메일 주소 master@labex.io를 로컬 사용자 master 에 매핑합니다. Postfix 는 이 파일을 사용하여 이메일을 로컬 사용자로 라우팅하는 방법을 결정합니다.

매핑 적용

다음 명령을 호출하여 매핑을 구현할 수 있습니다.

sudo postmap /etc/postfix/virtual

postmap 명령은 virtual 파일에 적용된 변경 사항을 처리하여 Postfix 가 이메일을 라우팅하는 데 사용하는 데이터베이스를 업데이트합니다.

그런 다음 수정을 완료하기 위해 Postfix 를 다시 시작합니다.

sudo service postfix restart

Postfix 를 다시 시작하면 모든 구성 변경 사항이 즉시 적용됩니다.

테스트 이메일 전송

mailutils를 설치하고 다른 사용자로부터 'master'에게 이메일을 보냅니다.

sudo apt update
sudo apt-get install mailutils

mailutils는 명령줄에서 이메일을 보내는 데 사용되는 mail 명령을 제공하기 위해 설치됩니다.

echo "Hello, this is a test email." | mail -s "Test Email" master@labex.io

echo 명령은 테스트 메시지를 mail 로 파이프하여 "Test Email" 제목으로 master@labex.io로 이메일을 보냅니다. 이 단계는 서버가 이메일을 수신할 수 있는지 테스트합니다.

이메일 확인

그런 다음 master 사용자로 전환하여 이메일을 확인합니다.

## Enter the password "123456" we set before
su master
## Check the email
mail

이 명령은 master 사용자로 전환하고 터미널에서 메일 클라이언트를 엽니다. 이를 통해 받은 편지함을 보고 테스트 이메일이 수신되었는지 확인할 수 있으며, Postfix 가 수신 메일을 처리하도록 올바르게 구성되었음을 보여줍니다.

Terminal email inbox view

Enter 키를 눌러 이메일의 전체 내용을 확인합니다.

Full email content displayed

요약

이 랩에서는 설치부터 테스트 이메일 전송까지 Linux 에서 Postfix 메일 서버를 설정하는 과정을 안내했습니다. 메일 서버의 구성 및 관리를 이해하고 구현함으로써 이메일 통신의 백엔드를 마스터하는 데 중요한 단계를 밟았습니다. 이러한 지식은 기술적 기술을 향상시킬 뿐만 아니라 네트워크 및 서버 관리에 대한 추가 탐구를 위한 기반을 제공합니다.

✨ 솔루션 확인 및 연습✨ 솔루션 확인 및 연습✨ 솔루션 확인 및 연습✨ 솔루션 확인 및 연습✨ 솔루션 확인 및 연습✨ 솔루션 확인 및 연습✨ 솔루션 확인 및 연습