SSL은 네트워크를 통해 이동할 때 TCP 연결에서 데이터를 암호화하기위한 프로토콜입니다. 원래 웹 브라우저와 서버 간의 트래픽을 보호하기 위해 개발되었지만 일반적으로 TCP 프로토콜을 통해 전송되는 모든 종류의 데이터 스트림을 암호화하는 데 사용할 수 있습니다.

SSL 프로토콜을 사용하면 클라이언트와 서버가 서로를 인증 할 수 있으므로 클라이언트가 생각하는 호스트에 실제로 연결되어 있는지 확인할 수 있습니다. 이는 클라이언트가 인식하고 (확인할 수 있도록) 인증 기관이 발행하고 특정 호스트 이름과 연관된 인증을 사용하여 수행됩니다. 인증서가 없으면 공격자는 SSL 연결을 자신의 서버로 리디렉션하고 실제 서버와 통신하고 있다고 생각하는 클라이언트로부터 중요한 정보를 캡처 할 수 있습니다.

암호화되지 않은 인터넷을 통해 이동하는 모든 데이터는 통과하는 네트워크 중 하나에 액세스하여 공격자가 캡처하고 읽을 수 있습니다. LAN에서 클라이언트와 서버 시스템 사이를 이동하는 데이터조차도 쉽게들을 수 있습니다. 텔넷, FTP 또는 POP3 서버에 연결하면 암호가 네트워크를 통해 전송되므로 공격자가 암호를 캡처 할 수 있습니다.

SSL은 이러한 상황에서 데이터를 보호하는 데 사용될 수 있지만 클라이언트와 서버가 모두 지원하는 경우에만 가능합니다. 대부분의 웹 브라우저 및 메일 클라이언트는 SSL 암호화 HTTP, POP3 및 IMAP 연결을 만들 수 있지만 모든 웹 및 POP3 서버가이를 허용하지는 않습니다. 대부분의 Unix 시스템과 함께 제공되는 표준 서버는 SSL을 전혀 지원하지 않기 때문에 POP3는 특히 보호하기가 어렵습니다. 다행히도 해결책이 있습니다-STunnel.

STunnel은 암호화되지 않은 연결을 SSL 암호화 된 연결로 변환하는 간단한 프로그램입니다. 일반적으로 inetd 또는 xinetd와 같은 수퍼 서버에서 실행되도록 설정 한 다음 SSL을 지원하지 않는 POP3 서버와 같은 다른 프로그램을 실행합니다. 이 설계는 텔넷, NNTP 및 IMAP 서버와 같이 일반적으로 inetd에서 실행되는 모든 서버를 보호 할 수 있습니다.

SSL 모드에서 사용하는 클라이언트가 없기 때문에 모든 서버를 암호화로 유용하게 보호 할 수있는 것은 아닙니다. 예를 들어, 일반적인 SSH 패키지는 이미 암호화 된 원격 로그인 및 파일 전송을 허용하므로 SSL을 사용할 수있는 텔넷 또는 FTP 클라이언트에 대해 들어 본 적이 없습니다.

이 Webmin 모듈을 사용하면 STunnel을 실행하여 일부 서버 프로그램을 시작하는 수퍼 서버 서비스를 쉽게 설정할 수 있습니다. 이 작업은 인터넷 서비스 모듈을 사용하여 수동으로 수행 할 수 있지만 STunnel을 설정하고 구성하기 위해 특별히 설계되었습니다. inetd 및 / 또는 xinetd가 설치되어 있는지 자동으로 감지하고 구성을 읽고 기존 SSL 터널을 확인하고 새 터널을 만들 때 추가합니다. 둘 다 설치되면 새로운 SSL 터널이 xinetd 구성에 추가됩니다.