IMAP 서버를 검색하여 내가 특정 이메일 주소로부터 이메일을 보냈는지, 참조로 추가했는지, 받았는지 확인하고, 그렇다면 메시지 본문의 헤더와 조각을 검색하고 싶습니다.
https://tewarid.github.io/2011/05/10/access-imap-server-from-the-command-line-using-openssl.html
imap에 액세스하기 위해 openssl을 사용하는 위의 예를 보았습니다. 하지만 IMAP 검색에 적합한 도구인지 확실하지 않으신가요?
이 목표를 어떻게 달성할 수 있나요?
답변1
이것은 적합한 도구가 아닙니다.
Openssl은 IMAP 클라이언트가 아닙니다. IMAP에서 발생하는 것과 동일한 IMAP 암호화인 TLS/SSL 터널에서 일반 텍스트 통신을 캡슐화합니다. 따라서 이 기사는 기본적으로 텔넷을 사용하여 IMAP 명령을 수동으로 입력하는 방법을 설명하는 기사입니다. 단지 텔넷을 암호화된 보안 대안으로 바꾸는 것뿐입니다. 당신은 주문 타자기가 아닙니다. IMAP을 올바르게 사용하는 방법을 알고 있는 도서관에 맡겨주세요.
IMAP 클라이언트가 필요합니다. CURL은 실제로 메시지 부분을 다운로드할 수 있으므로 여기서 하려는 작업을 수행하세요. 페치메일도 마찬가지입니다. 실제로 꽤 많은 IMAP 클라이언트가 있습니다. 아마도 선택한 스크립팅 언어에도 해당될 것입니다! 모든 이메일에 대해 서버에 대한 연결을 다시 설정하고 싶지는 않으므로 쉘을 사용하지 않고 더 적합한 스크립트 언어를 사용하는 것이 좋습니다. 실제로, 처음 수십 번의 연결 요청 후에는 1분도 안 되어 내 메일 서버가 사용자를 차단할 것입니다.
그러나 당신이 하고 있는 일은 당신이 원하는 것을 달성하는 데 아무런 의미가 없습니다. 대신, 모든 메시지 헤더를 다운로드하여 일치하는 항목을 찾는 대신 서버 자체에서 사용자를 대신하여 검색을 수행하도록 서버에 요청해야 합니다. IMAP 클라이언트는 IMAP에서 제공하는 검색 프로토콜에 대한 액세스를 제공하는 경향이 있습니다. 그러니 그냥 그 길로 가세요.