우분투 서버에서 이메일을 보내는 방법은 무엇입니까?


13

내가해야 할 일은 우분투에서 이메일을 보내는 것입니다. 내가 찾은 가장 쉬운 방법은 Thunderbird를 사용하고 실제 전자 메일 주소 (abc@hotmail.com)를 Thunderbird 계정에 연결하는 것입니다. 이 방법으로 전자 메일을 성공적으로 받고 전체 기록을 다운로드 할 수 있습니다. 그러나 이메일을 보낼 수 없습니다.

내가하고 싶은 일은 우분투에서 직접 이메일을 보내고 user1 @ localhost 또는 이와 유사한 것으로 나타납니다.

가능합니까? 이것에 대한 다른 주제를 읽은 후에는 릴레이 주소를 사용하는 것이 유일한 방법 인 것 같습니다.

나는 또한 거기에 쓰여진 것과 같은 방식으로 Postfix를 설치했다 : 메일 서버를 설정하는 방법? 설치 유형을 선택하라는 메시지가 표시되면 인터넷 사이트를 선택했습니다.

내가 가진 옵션 :

  • 구성이 없습니다.
  • 인터넷 사이트;
  • 스마트 호스트와 인터넷;
  • 스텔리 트 시스템;
  • 지역에서만;

시스템 메일 이름을 물으면 내가 소유 한 웹 사이트 some_website.com을 입력했습니다. 여전히 postfix bia로 이메일을 보내는 방법을 찾지 못했지만 릴레이 서버가 다시 사용될 것이라고 가정합니다.

가상 머신으로 Ubuntu 11.10을 실행하고 있습니다.

이 질문이 이해되기를 바랍니다.

답변:


13

