강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

메일앨리아스파일 /etc/mail/aliases 활용법

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

메일앨리아스파일 /etc/mail/aliases 활용법

 

 

 

 

 

리눅스에서 메일앨리아스기능을 하는 파일은 /etc/mail/aliases파일이다.

 

 

 

 메일앨리아스란메일계정에 대한 별칭을 설정하는 것을 의미한다.

 

 

 

 aaa라는 메일계정을 bbb라는 계정으로 사용할 수 있도록하는 것이다.

 

 

 

 그리고 메일링기능을 하기도 한다.

 

 

 

 /etc/mail/aliases파일은 다음과 같은 두가지 역할을 한다.

 

 

 

 

 
① 메일별칭 기능
 
② 소규모 메일링 기능

 

리눅스시스템에는 메일별칭파일이라는 /etc/mail/aliases라는 파일이 있다.

 

 

 

 이 파일에는 실제 존재하는 계정명외에도 다른 별칭계정명으로 메일을 송수신할 수 있도록 정의하고 있다.

 

 

 

 이것은 주로 시스템관리자나 웹사이트 관리자들이 메일을 공동으로 수신하기 위한 수단이나 root라는 이름 외에 다른 이름으로 메일을 사용하기 위한 목적으로 주로 메일별칭을 이 파일에 설정하여 사용한다.

 

 

 

 

 

newaliases라는 명령어는 메일 별칭파일(/etc/mail/aliases)에 대한 메일앨리아스 데이터베이스파일(/etc/mail/aliases.db)를 재생성하는 명령어이다.

 

 

 

 /etc/mail/aliases파일에 설정한 메일링정보나 메일앨리아스 정보가 변경되었을 경우에 이를 sendmail에 적용하기 위하여 실행하는 명령어이다.

 

 

 

 이 명령어의 실행은 굉장히 단순하여 옵션이 존재하지 않는다.

 

 

 

 그리고 “sendmail -bi”를 실행한 결과와 동일하다.

 

 

 

 

 

newaliases또는 “sendmail -bi”를 실행하면 /etc/mail/aliases파일을 읽어들여서 메일 알라아스 데이터베이스 파일인 /etc/mail/aliases.db파일을 새롭게 갱신한다.

 

 

 

 

 

참고로 알아둘 것은 aliases파일의 위치이다.

 

 

 

 어떤 리눅스에서는 /etc/aliases에 위치하기도하고 어떤 리눅스에서는 /etc/mail/aliases에 위치하기도 한다.

 

 

 

 물론 sendmail의 버전에 따라서 달라지기도 하지만 크게 상관없다.

 

 

 

 

 

그러면 newaliases의 실행 예를 보기 이전에 먼저 메일별칭파일의 내용을 잠깐 살펴보겠다.

 

 

 

 다음은 필자가 사용하고 있는 시스템의 메일별칭파일인 /etc/mail/aliases파일의 실제 내용이다.

 

 

 

 

 

[root@sulinux ~]#cat /etc/mail/aliases

#

#  Aliases in this file will NOT be expanded in the header from

#  Mail, but WILL be visible over networks or from /bin/mail.

#

#       >>>>>>>>>>      The program "newaliases" must be run after

#       >> NOTE >>      this file is updated for any changes to

#       >>>>>>>>>>      show through to sendmail.

#

 

# Basic system aliases -- these MUST be present.

mailer-daemon:  postmaster

postmaster:     root

 

# General redirections for pseudo accounts.

bin:            root

daemon:         root

adm:            root

lp:             root

sync:           root

shutdown:       root

halt:           root

mail:           root

news:           root

uucp:           root

operator:       root

games:          root

gopher:         root

ftp:            root

nobody:         root

radiusd:        root

nut:            root

dbus:           root

vcsa:           root

canna:          root

wnn:            root

rpm:            root

nscd:           root

pcap:           root

apache:         root

webalizer:      root

dovecot:        root

fax:            root

quagga:         root

radvd:          root

pvm:            root

amanda:         root

privoxy:        root

ident:          root

named:          root

xfs:            root

gdm:            root

mailnull:       root

postgres:       root

sshd:           root

smmsp:          root

postfix:        root

netdump:        root

ldap:           root

squid:          root

ntp:            root

mysql:          root

desktop:        root

rpcuser:        root

rpc:            root

nfsnobody:      root

 

ingres:         root

system:         root

toor:           root

manager:        root

dumper:         root

abuse:          root

 

newsadm:        news

newsadmin:      news

usenet:         news

ftpadm:         ftp

ftpadmin:       ftp

ftp-adm:        ftp

ftp-admin:      ftp

www:            webmaster

webmaster:      root

noc:            root

security:       root

hostmaster:     root

info:           postmaster

marketing:      postmaster

sales:          postmaster

support:        postmaster

 

 

# trap decode to catch security attacks

decode:         root

 

# Person who should get root's mail

root:           sspark

[root@sulinux ~]#

 

 

 

 

 

위의 예에서 우리는 mailer-daemon라는 메일계정은 postmaster라는 이름으로 별칭되어있고, 그리고 postmaster라는 메일별칭은 다시 root라는 이름으로 별칭되어 있다.

 

 

 

 root라는 메일계정명을 postmaster 또는 mailer-daemon이라는 이름으로도 사용하기 위한 설정이다.

 

 

 

 

 

그리고 마지막행의 다음과 같은 설정을 보자.

 

# Person who should get root's mail

root:          sspark

 

 

 

 

 

