도메인 앞에 사용자 이름이 붙은 로컬 사용자에게 메일을 보내는 방법은 무엇입니까?
SUSE Linux Enterprise Server 11.3을 실행하고 Heirloom mailx 버전 12.5 7/5/10을 사용하여 Active Directory 도메인에 가입
상상하다:
내 서버에는 로컬 사용자 계정과 도메인 사용자 계정이라는 2명의 사용자가 있습니다.
- 제프
- DOM1\존
DOM1\john으로 로그인하면 터미널에서 이 명령을 실행할 수 echo "hello" | mail -s "test" jeff
있으며 jeff는 메시지를 성공적으로 수신합니다. 당연히 헤더는 FROM
필드에서 이스케이프된 백슬래시를 읽습니다.From: "DOM1\\john"@server.example.com
이상한 점은 Jeff가 메시지에 답장만 하면 Jeff가 받은 Undelivered Mail Returned to Sender
편지함을 받게 된다는 것입니다. 백슬래시가 제거된 것을 볼 수 있도록 헤더가 표시됩니다. 백슬래시를 이스케이프 처리하기 위해 jeff로 다음 명령을 시도했지만 소용이 없었고 백슬래시는 배달되지 않은 메시지의 헤더에서 항상 생략됩니다.To: [email protected]
TO
echo "hello" | mail -s "test" DOM1\john
echo "hello" | mail -s "test" 'DOM1\john'
echo "hello" | mail -s "test" "DOM1\john"
echo "hello" | mail -s "test" DOM1\[email protected]
echo "hello" | mail -s "test" 'DOM1\john'@server.example.com
echo "hello" | mail -s "test" "DOM1\john"@server.example.com
echo "hello" | mail -s "test" DOM1\\john
echo "hello" | mail -s "test" 'DOM1\\john'
echo "hello" | mail -s "test" "DOM1\\john"
echo "hello" | mail -s "test" DOM1\\[email protected]
echo "hello" | mail -s "test" 'DOM1\\john'@server.example.com
echo "hello" | mail -s "test" "DOM1\\john"@server.example.com
더 이상한 점은 백슬래시를 3개 시도하면 echo "hello" | mail -s "test" DOM1\\\john
메시지가 전달되지 않고 전달되지 않은 메시지가 표시되지 않고 조용히 실패한다는 것입니다.
도메인 접두어 없이 메일만 보내려고 하면 echo "hello" | mail -s "test" john
사용자 john이 존재하지 않는다는 예상 배달 불가 메시지가 나타납니다.
또한 명확하게 말하면 이러한 도메인 사용자는 이메일 계정을 가지고 있습니다.[이메일 보호됨], 그러나 우리는 해당 메일 서버 계정으로 보내고 싶지 않습니다. 우리는 단지 SLES에서 로컬 메일 계정을 사용하여 해당 서버의 다른 로컬, 비도메인 계정과 통신할 수 있기를 원합니다.
답변1
당신은 너무 쉽게 포기합니다. 제목 봤잖아
From: "DOM1\\john"@server.example.com
이것이 필요한 것이지만 큰따옴표와 이중 백슬래시를 유지해야 합니다.
echo "hello" | mail -s "test" '"DOM1\\john"@server.example.com'
~에서위키피디아이메일 주소의 로컬 부분:
공백과 문자는
"(),:;<>@[\]
제한적으로 허용됩니다(따옴표로 묶인 문자열 내에서만 사용할 수 있습니다. 또한 백슬래시... 앞에는 백슬래시가 와야 합니다).가장 바깥쪽 따옴표가 "abcdefghixyz"@example.com과 같이 로컬 부분의 가장 바깥쪽 문자인 경우 따옴표로 묶인 문자열을 가질 수 있습니다. 그러나 인용된 문자열과 문자는 일반적으로 사용되지 않습니다. RFC 5321은 또한 "메일을 수신하려는 호스트는 로컬 부분에 따옴표 붙은 문자열 형식이 필요한(또는 사용하는) 사서함을 정의하지 않아야 합니다"라고 경고합니다.