2012-07-07 3 views
3

개발 팀과 논의하여 응용 프로그램 서버에 로컬 MTA를 설치하거나 내부 네트워크에있는 MTA 서버를 사용하여 전자 메일을 보내야합니다. 두 가지 솔루션에 장단점이 있습니다.신뢰할 수있는 원격 MTA를 사용할 수있는 경우에도 로컬 MTA

장점 : 전자 메일을 보내는 프로그램이 로컬 MTA에 배달 할 수 있으며 배달, 재시도 또는 발생할 수있는 오류는 잊어 버릴 수 있습니다.

단점 : 전자 메일을 보내는 사용자에게 전자 메일을 보내는 데 문제가 있음을 늦게 알릴 수 있습니다. 프로그램은 원격 서버를 사용할 수없는 경우 즉시 감지 할 수 있습니다. 단점 : 보안. 서버의 보안을 위해 로컬 MTA를 적절히 구성해야합니다. 단점 : 프로세스의 복잡성이 추가되는 계층입니다.

내 견해로는 간단하게 유지해야합니다. 우리가 통제하지 않고 MTA 서버의 상태를 알 수없는 MTA 서버와 통신하는 프로그램에 대해 말하는 것이 아닙니다. 내 견해로는 여기에 카운터 파트가 확실하지 않은 경우 현지 MTA가 필요합니다. 프로그램에서이를 "알려진"MTA 시스템으로 전달합니다. 그래서 나는 추가 레이어가 필요 없다고 생각합니다. 또한 각 시스템에서 로컬 MTA를 사용하여 전자 메일을 보내려고하면 추가 문제/오류 및 관리 작업 (유지 관리/패치)이 발생할 수 있습니다. 어떤 사람들은 Unix 시스템에서 항상 로컬 MTA (sendmail)를 실행하고 있지만 우리 조직에서는 잠재적 인 위험을 초래할 수있는 추가 서비스가 실행되지 않도록 시스템을 최소한으로 줄였습니다.

그러나 알려진/제어 된/모니터링되는 MTA 시스템과 대화한다는 것을 염두에두고 인프라를 설계하는 방법을 알고 싶습니다. 아니면 단지 관점의 문제일까요?

많은 의견을 보내 주셔서 감사합니다.

이브

답변

0

제안 로컬 MTA는 것 같은 원격 MTA ("... ... 네트워크 내부에있는 MTA 서버")은 동일한 투여 미만인 경우 후자 원격 MTA에만 전달 (일종의 중계 'smart host'역할)하면 로컬 MTA가 필요하지 않습니다.

메일을 보내는 로컬 응용 프로그램/사용자가 추가 원격 MTA에 연결하려고 시도 할 때 위험 할 수있는 위험이있는 경우 유일한 질문입니다.

+0

그건 나도 그래. 그러나 네트워크 문제가 발생하면 사용자가 응용 프로그램에 연결할 수없는 것과 같은 다른 문제가 발생합니다. – ycae

+0

답을 수락 해 주셔서 감사합니다. 아무리해도 질문에 대한 더 많은 댓글/답변을 받으려면 더/다른 대답에 관심이 없다는 인상을 피하기 위해 내 대답을 수락하지 않는 것이 좋습니다. 여전히 내 대답을 존중하기 위해 당신은 여전히 ​​그것을 upvote 무료입니다 ... ;-) – alk

+0

의미가 있습니다. 팁 고마워! :) – ycae

1

로컬 서버는 원격 서버가 동일한 관리하에 있더라도 마찬가지입니다. 어떤 시점에서 원격 MTA를 패치하고 재부팅해야합니다. 원격 MTA로 직접 이동하면 응용 프로그램이 원격 MTA가 다시 부팅 될 때 오류가 발생하도록 하드 종속성이 생깁니다. 이제 응용 프로그램에서 재시도 논리를 구현하고 여러 원격 MTA와 통신해야합니다. 기본적으로 라이트 MTA가됩니다. 로컬 MTA는 여전히 원격 MTA로 릴레이해야하고 전자 메일을 직접 배달하지 않아야합니다. 이렇게하면 전자 메일 배달을 쉽게 관리하고 보호 할 수 있습니다.