SSL로 HAProxy를 보호하는 방법

Ssllo Haproxyleul Bohohaneun Bangbeob



웹사이트를 가동하고 운영할 때 보안, 가용성 및 안정성을 보장하기 위해 수행해야 할 주요 사항이 있습니다. 첫 번째는 로드 밸런서를 구성하는 것이며 HAProxy는 안정적인 옵션임이 입증되었습니다. HAProxy는 역방향 프록시 역할을 하면서 로드 밸런싱을 처리합니다. HAProxy를 사용하더라도 HTTPS로 트랜잭션을 암호화하여 트래픽을 보호해야 합니다. SSL/TLS 암호화를 사용하여 웹 서버를 빠르게 보호할 수 있습니다. 이렇게 하면 서버와 클라이언트 장치 간의 데이터가 안전하게 전송되고 데이터 무결성이 달성됩니다. SSL을 사용하여 HAProxy를 보호하는 방법을 이해하려면 계속 읽어보세요.

SSL 암호화는 어떻게 작동하나요?

Let’s Encrypt와 같은 옵션 덕분에 이제 웹사이트 암호화를 위한 무료 SSL/TLS 인증서를 얻을 수 있습니다. Let’s Encrypt는 라이브 도메인에 대해 90일 유효 기간의 무료 SSL/TLS 인증서를 제공하는 무료 개방형 인증 기관입니다. 이러한 인증서를 사용하면 서버와 클라이언트 간의 웹 트래픽이 HTTPS로 전송됩니다. 이렇게 하면 해커가 트래픽을 도청하거나 공유 데이터의 무결성을 조작할 수 없습니다.







무료로 제공하는 것 외에도 Let’s Encrypt는 자동화도 지원합니다. 귀하가 받은 SSL/TLS 인증서는 90일마다 자동으로 갱신됩니다. 따라서 갱신을 실행하고 90일마다 HAProxy를 업데이트하는 스크립트를 가질 수 있습니다. 또한 Let's Encrypt 인증서는 모든 브라우저 및 운영 체제와 호환되므로 HAProxy를 보호하기 위해 원활하게 사용할 수 있습니다.



SSL로 HAProxy를 보호하는 방법에 대한 단계별 가이드

지금까지 우리는 SSL/TLS 인증서의 기능과 웹사이트에 인증서가 필요한 이유를 이해했습니다. 또한, 획득 방법에 대해서도 논의했습니다. 마지막 단계는 SSL로 HAProxy를 보호하는 단계를 공유하는 것입니다.



시작하기 전에 HAProxy와 함께 사용하는 대상 웹 서버와 연결된 유효한 활성 도메인이 있는지 확인하세요. 준비가 완료되면 다음 단계를 진행하세요.





1단계: 리포지토리 업데이트

시스템을 업데이트하면 설치하려는 패키지의 최신 소스를 얻을 수 있습니다.



$ sudo 적절한 업데이트


2단계: HAProxy 설치

이 경우 SSL을 사용하여 보안을 유지하려는 HAProxy를 설치해야 합니다. 웹 서버에서 HAProxy를 실행 중인 경우 이 단계를 건너뜁니다. 그렇지 않은 경우 다음 'install' 명령을 실행하여 HAProxy를 빠르게 설치하세요.

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


설치한 후에는 로드 밸런싱과 같은 서버 요구 사항에 이상적인 구성을 수행하십시오.

3단계: Certbot 설치

Let’s Encrypt에서 발급하는 모든 무료 SSL 인증서는 Certbot을 통해 제공됩니다. 인증서를 다른 곳에서 구입한 경우에는 Certbot을 설치할 필요가 없습니다. 이 경우 Ubuntu 22.04를 실행하고 있으며 Certbot 패키지는 기본 저장소에서 사용할 수 있습니다. 설치하려면 다음 명령을 실행하십시오.

$ sudo 적절한 설치하다 인증봇


4단계: SSL 인증서 받기

Certbot을 설치하면 Let’s Encrypt에서 SSL 인증서를 얻을 수 있습니다. 다음 구문을 사용하고 'exampledomain.com'을 보호하려는 유효한 도메인으로 바꾸십시오.

$ sudo certbot 인증만 --독립형 -디 exampledomain.com -디 www.exampledomain.com


명령을 실행하면 일련의 프롬프트가 나타납니다. 각 프롬프트를 살펴보고 정확한 세부정보로 답변하세요. 예를 들어 도메인과 연결된 이메일을 제공해야 합니다. 프롬프트에 응답하고 도메인이 확인되면 SSL 인증서가 획득되어 서버에 저장됩니다.

5단계: 단일 PEM 파일 생성

생성된 SSL 인증서를 HAProxy와 함께 사용하려면 인증서와 해당 개인 키를 하나의 PEM 파일에 저장하세요. 따라서 다음 명령을 사용하여 전체 체인 인증서 파일을 개인 키 파일에 연결해야 합니다.

$ sudo 고양이 / / 암호화하자 / 살다 / exampledomain.com / 풀체인.pem / / 암호화하자 / 살다 / exampledomain.com / privkey.pem | sudo / / 하프록시 / 인증서 / exampledomain.com.pem


필요할 때마다 도메인을 교체해야 합니다.


6단계: HAProxy 구성

단일 PEM 파일이 있으면 파일을 참조하여 보안을 유지하도록 HAProxy를 구성해야 합니다. HAProxy 파일에 HTTPS로 바인딩하려는 포트를 포함하고 SSL 키워드를 사용하여 PEM 파일에 경로를 추가합니다.

텍스트 편집기를 사용하여 파일을 엽니다.

$ sudo 나노 / / 하프록시 / haproxy.cfg

그런 다음 보호할 포트와 PEM 파일 소스 위치를 표시하는 다음과 유사한 프런트엔드를 갖도록 구성을 편집합니다.


마지막으로 구성 파일을 저장하고 종료합니다. HAProxy를 다시 시작할 수 있으며 트래픽이 클라이언트에서 서버로 전송될 때 트래픽이 보호됩니다. 구성 파일에 포함된 리디렉션 구성표 덕분에 모든 HTTP 트래픽이 HTTPS로 리디렉션됩니다.


이것이 SSL로 HAProxy를 보호하는 방법입니다.

결론

SSL/TLS 인증서는 HAProxy를 로드 밸런서로 사용할 때 트래픽을 보호하는 편리한 방법입니다. Certbot 도구를 사용하여 Let’s Encrypt에서 무료 SSL 인증서를 얻고 트래픽을 리디렉션할 때 이를 사용하도록 HAProxy를 구성할 수 있습니다. 따라야 할 세부 단계를 제시하고 웹 서버에서 이를 구성할 때 참조할 수 있는 예를 제공했습니다.