메일 서비스마다 다음 소프트웨어 구성 요소 중 하나 이상이 각각 포함됩니다.
이 절에서는 다음 소프트웨어 구성 요소에 대해서도 설명합니다.
메일 사용자 에이전트는 사용자와 메일 전송 에이전트 사이의 인터페이스 역할을 하는 프로그램입니다. sendmail 프로그램은 메일 전송 에이전트입니다. Oracle Solaris 운영 체제에서는 다음 메일 사용자 에이전트를 제공합니다.
/usr/bin/mail
/usr/bin/mailx
메일 전송 에이전트는 메일 메시지 경로 지정과 메일 주소 확인을 담당합니다. 이 에이전트는 메일 전송(transport) 에이전트라고도 합니다. Oracle Solaris 운영 체제용 전송 에이전트는 sendmail입니다. 전송 에이전트는 다음과 같은 기능을 합니다.
메일 사용자 에이전트에서 보낸 메시지 수락
대상 주소 확인
메일을 배달하기 위해 적절한 배달 에이전트 선택
다른 메일 전송 에이전트로부터 받는 메일 수신
로컬 배달 에이전트는 메일 배달 프로토콜을 구현하는 프로그램입니다. Oracle Solaris 운영 체제에서는 다음과 같은 로컬 배달 에이전트가 제공됩니다.
UUCP 로컬 배달 에이전트 - uux를 사용하여 메일 배달
로컬 배달 에이전트 - 표준 Oracle Solaris 릴리스의 mail.local
sendmail 버전 8.12에서 변경된 사항에는 다음과 같은 관련 항목이 있습니다.
메일러는 sendmail 관련 용어입니다. 메일러는 사용자 정의된 로컬 배달 에이전트나 사용자 정의된 메일 전송 에이전트의 특정 인스턴스를 식별하기 위해 sendmail에 사용됩니다. sendmail.cf 파일에서 적어도 하나의 메일러를 지정해야 합니다. 작업 정보는 sendmail 구성 변경 in Chapter 2, 메일 서비스 관리을 참조하십시오. 이 절에서는 두 가지 유형의 메일러를 간단히 설명합니다.
메일러에 대한 자세한 내용은 http://www.sendmail.org/m4/readme.htmlhttp://www.sendmail.org/m4/readme.html 또는 /etc/mail/cf/README를 참조하십시오.
SMTP는 인터넷에서 사용되는 표준 메일 프로토콜입니다. 이 프로토콜은 다음 메일러를 정의합니다.
smtp는 정규 SMTP 전송을 다른 서버에 제공합니다.
esmtp는 확장된 SMTP 전송을 다른 서버에 제공합니다.
smtp8은 8비트 데이터를 MIME으로 변환하지 않고 다른 서버에 SMTP 전송을 제공합니다.
dsmtp는 F=% 메일러 플래그를 사용하여 주문형 배달을 제공합니다. sendmail() 버전 8.12에서 MAILER 선언의 변경 사항 및 sendmail 버전 8.12의 추가 배달 에이전트 플래그를 참조하십시오.
가능하면 UUCP를 사용하지 마십시오. 설명은 http://www.sendmail.org/m4/uucp_mailers.htmlhttp://www.sendmail.org/m4/uucp_mailers.html을 참조하거나 /etc/mail/cf/README에서 문자열 USING UUCP MAILERS를 검색하십시오.
UUCP는 다음 메일러를 정의합니다.
$=U 클래스의 이름이 uucp-old로 보내집니다. uucp는 이 메일러에 대한 오래된 이름입니다. uucp-old 메일러는 헤더에 느낌표 주소를 사용합니다.
$=Y 클래스의 이름이 uucp-new로 보내집니다. 이 메일러를 사용하려면 수신 UUCP 메일러가 하나의 전송에서 받는 사람을 여러 명 관리할 수 있다는 점을 이해해야 합니다. suucp는 이 메일러에 대한 오래된 이름입니다. uucp-new 메일러도 헤더에 느낌표 주소를 사용합니다.
구성에 MAILER(smtp)도 지정되어 있을 경우 메일러 2개가 더 정의됩니다.
이 메일러는 도메인 스타일 주소를 사용하며 기본적으로 SMTP 다시 쓰기 규칙을 적용합니다.
$=Z 클래스의 이름이 uucp-uudom으로 보내집니다. uucp-uudom 및 uucp-dom은 같은 헤더 주소 형식인 도메인 스타일 주소를 사용합니다.
메일 주소에는 메일 메시지가 배달되는 받는 사람 및 시스템 이름이 포함됩니다. 이름 서비스를 사용하지 않는 소규모 메일 시스템을 관리할 경우 쉽게 메일 주소를 지정할 수 있습니다. 로그인 이름은 사용자를 고유하게 식별합니다. 우편함이 있는 시스템이 둘 이상 있거나 도메인이 하나 이상 있는 메일 시스템을 관리할 경우 주소 지정이 복잡해지고, 네트워크 밖에 있는 서버와의 UUCP 또는 다른 메일 연결이 있을 경우에는 더욱 복잡해집니다. 다음 절의 내용은 메일 주소의 부분과 복잡성을 이해하는 데 도움이 됩니다.
전자 메일 주소에는 도메인이 사용됩니다. 도메인은 네트워크 주소 이름 지정을 위한 디렉토리 구조입니다. 도메인 하나에 하나 이상의 하위 도메인을 포함할 수 있습니다. 주소의 도메인과 하위 도메인을 파일 시스템의 계층에 비교할 수 있습니다. 하위 디렉토리가 상위 디렉토리 안에 포함된다고 간주되는 것처럼 메일 주소에 포함된 각 하위 도메인도 오른쪽에 있는 상위 도메인 안에 포함된다고 간주됩니다.
|
도메인은 대소문자를 구분합니다. 오류 없이 대문자, 소문자 또는 대소문자를 함께 주소의 도메인 부분에 사용할 수 있습니다.
이름 서비스 도메인 이름과 메일 도메인 이름을 사용하여 작업할 때는 다음 사항을 기억하십시오.
기본적으로 sendmail 프로그램은 NIS 도메인 이름에서 첫번째 구성 요소를 제거하여 메일 도메인 이름을 구성합니다. 예를 들어, NIS 도메인 이름이 bldg5.example.com일 경우 메일 도메인 이름은 example.com입니다.
메일 도메인 주소는 대소문자를 구분하지 않지만 NIS 도메인 이름은 대소문자를 구분합니다. 메일 및 NIS 도메인 이름을 설정할 때 소문자를 사용하는 것이 가장 좋습니다.
DNS 도메인 이름과 메일 도메인 이름은 같아야 합니다.
자세한 내용은 sendmail과 이름 서비스의 상호 작용을 참조하십시오.
일반적으로 메일 주소 형식은 다음과 같습니다. 자세한 내용은 경로 독립적 메일 주소를 참조하십시오.
user@subdomain. ... .subdomain2.subdomain1.top-level-domain
@ 기호 왼쪽의 주소 부분은 로컬 주소입니다. 로컬 주소는 다음을 포함할 수 있습니다.
다른 메일 전송과의 경로 지정에 대한 정보(예: bob::vmsvax@gateway 또는 smallberries%mill.uucp@gateway)
별칭(예: iggy.ignatz)
@ 기호 오른쪽의 주소 부분은 로컬 주소가 위치한 도메인 레벨을 보여줍니다. 점은 각 하위 도메인을 분리합니다. 주소의 도메인 부분은 조직, 실제 영역 또는 지역일 수 있습니다. 또한 도메인 정보의 순서는 계층적이므로 하위 도메인이 로컬일수록 @ 기호와 가깝습니다.
메일 주소는 경로 독립적일 수 있습니다. 경로 독립적인 주소를 지정하려면 전자 메일 메시지를 보낸 사람이 받는 사람 이름과 최종 대상을 지정해야 합니다. 인터넷과 같은 고속 네트워크에서는 경로 독립적 주소를 사용합니다. 경로 독립적 주소는 다음과 같은 형식일 수 있습니다.
user@host.domain
UUCP 연결을 위한 경로 독립적 주소는 다음과 같은 형식일 수 있습니다.
host.domain!user
도메인 계층적 이름 지정 체계가 컴퓨터에 널리 쓰이면서 경로 독립적 주소가 일반화되고 있습니다. 실제로 가장 일반적인 경로 독립적 주소는 호스트 이름을 생략하고 도메인 이름 서비스를 사용하여 전자 메일 메시지의 최종 대상을 적절하게 식별합니다.
user@domain
처음에는 @ 기호를 검색하여 경로 독립적 주소를 읽습니다. 그런 다음 오른쪽(최상위 레벨)에서 왼쪽(@ 기호 오른쪽에 있는 가장 구체적인 주소 부분)으로 도메인 계층을 읽습니다.
우편함은 전자 메일 메시지 최종 대상인 파일입니다. 우편함 이름은 사용자 이름이거나 포스트마스터와 같은 특정 기능의 ID일 수 있습니다. 우편함은 /var/mail/username 파일에 있으며 이 파일은 사용자의 로컬 시스템이나 원격 메일 서버에 있을 수 있습니다. 두 경우 모두 메일이 배달되는 시스템에 우편함이 있습니다.
사용자 에이전트가 메일 스풀에서 메일을 가져와 로컬 우편함에 저장할 수 있도록 메일은 항상 로컬 파일 시스템으로 배달되어야 합니다. NFS 마운트된 파일 시스템을 사용자 우편함의 대상으로 사용하지 마십시오. 특히 원격 서버에서 /var/mail 파일 시스템을 마운트하는 메일 클라이언트로 메일을 전송하지 마십시오. 이 경우 사용자의 메일에 대해 클라이언트 호스트 이름이 아닌 메일 서버로 주소를 지정해야 합니다. NFS 마운트된 파일 시스템을 사용하면 메일 배달 및 처리에 문제가 발생할 수 있습니다.
/etc/mail/aliases 파일과 NIS 등의 이름 서비스는 전자 메일 주소의 별칭을 만들기 위한 방식을 제공합니다. 그러므로 사용자 우편함의 정확한 로컬 이름을 알 필요가 없습니다.
다음 표에서는 특별한 용도의 우편함에 대한 공통된 이름 지정 규약 몇 가지를 보여줍니다.
sendmail 버전 8부터, 소유자 별칭이 있을 경우 그룹 별칭으로 전송되는 메일의 Envelope 보낸 사람이 소유자 별칭에서 확장된 주소로 변경되었습니다. 이 변경으로 인해 메일 오류를 보낸 사람에게 돌려보내지 않고 별칭 소유자에게 보낼 수 있습니다. 이 변경으로 인해 메일이 배달되면 사용자는 별칭으로 전송된 메일이 별칭 소유자가 보낸 메일이라고 판단합니다. 다음 별칭 형식은 이 변경과 관련된 몇 가지 문제를 해결하는 데 도움이 됩니다.
mygroup: :include:/pathname/mygroup.list owner-mygroup: mygroup-request mygroup-request: sandys, ignatz
이 예에서는 mygroup 별칭이 그룹의 실제 메일 별칭입니다. owner-mygroup 별칭이 오류 메시지를 받습니다. mygroup-request 별칭을 관리 요청에 사용해야 합니다. 이 구조는 mygroup 별칭에게 보낸 메일에서 Envelope 보낸 사람이 mygroup-request로 변경됨을 의미합니다.
별칭은 대체 이름입니다. 전자 메일에 별칭을 사용하여 우편함 위치를 지정하거나 메일링 목록을 정의할 수 있습니다. 작업 맵은 편지 별칭 파일 관리(작업 맵) in Chapter 2, 메일 서비스 관리를 참조하십시오. 이 장에서 메일 별칭 파일을 참조할 수도 있습니다.
대규모 사이트의 경우 메일 별칭은 일반적으로 우편함 위치를 정의합니다. 메일 별칭을 제공하는 것은 방이 여러 개 있는 큰 회사에서 방 번호를 개인의 주소로 제공하는 것과 같습니다. 방 번호를 제공하지 않으면 우편물이 중앙 주소로 배달됩니다. 방 번호가 없으면 건물 안에서 우편물을 배달할 위치를 확인할 수 없으므로 잘못 배달될 가능성이 있습니다. 예를 들어, 이름이 Kevin Smith인 두 사람이 같은 건물에 있을 경우 둘 중 한 명만 우편물을 받을 수 있습니다. 문제를 해결하려면 각 Kevin Smith의 주소에 방 번호를 추가해야 합니다.
메일링 목록을 만들 때 가급적 많은 도메인과 위치 독립적 주소를 사용하십시오. 별칭 파일의 이식성과 유연성을 개선하려면 메일링 목록의 별칭 항목을 가급적 일반적이고 시스템 독립적으로 만드십시오. 예를 들어, 이름이 ignatz인 사용자가 도메인 example.com의 시스템 mars에 있으면 ignatz@mars 대신 별칭 ignatz@example을 만드십시오. 사용자 ignatz가 시스템 이름을 변경하고 example 도메인은 유지할 경우 시스템 이름의 변경 사항을 반영하도록 별칭 파일을 업데이트할 필요가 없습니다.
별칭 항목을 만들 때 한 행에 하나씩 별칭을 입력하십시오. 사용자의 시스템 이름이 포함된 항목은 하나만 있어야 합니다. 예를 들어, 사용자 ignatz에 대해 다음 항목을 만들 수 있습니다.
ignatz: iggy.ignatz iggyi: iggy.ignatz iggy.ignatz: ignatz@mars
로컬 이름이나 도메인에 대해 별칭을 만들 수 있습니다. 예를 들어, 시스템 mars와 도메인 planets에 우편함이 있는 사용자 fred의 별칭 항목은 NIS 별칭 맵에 다음 항목을 포함할 수 있습니다.
fred: fred@planets
도메인 외부의 사용자를 포함하는 메일 목록을 만들 때는 사용자 이름과 도메인 이름을 사용하여 별칭을 만드십시오. 예를 들어, 이름이 smallberries인 사용자가 도메인 example.com의 시스템 privet에 있으면 별칭을 smallberries@example.com으로 만드십시오. 이제 메일이 사용자의 도메인을 벗어나면 보낸 사람의 전자 메일 주소가 정규화된 도메인 이름으로 자동 변환됩니다.
다음 목록에서는 메일 별칭을 만들고 관리하는 방법에 대해 설명합니다.
NIS aliases 맵이나 로컬 /etc/mail/aliases 파일에서 전역적으로 사용할 메일 별칭을 만들 수 있습니다. 같은 별칭 파일을 사용하는 메일링 목록을 만들어 관리할 수도 있습니다.
메일 서비스 구성에 따라 NIS 이름 서비스를 사용해 전역 aliases 데이터베이스를 유지 관리하여 별칭을 관리할 수 있습니다. 또는 모든 로컬 /etc/mail/aliases 파일을 업데이트하여 별칭을 동기화할 수 있습니다.
사용자도 별칭을 만들고 사용할 수 있습니다. 해당 사용자만 사용할 수 있는 ~/.mailrc 파일이나 아무나 사용할 수 있는 로컬 /etc/mail/aliases 파일에서 별칭을 만들 수 있습니다. 사용자는 보통 NIS 별칭 파일을 만들거나 관리할 수 없습니다.