J-한솔넷

기록 보관 : iRedMail이용한 메일서버 구축 본문

웹 개발관련/서버

기록 보관 : iRedMail이용한 메일서버 구축

jhansol 2024. 1. 22. 21:40

저의 개인 홈페이지에 있던 내용을 옮겨 기록하고자 합니다. 제가 게으른 탓에 활용하기 힘들고 유지를 하기에 금전적으로도 낭비다 생각되어 님길 것은 남기고, 버릴 것은 버리고 사이트를 없에기 위함입니다. 기존 내용 그대로 아래와 같이 옮겼습니다.


현재 사내에서 iRedMail 솔루션을 이용하여 매일 서비스를 운영하고 있다. 그런데 기존 운영 솔루션의 버전이 1.3.2, 최신 버전이 1.6.0로 버전 차이가 상당히 난다. 업그레이드를 하려니 시간도 많이 걸릴 것이고, 완벽히 이전된다는 보장도 할 수 없고, 또 내가 이 솔루션을 설치해본지가 꽤 되어 기억도 나지 않고하여 내가 사용 중인 도매인에 매일서버 구축을 하면서 테스트를 해보고자 한다.

설치를 위한 준비

도매인 주소 준비

매일서버와 연결할 도매인 주소를 준비해야 한다. 소유한 도매인 DNS 정보에 A 레코드를 추가한다. 나의 경우 'mail' 이라는 호스트를 추가할 것이다. 최종 결정된 주소는 아래와 같다.

mail.jhansol.net

서버 호스트네임 설정

hostname과 "/etc/hosts" 파일을 변경해야 한다.

hostname은 아래 명령으로 쉽게 변경 가능하다. 단 이 명령을 먼저 실행한다. hosts 파일 변경후 실행하게되면 다시 갱신되므로 순서를 지킬 필요가 있다.

$ hostnamectl set-hostname mail

/etc/hosts 파일의 localhost 부분을 아래와 같이 변경한다.

127.0.0.1 mail.jhansol.net mail localhost

이 후 아래 명령을 입력했을 때 아래와 같이 완전한 도매인 주소가 표시되도록 한다.

$ hostname -f
mail.jhansol.net

1.3. gzip 설치

gz 파일 압축 해제를 위해 이 패키지가 필요하다. 대부분 기본으로 설치되어 있을 것이다. 설치되어 있지 않다면 아래와 같히 설치한다.

$ apt-get install -y gzip

설치 파일 다운로드

공식 사이트 다운로드 페이지의 최신 버전을 내려 받는다. 현재 1.6.0으로 "STABLE" 버전을 받는다. 다운로드 페이지를 참고하여 가장 최근 버전을 받는 것이 좋겠다.

$ wget https://github.com/iredmail/iRedMail/archive/refs/tags/1.6.0.tar.gz
$ tar xvzf 1.6.0.tar.gz

설치

아래 그림을 보면 이 솔루션에 포함된 기능과 운영체제와의 호환성 등을 보여주는데, SOGo Gropware는 Ubuntu 최신 운영체제(22.04)에서는 안된다고 되어 있다. 이 그룹웨어는 제외하고 설치할 것이다.

설치 스크립트 실행

압축을 푼 폴더를 확인해보니 'iRedMail-1.6.0'으로 폴더가 생성되어 있다. 해당 폴더로 이동하여 설치 스크립트를 실행한다.

$ ls
1.6.0.tar.gz  iRedMail-1.6.0  snap
$ cd iRedMail-1.6.0/
$ bash iRedMail.sh

multiverse, universe 컴포넌트 추가

설치 스크립트 실행 후 아래와 같은 메시지가 출력되면 그냥 "enter" 키만 눌러준다.

........
NEEDRESTART-KCUR: 5.15.0-46-generic
NEEDRESTART-KEXP: 5.15.0-46-generic
NEEDRESTART-KSTA: 1
Adding component(s) 'multiverse' to all repositories.
Press [ENTER] to continue or Ctrl-c to cancel.
Adding component(s) 'universe' to all repositories.
Press [ENTER] to continue or Ctrl-c to cancel.

설치 마법사 진행

환영 메시지 이후에는 각종 옵션 및 비밀번호 지정 등이 비록 텍스트 모드지만 마법사 형태로 설정하는 화면이 단계적으로 출력된다. 비밀번호를 제외한 대부분 기본 값으로 선택하면 문제 없을 것이다. 단계를 보면 아래와 같다.

  • 매일 데이터 저장 경로 지정
  • 웹서버 지정
  • 데이터베이스 선택
  • 데이터베이스 root 비밀번호 지정
  • 첫 매일 도매인 설정
  • 첫 매일도매인 계정(postmaster) 비밀번호 설정
  • 기타 옵션 컴포넌트 지정
  • 확인 및 설치
  • 리부팅

매일 데이터 저장 경로 지정

매일 데이터를 저장할 폴더를 지정한다. 기본 값은 "/var/vmail" 폴더로 지정되어 있다.

웹서버 지정

웹서버로 "nginx" 로 기본 설정되어 있다. 웹매일 기능을 사용하려면 반드시 필요하다.

데이터베이스 지정 및 비밀번호 지정

관리용 데이터를 저장하기 위해서는 데이터베이스가 필요하다. LDAP 도 이용 가능한데 데이터베이스가 익숙하여 데이터베이스를 선택했다. 그 중에서 MySQL 호환 데이터베이스인 MariaDB로 선택했다. 역시 기본 값으로 지정되어 이싸.

그리고 비밀번호를 지정한다.

최초 이메일 서비스를 할 대매인 주소를 입력한다. 나의 경우 "jhansol.net"이다.

최초 이메일 도매인에서 관리용 이메일 주소의 비밀번호를 입력한다. 최초 이매일은 "postmaster@jhansol.net"으로 자동으로 설정된다.

옵션 컴포넌트 설치 항목을 선택한다. 기본으로 선택한다.

마지막으로 설치 항목 및 설정 항목을 체크한 후 "Y"를 입력하여 설치를 진행한다.

이재 설치가 완료되면 아래 그림과 같이 리부팅하라는 메시지가 출력된다. 리부팅한다.