Microsoft MVP성태의 닷넷 이야기
SMTP 예외처리 관련 질문 [링크 복사], [링크+제목 복사]
조회: 1558
글쓴 사람
황윤하 (yhhwnag@angtec.com)
홈페이지
첨부 파일
 
안녕하세요 질문 게시판이 있는지 모르고 댓글로 질문을 남겼습니다..
죄송합니다.

SMTP 메일 전송 프로그램을 개발이며, 현재 테스트 중입니다.
저희 회사 내계정 또는 네이버를 이용하여 메일을 전송하면 잘 됩니다.
근데 특정 회사내에서 프로그램을 적용하고 테스트를 하면,

RemoteCertificateNameMismatch, RemoteCertificateChainErrors

이와같은 예외처리가 납니다.
회사에 연락해서 물어본 결과, 인증프로세스는 무조건 포함되어야 하며
인증 시 ID/PWD/메일 계정이 포함되어있어야 하고, 자체 인증서는 사용하지 않는다. 라고 하였습니다.

그래서 인증프로세스를 사용하도록 하였고, Credentials(자격증명)시 ID/PWD를 이용하여 자격증명을 하도록 하였습니다.
자격증명 전에 UseDefaultCredentials을 true로 설정해놓았는데 자격증명로직을 지나가면 UseDefaultCredentials이 false로 바뀝니다.

SMTP관련하여 부족한 부분이 많기 때문에
저러한 예외처리가 나는 이유와 해결하는 방법에 대해서 잘 모르겠습니다... 몇일째 해결못하고 분석만 하는중입니다..

참고로. 예외처리가 나는 회사는 Exchange를 사용, 하며 회사내 자체 메일프로그램을 사용 중입니다.


제 생각으로는
아웃룩에서 새메일 계정만들기를 하고 인증을 하는 부분에서 에러가 난다고 생각합니다.. 그 이유는
1. 인증서가 일치 하지 않아서
- 근데 아웃룩은 메일전송이 됩니다......
- 만약 이 문제가 맞다면 인증서 다운로드 하는 방법이나 무슨 인증서가 존재하는지 어떻게 확인을 하는지 잘 모르겠습니다..
2. 도메인이 연결이 되어있지 않아서
- 거기서 발급해준 아이디가 xxx\xxxx 이와 같이 되어잇는데 구글링 해본 결과 xxx\ <= 이와 같은 형태는 특정 도메인에 연결할 때 쓰인다고 했습니다..
3. 현재 ssl 인증이 트루가 되어있는데 ssl 포트 465가 아닌 기본 포트 25를 사용하는데 ssl 인증을 트루로 해놔서
... 이 정도 입니다.


아시는 부분이 있다면 알려주세요..제발..






[최초 등록일: ]
[최종 수정일: 7/13/2018 ]


비밀번호

댓글 쓴 사람
 



2018-07-13 05시22분
Exchange 서버라면 아마 Active Directory와 연동하는 CA 서버를 사용할 가능성이 큽니다. 그런 경우라면 자체 인증서와 별반 다를 바 없으므로 RemoteCertificateChainErrors 오류의 원인이 됩니다. 그런 경우 그 AD CA의 루트 인증서를 SMTP SSL/TLS 프로그램이 실행하는 로컬 PC에 신뢰할 수 있는 인증서로 등록해야 합니다. 해당 이름은 콜백 메서드의 두 번째 인자로 전달되는 X509Certificate 인스턴스를 살펴보면 알 수 있을 것입니다.

RemoteCertificateNameMismatch 또한, 콜백 메서드 실행 시의 X509Certificate 인스턴스를 살펴보면 나올 것입니다.
정성태

1  2  3  4  5  [6]  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5154SoulToMind5/4/2019617NamedPipe 질문드립니다. [2]
5153개태5/4/2019690WCF RESTful Service에서 enum을 parameter로 쓰는방법 [2]
5152세퉁5/3/20191004인터넷 시간을 불러와 pc에 적용 시키고 싶습니다. [3]파일 다운로드1
5151이대희5/3/2019854C# 7.3으로 개정판 출간 계획이 있으신가요? [1]
5150김이현5/2/2019789C# 딕셔너리 생성에 대해 질문드립니다. [1]
5149민성5/1/2019701ftp 이미지 업로드중 [1]
5148wpf질문4/30/2019700특정 사이트를 wpf에서 popup을 항상 허용하게 할려면 어떻게 해야할까요? [5]
5147민성4/30/2019726wpf에서 작업관리자를 띠울려면 어떻게 해야 하나요? [1]
5146불파겐4/25/2019741하나의 필드를 여러 스레드에서 읽어갈 때 스레드 동기화를 하지 않으면 문제가 생길까요? [2]
5145e구름4/17/20191308Properties.Setting.Default값에 대해 질문드립니다. [2]
5144성태님 사랑하는사람4/17/2019809질문하시기 전에 10000 페이지 오류 납니다. [1]
5143헌이4/16/2019856윈도우 작업표시줄에 프로그램 띄우기 [2]파일 다운로드1
5142cab2da4/9/20192299C#으로 만든 DLL 배포하기 [10]
5141하늘사랑4/8/20191045Axinterop 래퍼에 관해서 질문드립니다. [7]
5140게스트4/1/2019821안녕하세요. 초보 개발자입니다. SD리더기에서 SD카드를 꽂으면 발생하는 이벤트 문의 [2]
5139김이현3/28/20191502C#에서 CRON 같은 스케줄러를 사용하려면 어떻게 해야 하나요? [3]
5138김지원3/22/2019892유니티 쉐이더에서 오로지 포워드 애드 패스로만 만들 수 있을까요? [1]
5137세퉁3/22/20191001wpf 쓰레드에 대해 질문 있습니다. [4]
5136KGY3/13/2019886안녕하세요 닷넷코어 콘솔 프로그램 관련 질문입니다. [1]
5135러쎌3/13/2019877ASP.NET 공부 관련해서 문의를 드립니다. [1]
5134이정호3/12/2019825SampleProfiler 예제를 이용한 Class 객체의 접근 문의 [1]파일 다운로드1
5133ㅇㅇ3/12/2019883멀티코어사용 방법에 궁금한것이 있습니다. [3]
5132존기미3/3/2019873Physical Disk Access문의 [1]
5131강용규2/25/20191074c# 개발자입니다. 타이머 질문드립니다. [1]
5130노인코래방2/25/20192526C#에서 가장 좋은 성능을 보이는 파일 읽고 쓰는 방법이 무엇인가요? [2]
5129진우2/23/20191181닷넷 32비트 기반에서 메모리 부족으로 프로그램이 죽는경우 문의 [2]
1  2  3  4  5  [6]  7  8  9  10  11  12  13  14  15  ...