그것이 당신의 일인 것처럼 "해야 할 것"이라고 말했기 때문에 완벽하게 이해되지 않습니다. 가상 머신 내에 실제 메일 서버를 설정하고 있습니까? 메일 시스템을 갖추려면 가상 서버가 필요하지만 가상 서버는 풀 타임 "실제"SMTP 서버가 아니라는 단서가 있습니다. (그렇지 않으면 이미 알고있을 것입니다.

이를 염두에두고 "스마트 호스트가있는 인터넷"옵션이 필요합니다. 본질적으로 가장 큰 이유는 전 세계에 잘 구성된 SMTP 서버가 모두 스팸 방지 조치를 사용하기 때문입니다. 이러한 조치 중에는 알려진 동적 주소 풀 (스패머가 사용하기 좋아함)에서 발생하는 모든 SMTP 연결이 거부됩니다. 따라서 보내는 메일에 다른 SMTP 서버를 사용해야합니다.

Postfix를 고수하고 싶다면 간단합니다. Postfix를 스마트 호스트로 설정하는 것과 관련된 Ubuntu 기사를 검색하십시오. 그러나 한 시스템에서 다른 시스템에 대해 선호도가 없으면 다음과 같이 설계된 패키지가 ssmtp있습니다. 따라서 스핀을주고 싶다면 ssmtp를 설치하십시오.

( 주의 : 아래 작업으로 postfix 또는 sendmail이 제거됩니다. )

sudo apt-get install ssmtp

그런 다음 ssmtp 구성 파일을 편집하십시오.

sudo -e /etc/ssmtp/ssmtp.conf

사용 가능한 SMTP 서버에 대한 세부 정보를 모르므로 다음과 같은 Gmail 예제를 제공합니다.

Root=your_email@gmail.com
Mailhub=smtp.gmail.com:465
RewriteDomain=gmail.com
AuthUser=your_gmail_username # me@gmail.com
AuthPass=your_gmail_password
FromLineOverride=Yes
UseTLS=Yes

이제 시스템이 원하는 방식으로 메일을 보냅니다. 발신 SMTP 서버의 GUI 응용 프로그램에서 localhost를 메일 서버로 사용할 수 있습니다. 그러나 CLI는 어떻습니까? mail소프트웨어를 사용하십시오 :

sudo apt-get install heirloom-mailx

이제 명령 줄에서 다음과 같은 메일을 사용할 수도 있습니다.

mail < filename.ascii someone@somewhere.com -s "My File"

또는 mail입력 한 메시지를 작성하는 데 사용 하는 경우 ( mail someone@somewhere.com) 빈 줄에 마침표를 사용하여 메일 메시지를 마무리하십시오. 더 나은 CLI 메일 클라이언트는 mutt또는 pine입니다.

이것이 필요한 각도입니까? 그렇다면 성공 했습니까?


1
이메일을 보내려고하면 Mutt에 "Sendmail : Cannot open : 25"라고 표시됩니다. ssmtp는 "ssmtp : 열 수 없습니다 : 25"라고 말합니다. 또한 Thunderbird를 통해 전자 메일을 보낼 수 있다고 말했지만 틀린 것 같습니다. 미안합니다. Thunderbird를 통해 이메일을 보내려고 할 때 시간이 초과되고 CLI 메일 클라이언트를 사용할 때 포트 25에 대한 메시지가 표시됩니다.
afaf12

@ afaf12 방화벽이 차단되고 있는지 확인하십시오. 연결 시간 초과 오류는 주로 방화벽 문제로 인해 발생합니다.
Mughil

1
원격 메일 서버가 구성 또는 방화벽을 통해 특정 주소 범위에 대한 액세스를 제한합니까?

이 원격 메일 서버에서 제출 포트를 사용해야합니까 : 465?

sudo /etc/init.d/ssmtp restart컴퓨터에서 작업 할 수 없습니다 .
Nam G VU

1

Thunderbird를 사용하는 경우 SMTP 용 원격 서버를 구성 할 수 있습니다. 자신의 메일 서버가 없으면 일반적으로 ISP의 릴레이 서버 또는 메일 공급자 SMTP 서버가됩니다. Gmail을 SMTP 서버로 성공적으로 사용했지만 인증이 필요합니다. (다른 호스트도있을 수 있습니다.)

명령을 사용하여 서버에 대한 액세스를 테스트하십시오 telnet mail.example.com 25. 작동하면 서버에서 배너 메시지를받습니다.

썬더 버드가 서버와 함께 작동하면 Exim 또는 Postfix를 동일한 서버의 위성 서버로 구성 할 수 있습니다. 다른 응용 프로그램에서 시스템으로 전자 메일을 보낼 필요가없는 경우이 단계를 건너 뛸 수 있습니다. 발신 서버의 소스 주소가 전자 메일을 수락 할 수 있으니주의하십시오.

편집 : iptables가 활성화되어 있지 않고 나가는 트래픽을 차단하지 않았는지 확인하십시오. 그렇다면 원하는 포트에서 나가는 트래픽을 활성화하십시오. 같은 명령을 사용하여 tcptraceroute mail.example.com 25차단 된 위치를 확인할 수 있습니다 . tcptraceroute사용하기 전에 설치해야합니다.


Telnet : 원격 호스트에 연결할 수 없습니다 : 연결 시간이 초과되었습니다. 원격 서버가 포트 25에서 메일을 수락 할 수 있다고 확신합니다. 다른 컴퓨터 (Windows 7)에서이 원격 서버로 전자 메일을 성공적으로 보냈습니다.
afaf12

0

나는 이것을 빈 상자에서 테스트하고 완벽하게 작동했습니다. 명령을 실행하여 다음 사항을 설치

apt-get 설치 PHP-pear

배 설치 메일

배 설치 Net_SMTP

배 설치 Auth_SASL

배 설치 mail_mime

그런 다음 다음 명령을 실행하여 postfix를 설치하십시오.

apt-get 설치 postfix

설치 중 선택-

localhost에서 시도하기 때문에 서버 대신 인터넷 사이트 및 localhost

이 후 다음 명령을 실행하십시오.

sudo vim /etc/ssmtp/ssmtp.conf

파일을 변경하기 위해

이것을 ssmtp.conf 파일로 변경하십시오

FromLineOverride = YES

AuthUser=youremail@gmail.com

AuthPass = 귀하의 패스

가장 중요하지 않은 앱에서 전자 메일에 액세스 할 수 있도록하는 것이 가장 중요합니다.

https://www.google.com/settings/security/lesssecureapps

그런 다음 PHP 메일 기능을 사용하거나 터미널에서 다음 명령을 입력하여 터미널 자체에서 메일을 보낼 수 있습니다

$ ssmtp youremail@gmail.com

: youremail@gmail.com에서

TO : sendto@email.com

제목 : 제목

안녕하세요, 제 첫 ssmtp 이메일입니다!.

Ctrl + D를 누르면 ssmtp가 이메일을 보냅니다.

컴퓨터에서 SMTP가 작동 중인지 여부를 확인할 수도 있습니다.

핑 smtp.gmail.com

이 명령의 출력은

sc-in-f108.1e100.net (74.125.68.108)에서 64 바이트 : icmp_seq = 1 ttl = 63 time = 68.4ms

telnet smtp.gmail.com 587

-출력은 다음과 같아야합니다

74.125.68.108 시도 중 ...

gmail-smtp-msa.l.google.com에 연결되었습니다.

220 smtp.gmail.com ESMTP l14sm12513264pfb.73-gsmtp

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.