이 설정은 root라는 메일계정명을 사용하고자하는 일반계정의 계정명을 적어두는 곳이다.

 

 

 

 즉 위의 설정대로라면 root라는 계정으로 도착하는 메일은 sspark이라는 계정으로 들어오게 된다.

 

 

 

 sspark이 사용자는 root에게 도착하는 모든 메일을 모두 보게되는 것이다.

 

 

 

 

 

다음은 현재 필자의 시스템에서 newaliases를 실행한 예이다.

 

 

 

 이와같이 실행하면 /etc/mail/aliases파일을 읽어 들여서 메일 앨리아스 데이터베이스 파일인 /etc/mail/aliases.db파일을 새롭게 갱신해준다.

 

 

 

 말씀드린바와같이 아래 두 명령어는 모두 같은 명령어이다.

 

 

 

 

 

[root@sulinux mail]#newaliases

/etc/mail/aliases: 77 aliases, longest 10 bytes, 775 bytes total

[root@sulinux mail]#

[root@sulinux mail]#sendmail -bi

/etc/mail/aliases: 77 aliases, longest 10 bytes, 775 bytes total

[root@sulinux mail]#

 

 

 

 

그리고 다음은 위의 명령어의 결과로 새롭게 갱신된 메일앨리아스 데이터베이스파일(/etc/mail/aliases.db) ls로 확인한 것이다.

 

 

 

 

 

[root@sulinux mail]#ls -l /etc/mail/aliases

-rw-r--r-- 1 root root 1513  5  7 03:23 /etc/mail/aliases

[root@sulinux mail]#

[root@sulinux mail]#ls -l /etc/mail/aliases.db

-rw-r----- 1 root smmsp 12288  5  7 03:26 /etc/mail/aliases.db

[root@sulinux mail]#

 

 

/etc/mail/aliases파일의 메일별칭기능

 

/etc/mail/aliases메일계정의 별칭을 설정할 수 있으며 또한 소규모의 메일링리스트를 운영할 수 있다.

 

 

 

 즉 이 파일은 메일계정을 가진 사용자가 자기의 메일계정외에 다른 메일계정을 사용할 수 있도록 설정할 수 있다.

 

 

 

 

 

# Basic system aliases -- these MUST be present.

mailer-daemon:  postmaster

postmaster:     root

 

위의 설정은 mailer-daemon의 이름으로 postmaster라는 별칭을 사용하였으며, 다시 postmaster root라는 이름으로 별칭선언한 것이다.

 

 

 

 만약 이설정을 다음과 같이 변경하였다면 어떻게될까?

 

# Basic system aliases -- these MUST be present.

mailer-daemon:  postmaster

postmaster:     sspark

 

위와같이 설정하면 root가 받던 모든 메일들을 sspark이라는 계정이 모두 받게 된다.

 

 

 

 mailer-daemon이라는 메일관리자는 postmaster로 별칭되고 다시 postmastersspark이라는 계정으로 별칭되었기 때문이다.

 

 

 

 


/etc/mail/aliases
파일의 메일링기능

 

다음은 /etc/mail/aliases파일의 메일링기능에 대한 설명이다.

 

 

 

 방금 설명한 바와같이 /etc/mail/aliases파일은 메일별칭기능외에도 소규모의 메일링기능을 설정하여 사용할 수 있다.

 

 

 

 

 

메일링예1. 몇 명의 운용자그룹 메일링리스트 설정

 

# Person who should get root's mail

staff:          sspark,linux,bible

 

 

 

 

staff이란 이름으로 메일을 보내게되면 sspark, linux, bible이라는 사용자 3명 모두 메일을 받아볼 수 있게 된다.

 

 

 

 

 

메일링예2. 일정규모 이상의 메일링리스트 설정

 

# MANAGEMENT MEMBER MAIL LIST FILE

staff:  :include:/home/staff/staff_list



 

 

위의 설정으로 인하여 staff으로 메일을 보내면 /home/staff/staff_list 파일에 존재하는 모든 사용자에게 메일을 전달하게 된다.

 

 

 

 staff_list 파일의 작성예는 다음과 같다.

 

 

 

 

 

[root@sulinux mail]#cat /home/staff/staff_list

sspark@linux.co.kr

bible@linux.co.kr

linux@linux.co.kr

master@sulinux.net

[root@sulinux mail]#

 

 

 

 

위와같이 설정되어있을 경우 staff으로 메일을 보내게되면 /home/staff/staff_list에 존재하는 모든 메일주소 사용자에게 메일이 전달된다.

 

 

 

 

그리고 이와같이 /etc/mail/aliases파일을 수정하였다면 이를 적용하기 위하여 newaliases 또는 "sendmail -bi"를 실행해주어야 한다.

 

 

 

 

 

[root@sulinux mail]#newaliases

/etc/mail/aliases: 77 aliases, longest 10 bytes, 775 bytes total

[root@sulinux mail]#

[root@sulinux mail]#sendmail -bi

/etc/mail/aliases: 77 aliases, longest 10 bytes, 775 bytes total

[root@sulinux mail]#

 

 

 

 

위와같이 newaliases(또는 sendmail -bi)를 실행하면 /etc/mail/aliases.db라는 파일이 새롭게 갱신되어 생성된다.

 

 

 

 다음은 새로 갱신된 /etc/mail/aliases.db파일을 확인한 예이다.

 

 

 

 

 

[root@sulinux mail]#ls -l /etc/aliases.db

-rw-r----- 1 root smmsp 12288  5  7 01:10 /etc/aliases.db

[root@sulinux mail]#

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,811 개
  • 현재 접속자 :  139 명