HAProxy에서 SSL 패스스루를 구현하는 방법

Haproxyeseo Ssl Paeseuseululeul Guhyeonhaneun Bangbeob



웹 서버로 전달되는 부하의 균형을 맞추는 것은 가동 중지 시간이 발생하지 않도록 하는 한 가지 방법입니다. 로드 밸런싱을 안정적으로 수행하는 방법은 로드 밸런서를 사용하는 것이며 HAProxy는 이상적인 옵션입니다. 이를 통해 클라이언트와 서버 간의 트래픽을 보호하기 위해 SSL 패스스루를 구현하는 동안 로드 밸런싱 방법을 구성할 수 있습니다.

이 게시물은 HAProxy에서 SSL 통과 구현이 필수적인 이유를 논의하는 것으로 시작됩니다. 그런 다음 이해하기 쉽도록 예제를 통해 이를 구현하기 위해 따라야 할 단계를 논의합니다.

SSL 패스스루란 무엇이며 왜 필수인가요?

로드 밸런서로서 HAProxy는 웹 서버로 전달되는 로드를 가져와 구성된 서버에 분산합니다. 분산되는 부하는 클라이언트 장치와 백엔드 서버 간에 공유되는 트래픽입니다. 로드 밸런싱에는 보안이 필수적이며 SSL 패스스루가 중요한 역할을 합니다.







이상적으로 SSL 통과에는 SSL/TLS 트래픽을 웹 서버로 전달하고 HAProxy 또는 사용 중인 다른 로드 밸런서에서 SSL/TLS 연결을 종료하지 않고 구성된 서버에 배포하는 작업이 포함됩니다. SSL 패스스루를 사용하면 더 나은 엔드투엔드 암호화를 누릴 수 있으며 클라이언트의 원래 IP 주소가 보존됩니다. 또한 이는 권장되는 보안 조치이며 더 나은 백엔드 서버 유연성을 제공하여 HAProxy의 과부하를 줄입니다.



HAProxy에서 SSL Passthrough를 구현하는 방법에 대한 단계별 가이드

SSL 패스스루의 의미와 이것이 필요한 이유를 이해한 후 다음 작업은 HAProxy 로드 밸런서에서 이를 구현하기 위해 따라야 하는 단계를 제공하는 것입니다. 제공된 단계에 따라 HAProxy 로드 밸런서에서 SSL 패스스루를 빠르게 구현하세요.



1단계: HAProxy 설치

HAProxy가 설치되어 있지 않다고 가정합니다. 첫 번째 단계는 SSL 통과를 구현하도록 구성하기 전에 설치하는 것입니다. 따라서 저장소를 업데이트하는 것부터 시작하세요.





$ sudo 적절한 업데이트

다음으로, 다음 명령을 사용하여 기본 저장소에서 HAProxy를 설치합니다. 이 경우에는 Ubuntu를 사용하고 있습니다.



$ sudo 적절한 설치하다 하프록시

HAProxy를 설치하고 나면 SSL 패스스루를 구현할 준비가 된 것입니다. 읽어!

2단계: HAProxy에서 SSL 패스스루 구현

이 단계에서는 '/etc/haproxy'에 있는 HAProxy 구성 파일에 액세스하고 이를 편집하여 SSL 통과 구현 방법을 지정해야 합니다. 텍스트 편집기를 사용하여 구성 파일을 열 수 있습니다. 이 시연에서는 nano를 사용했습니다.

$ sudo 나노 / / 하프록시 / 하프록시,cfg

구성 파일에 액세스하면 '프런트엔드'와 '백엔드'라는 두 개의 섹션을 만들어야 합니다. '프런트엔드'에서는 연결을 위해 바인딩할 포트를 지정합니다. 마찬가지로 트래픽을 분산하는 데 사용할 프로토콜과 백엔드 서버를 지정해야 합니다.

이 경우 트래픽 보안을 원하므로 HTTPS 연결용 포트 443을 바인딩합니다. 다시 한번 HAProxy가 전송 계층에서 작동하도록 TCP 모드를 허용하도록 지정합니다.

또한 SSL 트래픽을 허용하는지 확인하기 위해 SSL 'hello' 메시지를 검사하는 기간을 지정하는 규칙으로 'tcp-request' 줄을 추가합니다. 마지막으로 부하 분산에 사용할 백엔드 서버를 지정합니다. 마지막 '프런트엔드' 섹션은 다음과 같습니다.

'백엔드' 섹션에서는 모드를 TCP로 설정했습니다. 그런 다음 로드 밸런싱에 사용하는 서버의 IP 주소를 지정합니다. 이러한 IP를 라이브 서버의 IP와 일치하도록 바꾸고 연결 포트를 443으로 설정했는지 확인하세요.

구성 파일의 'global' 섹션에 포함된 로그 파일에 TCP 관련 문제를 기록할 수 있도록 '옵션 tcplog'가 추가되었습니다.

3단계: HAProxy를 다시 시작하고 구성 테스트

HAProxy 구성 파일을 편집한 후 저장하고 종료합니다. 변경 사항을 적용하려면 HAProxy 서비스를 다시 시작하세요.

그게 다야! HAProxy에서 SSL 패스스루를 구현했습니다. 컬과 같은 명령을 사용하여 웹 서버에 트래픽을 보내고 어떻게 응답하는지 확인하세요. SSL 패스스루가 성공적으로 구현되면 포트 443을 통해 연결되었음을 보여주는 출력이 표시되고 백엔드 서버에 연결됩니다. 서버는 필요한 세부 정보로 응답하고 200 상태 응답을 제공합니다.

결론

SSL 패스스루를 구현하면 엔드투엔드 암호화를 생성하고 로드 밸런싱이 발생할 때 SSL/TLS 연결이 유지되도록 하는 데 도움이 됩니다. HAProxy에서 SSL 패스스루를 구현하려면 HAProxy를 설치하고 구성 파일을 편집하여 로드 밸런싱이 발생하는 방식을 지정합니다. 프로세스를 더 잘 이해하려면 제시된 예를 참조하십시오.