탐색 링크 건너뛰기 | |
인쇄 보기 종료 | |
![]() |
Oracle Solaris 관리: 네트워크 서비스 Oracle Solaris 11 Information Library (한국어) |
sendmail 컴파일에 사용되는 플래그 및 사용되지 않는 플래그
sendmail 버전 8.13에서 TLS를 사용하는 SMTP 실행 지원
TLS를 사용하여 SMTP를 실행하기 위한 구성 파일 옵션
sendmail 버전 8.13의 추가 및 개정된 구성 파일 옵션
sendmail 버전 8.13의 추가 및 개정된 FEATURE() 선언
sendmail 버전 8.12의 TCP 래퍼에 대한 지원
sendmail 버전 8.12의 submit.cf 구성 파일
sendmail 버전 8.12의 추가 또는 제거된 명령줄 옵션
sendmail 버전 8.12의 PidFile 및 ProcessTitlePrefix 옵션을 위한 추가 인수
sendmail 버전 8.12의 추가 및 개정된 m4 구성 매크로
sendmail 버전 8.12의 FEATURE() 선언 변경 사항
sendmail 버전 8.12에서 MAILER() 선언의 변경 사항
sendmail 버전 8.12의 추가 배달 에이전트 플래그
sendmail 버전 8.12에서 배달 에이전트에 대한 등식
sendmail 버전 8.12의 LDAP에 대한 변경 사항
TCP 래퍼는 특정 네트워크 서비스를 요청하는 호스트의 주소를 액세스 제어 목록(ACL)에 대해 검사하여 액세스 제어를 구현하는 방법을 제공합니다. 요청은 이에 따라 허용 또는 거부됩니다. 이 액세스 제어 메커니즘 외에도 TCP 래퍼는 또한 네트워크 서비스용 호스트 요청을 기록하며, 이는 유용한 모니터 기능입니다. 액세스 제어 아래에 있는 네트워크 서비스의 예는 rlogind, telnetd, ftpd 등입니다.
버전 8.12부터 sendmail에 TCP 래퍼를 사용할 수 있습니다. 이 검사로 다른 보안 수단이 생략되지는 않습니다. sendmail에서 TCP 래퍼를 사용하도록 설정하면 네트워크 요청을 허용하기 전에 요청의 소스를 검증하는 검사가 추가됩니다. hosts_access(4) 매뉴얼 페이지를 참조하십시오.
주 - Solaris 9 릴리스부터 inetd(1M) 및 sshd(1M)에서 TCP 래퍼가 지원됩니다.
ACL에 대한 자세한 내용은 Oracle Solaris 관리: 보안 서비스의 액세스 제어 목록을 사용하여 UFS 파일 보호를 참조하십시오.
버전 8.12부터는 sendmail에 추가 구성 파일 /etc/mail/submit.cf가 포함됩니다. 이 파일 submit.cf는 데몬 모드가 아니라 Mail Submission Program 모드에서 sendmail을 실행하기 위해 사용됩니다. Mail Submission Program 모드는 데몬 모드와 달리 root 권한을 필요로 하지 않으므로 이 새로운 패러다임은 더욱 뛰어난 보안을 제공합니다.
다음의 submit.cf용 함수 목록을 참조하십시오.
sendmail은 submit.cf를 사용하여 MSP(Mail Submission Program) 모드에서 실행됩니다. 이 모드에서는 전자 메일 메시지를 제출하며 사용자는 물론 mailx 등의 프로그램으로 MSP 모드를 시작할 수 있습니다. sendmail(1M) 매뉴얼 페이지에서 -Ac 옵션 및 -Am 옵션에 대한 설명을 참조하십시오.
다음 운영 모드에서 submit.cf가 사용됩니다.
-bm - 기본 운영 모드
-bs - 표준 입력을 사용하여 SMTP 실행
-bt - 주소 확인에 사용되는 테스트 모드
submit.cf를 사용할 때 sendmail은 SMTP 데몬으로 실행되지 않습니다.
submit.cf를 사용할 때 sendmail은 sendmail 데몬으로 배달되지 않은 메시지를 보관하는 클라이언트 전용 메일 대기열 /var/spool/clientmqueue를 사용합니다. 클라이언트 전용 대기열의 메시지는 실제로 클라이언트 대기열 실행자 역할을 하는 클라이언트 “데몬”에서 배달합니다.
기본적으로 sendmail은 submit.cf를 사용하여 주기적으로 MSP 대기열(클라이언트 전용 대기열이라고도 함)인 /var/spool/clientmqueue를 실행합니다.
/usr/lib/sendmail -Ac -q15m
다음 사항에 유의하십시오.
Solaris 9 릴리스부터는 submit.cf가 자동으로 제공됩니다.
submit.cf는 Solaris 9 릴리스 이상의 최신 릴리스를 설치하기 전에 계획이나 예비 절차를 필요로 하지 않습니다.
구성 파일을 지정하지 않으면 sendmail이 필요할 경우 자동으로 submit.cf를 사용합니다. 기본적으로 sendmail은 submit.cf에 적합한 작업과 sendmail.cf에 적합한 작업을 파악합니다.
sendmail.cf 구성 파일은 데몬 모드용입니다. 이 파일을 사용할 때 sendmail은 root에서 시작하는 MTA(메일 전송 에이전트) 역할을 합니다.
/usr/lib/sendmail -L sm-mta -bd -q1h
sendmail.cf를 차별화하는 기타 기능은 다음 목록을 참조하십시오.
기본적으로 sendmail.cf는 기본 대기열인 /var/spool/mqueue를 실행합니다.
submit.cf가 추가되어 다음과 같이 기능이 변경되었습니다.
sendmail 버전 8.12부터는 root만 메일 대기열을 실행할 수 있습니다. 자세한 내용은 mailq(1) 매뉴얼 페이지에서 설명하는 변경 사항을 참조하십시오. 새로운 작업 정보는 대기열 디렉토리 관리(작업 맵)를 참조하십시오.
Mail Submission Program 모드는 root 권한 없이 실행됩니다. 이 권한을 사용하면 sendmail이 .forward 파일과 같은 특정 파일에 액세스하지 못할 수도 있습니다. 따라서 sendmail용 -bv 옵션은 사용자에게 잘못된 출력을 제공할 수 있습니다. 해결책은 없습니다.
sendmail 버전 8.12 이전에는 데몬 모드에서 sendmail을 실행하는 경우 인바운드 메일 배달만 방지합니다. sendmail 버전 8.12부터는 기본 구성으로 sendmail 데몬을 실행하지 않는 경우 아웃바운드 메일의 배달도 방지합니다. Mail Submission Program이라고도 알려진 클라이언트 대기열 실행자는 로컬 SMTP 포트에서 데몬에 메일을 제출할 수 있어야 합니다. 클라이언트 대기열 실행자가 로컬 호스트가 있는 SMTP 세션을 열 경우 데몬이 SMTP 포트에서 수신하지 않으면 메일이 대기열에 남아 있습니다. 기본 구성이 데몬을 실행하므로 기본 구성을 사용하면 이 문제가 발생하지 않습니다. 그러나 데몬을 사용 안함으로 설정한 경우 이 문제를 해결하는 방법은 sendmail.cf의 대체 구성을 사용하여 메일 배달을 관리하는 방법을 참조하십시오.
다음 표에서는 sendmail의 추가 또는 제거된 명령줄 옵션에 대해 설명합니다. 기타 명령줄 옵션은 sendmail(1M) 매뉴얼 페이지에서 설명합니다.
표 14-18 sendmail 버전 8.12의 추가 또는 제거된 명령줄 옵션
|
다음 표에서는 PidFile 및 ProcessTitlePrefix 옵션의 추가 매크로 처리 인수에 대해 설명합니다. 이 옵션에 대한 자세한 내용은 sendmail(1M) 매뉴얼 페이지를 참조하십시오.
표 14-19 PidFile 및 ProcessTitlePrefix 옵션을 위한 인수
|
다음 표에서는 sendmail 프로그램에 사용하기 위해 예약된 추가 매크로에 대해 설명합니다. 매크로의 값은 내부적으로 지정됩니다. 자세한 내용은 sendmail(1M) 매뉴얼 페이지를 참조하십시오.
표 14-20 sendmail의 추가 정의된 매크로
|
이 절에는 sendmail 구성 파일을 작성하는 데 사용되는 추가 매크로를 설명하는 표가 있습니다.
표 14-21 sendmail 구성 파일 작성에 사용되는 추가 매크로
|
다음 매크로를 사용하여 sendmail이 배달을 지연시키기 전에 받을 수 있는 최대 명령 수를 구성합니다. 컴파일 시 이 MAX 매크로를 설정할 수 있습니다. 또한 다음 표의 최대값은 현재 기본값을 나타냅니다.
표 14-22 추가 MAX 매크로
|
주 - 매크로의 값을 0으로 설정하여 매크로의 확인을 사용 안함으로 설정할 수 있습니다.
이 절에는 sendmail의 추가 및 개정된 m4 구성 매크로가 있습니다. 다음 구문을 사용하여 이러한 매크로를 선언합니다.
symbolic-name(`value')
새 sendmail.cf 파일을 작성하려면 13 장메일 서비스(작업)의 sendmail 구성 변경을 참조하십시오.
표 14-23 sendmail의 추가 및 개정된 m4 구성 매크로
|
FEATURE() 선언의 특정 변경 사항에 대한 자세한 내용은 다음 표를 참조하십시오.
신규 및 개정된 FEATURE 이름을 사용하려면 다음 구문을 사용하십시오.
FEATURE(`name', `argument')
새 sendmail.cf 파일을 작성하려면 13 장메일 서비스(작업)의 sendmail 구성 변경을 참조하십시오.
표 14-24 추가 및 개정된 FEATURE() 선언
|
다음 FEATURE() 선언은 더 이상 지원되지 않습니다.
표 14-25 지원되지 않는 FEATURE() 선언
|
MAILER() 선언은 배달 에이전트에 대한 지원을 지정합니다. 배달 에이전트를 선언하려면 다음 구문을 사용하십시오.
MAILER(`symbolic-name')
다음 변경 사항에 유의하십시오.
이 새 버전의 sendmail에서 MAILER(`smtp') 선언은 이제 추가 메일러인 dsmtp를 포함합니다. 이 메일러는 F=% 메일러 플래그를 사용하여 주문형 배달을 제공합니다. dsmtp 메일러 정의는 기본값이 IPC $h인 새로운 DSMTP_MAILER_ARGS를 사용합니다.
MAILER에 사용되는 규칙 세트 수가 제거되었습니다. 이제 uucp-dom과 uucp-uudom을 사용하는 경우 MAILER(`smtp') 다음에 와야 하는 MAILER(`uucp')를 제외하고 MAILER 나열 순서가 필요 없습니다.
메일러에 대한 자세한 내용은 메일러 및 sendmail을 참조하십시오. 새 sendmail.cf 파일을 작성하려면 13 장메일 서비스(작업)의 sendmail 구성 변경을 참조하십시오.
다음 표에서는 기본적으로 설정되지 않는 추가 배달 에이전트 플래그에 대해 설명합니다. 이 단일 문자 플래그는 부울입니다. 다음 예에 표시된 대로 구성 파일의 F= 문에 포함하거나 제외하여 플래그를 설정하거나 해제할 수 있습니다.
Mlocal, P=/usr/lib/mail.local, F=lsDFMAw5:/|@qSXfmnz9, S=10/30, R=20/40, Mprog, P=/bin/sh, F=lsDFMoqeu9, S=10/30, R=20/40, D=$z:/, Msmtp, P=[IPC], F=mDFMuX, S=11/31, R=21, E=\r\n, L=990, Mesmtp, P=[IPC], F=mDFMuXa, S=11/31, R=21, E=\r\n, L=990, Msmtp8, P=[IPC], F=mDFMuX8, S=11/31, R=21, E=\r\n, L=990, Mrelay, P=[IPC], F=mDFMuXa8, S=11/31, R=61, E=\r\n, L=2040,
표 14-26 추가 메일러 플래그
|
다음 표에서는 M 배달 에이전트 정의 명령에 사용할 수 있는 추가 등식에 대해 설명합니다. 다음 구문은 새 등식이나 새 인수를 구성 파일에 이미 있는 등식에 추가하는 방법을 보여줍니다.
Magent-name, equate, equate, ...
다음 예에는 새로운 W= 등식이 있습니다. 이 등식은 모든 데이터가 전송된 후 반환될 때까지 메일러가 기다릴 최대 시간을 지정합니다.
Msmtp, P=[IPC], F=mDFMuX, S=11/31, R=21, E=\r\n, L=990, W=2m
m4 구성에 대한 값의 정의를 수정할 때는 다음 예에 제공된 구문을 사용하십시오.
define(`SMTP_MAILER_MAXMSGS', `1000')
이전의 예에서는 smtp 메일러의 각 연결에서 배달되는 메시지 수를 1,000개로 제한합니다.
새 sendmail.cf 파일을 작성하려면 13 장메일 서비스(작업)의 sendmail 구성 변경을 참조하십시오.
주 - 일반적으로 미세 조정할 때만 mailer 디렉토리에서 등식 정의를 수정합니다.
표 14-27 배달 에이전트의 추가 등식
|
다음 목록에서는 추가 대기열 기능을 자세히 설명합니다.
이 릴리스는 여러 대기열 디렉토리를 지원합니다. 여러 대기열을 사용하려면 다음 예에서 표시된 대로 별표(*)로 끝나는 QueueDirectory 옵션 값을 구성 파일에 제공하십시오.
O QueueDirectory=/var/spool/mqueue/q*
옵션 값 /var/spool/mqueue/q*는 “q”로 시작되는 모든 디렉토리나 디렉토리에 대한 심볼릭 링크를 대기열 디렉토리로 사용합니다. sendmail이 실행되는 동안 대기열 디렉토리 구조를 변경하지 마십시오. Verbose 플래그(-v)가 비데몬 대기열 실행에 사용되지 않으면 대기열을 실행할 때마다 각 대기열 실행을 위한 별도의 프로세스가 생성됩니다. 대기열에 새로운 항목이 임의로 지정됩니다.
새로운 대기열 파일 명명 시스템에서는 60년 동안 고유한 파일 이름을 사용합니다. 이 시스템에서는 복잡한 파일 시스템 잠금 없이 대기열 ID를 지정할 수 있으며 대기열 사이에 대기열에 있는 항목을 쉽게 이동할 수 있습니다.
8.12부터는 root만 메일 대기열을 실행할 수 있습니다. 자세한 내용은 mailq(1) 매뉴얼 페이지에서 설명하는 변경 사항을 참조하십시오. 새로운 작업 정보는 대기열 디렉토리 관리(작업 맵)를 참조하십시오.
Envelope 분할을 수용하기 위해 이제 대기열 파일 이름 길이는 14자가 아니라 15자입니다. 이름이 14자로 제한된 파일 시스템은 더 이상 지원되지 않습니다.
작업 정보는 대기열 디렉토리 관리(작업 맵)를 참조하십시오.
다음 목록에서는 sendmail에 LDAP(Lightweight Directory Access Protocol)를 사용하는 경우의 변경 사항에 대해 설명합니다.
LDAPROUTE_EQUIVALENT() 및 LDAPROUTE_EQUIVALENT_FILE()을 사용하면 LDAP 경로 지정 조회를 위해 가장 도메인 이름으로 대체되는 해당 호스트 이름을 지정할 수 있습니다. 자세한 내용은 /etc/mail/cf/README를 참조하십시오.
ftp://ftp.sendmail.org의 sendmail 배포에 포함된 릴리스 정보에서 설명한 대로 LDAPX 맵 이름이 LDAP로 바뀌었습니다. LDAP에 다음 구문을 사용하십시오.
Kldap ldap options
이 릴리스에서는 단일 LDAP 조회에 대해 복수 값 반환을 지원합니다. 표시된 대로 -v 옵션을 사용하여 쉼표로 구분된 문자열에 반환되도록 값을 배치하십시오.
Kldap ldap -v"mail,more-mail"
LDAP 속성이 LDAP 맵 선언에 지정되지 않으면 일치 항목에 있는 모든 속성이 반환됩니다.
이 버전의 sendmail에서는 따옴표가 사용된 키의 쉼표 및 LDAP 별칭 파일의 사양에 있는 값 문자열의 단일 항목을 여러 항목으로 나눌 수 없습니다.
이 버전의 sendmail에는 LDAP 맵을 위한 새로운 옵션이 있습니다. 옵션 -Vseparator를 사용하면 조회가 관련 separator로 구분된 속성과 값을 둘 다 반환할 수 있도록 구분자를 지정할 수 있습니다.
%s 토큰을 사용하여 LDAP 필터 사양을 구문 분석할 뿐 아니라 새 토큰 %0을 사용하여 키 버퍼를 인코딩할 수 있습니다. %0 토큰은 문자 그대로의 의미를 LDAP 특수 문자에 적용합니다.
다음 예에서는 “*” 조회를 위해 이러한 토큰의 차이를 보여줍니다.
표 14-28 토큰 비교
|
다음 표에서는 추가 LDAP 맵 플래그에 대해 설명합니다.
표 14-29 추가 LDAP 맵 플래그
|
이전의 [TCP] 내장 메일러는 사용할 수 없습니다. P=[IPC] 내장 메일러를 대신 사용하십시오. 이제 프로세스간 통신([IPC]) 내장 메일러를 사용하여 이를 지원하는 시스템에서 UNIX 도메인 소켓으로 배달할 수 있습니다. 명명된 소켓에서 수신하는 LMTP 배달 에이전트와 함께 이 메일러를 사용할 수 있습니다. 메일러의 예는 다음과 같습니다.
Mexecmail, P=[IPC], F=lsDFMmnqSXzA5@/:|, E=\r\n, S=10, R=20/40, T=DNS/RFC822/X-Unix, A=FILE /system/volatile/lmtpd
이제 [IPC] 메일러의 첫번째 메일러 인수의 값이 적합한지 검사합니다. 다음 표에는 첫번째 메일러 인수의 가능한 값이 있습니다.
표 14-30 첫번째 메일러 인수의 가능한 값
|
다음 표에서는 추가 규칙 세트를 나열하고 규칙 세트의 역할에 대해 설명합니다.
표 14-31 새 규칙 세트
|
다음 목록에서는 추가 규칙 세트 기능에 대해 설명합니다.
번호가 있는 규칙 세트에 이름도 지정할 수 있지만 번호로 규칙 세트에 액세스할 수 있습니다.
H 헤더 구성 파일 명령을 사용하면 헤더 검사를 위해 기본 규칙 세트를 지정할 수 있습니다. 개별 헤더에 해당 규칙 세트가 지정되지 않은 경우에만 이 규칙 세트가 호출됩니다.
구성 파일 버전이 9 이상이면 규칙 세트 안의 주석(괄호 안의 텍스트)이 제거되지 않습니다. 예를 들어, 다음 규칙은 입력 token (1)과 일치하지만 입력 token과는 일치하지 않습니다.
R$+ (1) $@ 1
sendmail은 check_relay 규칙 세트의 TCP 래퍼 때문에 명령을 거부할 경우에도 SMTP RSET 명령을 수락합니다.
OperatorChars 옵션을 여러 번 설정하면 경고가 나타납니다. 또한 규칙 세트를 정의한 후에는 OperatorChars를 설정하지 마십시오.
잘못된 규칙 세트를 선언하면 규칙 세트 행과 이름이 무시됩니다. S0에는 규칙 세트 행이 추가되지 않습니다.
읽기 전용 /usr 파일 시스템을 지원하기 위해 /usr/lib/mail 디렉토리의 내용이 /etc/mail/cf 디렉토리로 이동했습니다. 자세한 내용은 /etc/mail/cf 디렉토리의 내용을 참조하십시오. 그러나 /usr/lib/mail/sh/check-hostname 및 /usr/lib/mail/sh/check-permissions 셸 스크립트는 이제 /usr/sbin 디렉토리에 있습니다. 메일 서비스에 사용되는 기타 파일을 참조하십시오. 역방향 호환성을 위하여 심볼 링크가 각 파일의 새 위치를 가리킵니다.
/usr/lib/mail/cf/main-v7sun.mc의 새로운 이름은 /etc/mail/cf/cf/main.mc입니다.
/usr/lib/mail/cf/subsidiary-v7sun.mc의 새로운 이름은 /etc/mail/cf/cf/subsidiary.mc입니다.
helpfile은 이제 /etc/mail/helpfile에 있습니다. 이전 이름(/etc/mail/sendmail.hf)에는 새 이름으로 연결되는 심볼릭 링크가 있습니다.
trusted-users 파일은 이제 /etc/mail/trusted-users에 있습니다. 업그레이드하는 동안 이전 이름(/etc/mail/sendmail.ct)만 발견되고 새 이름은 발견되지 않으면 이전 이름에서 새 이름으로 하드 링크가 생성됩니다. 그렇지 않으면 변경되지 않습니다. 기본 컨텐츠는 root입니다.
local-host-names 파일은 이제 /etc/mail/local-host-names에 있습니다. 업그레이드하는 동안 이전 이름(/etc/mail/sendmail.cw)만 발견되고 새 이름은 발견되지 않으면 이전 이름에서 새 이름으로 하드 링크가 생성됩니다. 그렇지 않으면 변경되지 않습니다. 기본 컨텐츠 길이는 0입니다.
sendmail 버전 8.12부터는 구성에 사용되는 IPv6 주소에 IPv6: 태그가 접두어로 지정되어 주소를 적절하게 식별해야 합니다. IPv6 주소를 식별하지 않으면 접두어 태그가 사용되지 않습니다.