cron 이메일을 내 @gmail 계정으로 만들려면 어떻게합니까


40

우분투 랩톱에서 사용자의 사서함을 사용하지 않지만 cron (또는 접미사 일 수 있음)이므로 때때로 오류 출력을 생성하고 "실제"전자 메일 계정으로 알림을 받고 싶은 두 개의 cron 작업이 있습니다. 로컬 루트 계정으로 계속 이메일을 보내려고합니다.

MAILTO 변수를 crontab에 추가 할 수 있다는 것을 알고 있습니다 .

ricardo@ricardo-laptop:~$ sudo crontab -l
MAILTO=redacted@gmail.com
# m h  dom mon dow   command
*/5 * * * * /home/ricardo/mrtg/cfg/run.sh

그러나 그것에주의를 기울이지 않는 것 같습니다.

또한 /etc/aliases파일에 이메일을 추가 하고 실행 하려고했습니다.newaliases

ricardo@ricardo-laptop:~$ cat /etc/aliases
# See man 5 aliases for format
postmaster:    root
root:          redacted@gmail.com
ricardo:       redacted@gmail.com

여전히 cron이 이메일을 보내려고 할 때마다 여전히 이메일을 보냅니다 root@my.domain.com.

ricardo@ricardo-laptop:/var/log$ tail mail.log
Aug  3 16:25:01 ricardo-laptop postfix/pickup[2002]: D985B310: uid=0 from=<root>
Aug  3 16:25:01 ricardo-laptop postfix/cleanup[4117]: D985B310: message-id=<20100803192501.D985B310@ricardo-laptop>
Aug  3 16:25:01 ricardo-laptop postfix/qmgr[2003]: D985B310: from=<root@144-68-247-190.fibertel.com.ar>, size=762, nrcpt=1 (queue active)
Aug  3 16:25:03 ricardo-laptop postfix/smtp[4120]: D985B310: to=<root@144-68-247-190.fibertel.com.ar>, orig_to=<root>, relay=smtp.gmail.com[74.125.157.109]:25, delay=1.5, delays=0.38/0.02/0.9/0.18, dsn=5.7.0, status=bounced (host smtp.gmail.com[74.125.157.109] said: 530 5.7.0 Must issue a STARTTLS command first. d1sm12275173anc.19 (in reply to MAIL FROM command))

어떤 제안? Ubuntu 10.04를 최신 버전으로 실행하고 있습니다.

답변:


20

smtp.gmail.com을 메일 서버의 스마트 호스트로 구성한 것으로 보입니다. 서버가 외부 세계로 메일을 보낼 수 있도록 스마트 호스트 구성을 제거하거나 편집해야합니다.

현재 메일 전달을위한 구성이 작동하는 것으로 보이지만 smtp.gmail.com이 메일을 거부하여 실패했습니다.

업데이트 : 나중에 참조 할 수 있도록 문제는 postfix 목록에 /etc/mailname없는 이름을 나열했습니다 mydestinations. 이로 인해 모든 메일이 외부 메일로 간주되어 메일을 /etc/aliases처리하지 않았습니다 .


지금은 TLS 오류를 무시하고 mail.log의 마지막 줄에 postfix / smtp [4120] : D985B310 : to = <root@144-68-247-190.fibertel.com이라는 사실이 집중되어 있습니다. .ar> 그래서 cron은 여전히 ​​내 gmail 계정 대신 내 루트 계정으로 이메일을 보내려고합니다. 질문에 gmail의 응답을 남기는 것이 혼란 스럽지만 너무 많이 바꾸고 싶지 않아서 귀중하지 않습니다. 정보. 이제 TLS 오류를 해결하려고 시도하지만 잘못된 대상 문제와 관련이 없어야합니다.
Ricardo Reyes

postfix에 main.cf를 포함시킬 수 있습니까? 나는 당신의 후위 인스턴스가 메일, 로컬 메일 별칭 파일에 의해 영향을받을로 시작하는 지역이 아니라고 생각하는 것으로 의심
Ressu

여기 내 postfix.cfg가 있습니다 : cl1p.net/postfix smarthost 옵션을 제거하려고 시도했지만 내 IP가 올바르게 해결되지 않기 때문에 Gmail의 오류 메시지 만 변경되었습니다. 이 서버는 서버가 아니며 개인 노트북 일 뿐이며 크론 알림, 내 자신의 Gmail 계정으로 전달해야하는 유일한 전자 메일입니다. 감사.
Ricardo Reyes

1
흠 .. / etc / mailname에 호스트 이름이 있습니까? 어떤 이유로 postfix는 ricardo-laptop 대신 144-68-247-190.fibertel.com.ar이라고 생각합니다. 또한 hostname명령은 무엇을 말합니까?
Ressu

Postfix는 Gmail 위성이 아닌 전체 메일 서버로 구성해야합니다. 그렇지 않으면 발신자가 Gmail 사용자가 아니기 때문에 인증 문제가 발생합니다.
txwikinger

1

질문에서 추출 된 솔루션

( Ressu 덕분에 )

파일에 문제가있었습니다 /etc/mailname

이 파일은 Ubuntu 설치 프로그램에서 생성했으며 잘못된 서버 이름을 포함했습니다. "ricardo-laptop"postfix와 일치하도록 변경 한 후에는 이메일이 로컬로 전송되고 별칭을 따르기 시작했습니다.


0

내가 한 것처럼 이것을 발견하는 사람들을 위해 추가 할 것이라고 생각했습니다. 루트 계정의 모든 메일을 원하는 경우 다음 명령을 실행하는 쉬운 대안이 있습니다.

sudo nano ~ / .forward

그런 다음 하나의 이메일에 넣거나 쉼표로 둘 이상을 분리 할 수 ​​있습니다. 이렇게하면 모든 루트 이메일 (루트를 사용한다고 가정)이이 파일의 이메일 주소로 전달됩니다.

이메일을 추가 한 후에는 Ctrl + X를 누른 다음 Y를 눌러 변경 사항을 저장하십시오.


이것은 루트가 아닌 사용자의 집에 파일을 넣습니까?
endolith

@endolith : 맞습니다. sudo nan ~root/.forward대신 원할 수도 있습니다 .
Flimm

1
하지만 sudo를 사용하여 사용자의 집에서 파일을 작성하고 있습니까?
endolith
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.