저는 STARTTLS를 지원하는 Courier IMAP을 실행하고 있습니다. 현재 IMAP_TLS_REQUIRED
0(false)으로 설정되어 있습니다. 이는 클라이언트가 안전하지 않은 채널을 통해 일반 텍스트를 사용하여 로그인할 수 있음을 의미합니다. 1(true)로 설정하면 SquirrelMail이 중단되므로(STARTTLS를 사용할 수 없음) 옵션이 아닙니다. 그러나 특정 IP 주소만 합법적으로 암호화되지 않은 전송을 사용할 수 있다는 것을 알고 있습니다.
가장 간단한 경우에는 이론적으로 암호화 없이 127.0.0.1의 연결을 허용하는 동시에 다른 모든 연결이 인증되기 전에 STARTTLS를 요구하는 것이 가능해야 합니다. 그러나 나는 이것을 할 수 없었다. 또한 좀 더 복잡한 것을 원한다면 어떻게 될까요? 203.0.113.147의 웹 서버가 203.0.113.148의 IMAP 서버와 통신하고 그 사이에 보안 LAN이 있을 수도 있습니다. (LAN이 실제로 안전하다는 것을 증명하는 문제는 지금은 무시하십시오.) IMAP_TLS_REQUIRED
연결마다 설정을 다르게 할 수 있는 방법이 있습니까?
답변1
IMAP_TLS_REQUIRED
나는 이것을 true로 설정하고 지원되지 않는 클라이언트를 사용할 수 있는 방법이 없다고 생각합니다 STARTTLS
.
그러나 네트워크를 완벽하게 제어할 수 있는 경우 다른 가능성도 있습니다. SquirrelMail 연결의 경우 각 IP 주소에 대해 방화벽 규칙을 사용하여 최소한 해당 사람들만 TLS 없이 서비스에 연결할 수 있도록 할 수 있습니다. 네트워크에 중간자 공격 가능성이 여전히 존재한다면 이는 실제로 더 이상 안전하지 않습니다.
그러나 이것이 다른 사용자(예: Thunderbird 사용자)에게 암호화를 사용하도록 강요하지는 않습니다. 그래서 그다지 안전하지 않습니다.
또 다른 접근 방식은 두 개의 서로 다른 포트에서 두 개의 택배 인스턴스를 실행하는 것입니다. 비보안 포트에 대해 다른 포트를 선택할 수 있습니다(항상 열려 있는 모든 포트를 확인할 수 있는 해커로부터 실제로 숨기지 않습니다). 이런 식으로 암호화 가능 버전은 플래그 를 사용할 수 IMAP_TLS_REQUIRED
있으며 적어도 해당 사용자는 암호화를 사용하지 않는 일이 발생하지 않습니다.
즉, TLS v1.2가 작동하지 않는 것 같습니다(적어도 Ubuntu 18.04에서는). 따라서 택배를 다른 것으로 변경해야 할 수도 있습니다...