관리 메뉴

가끔 보자, 하늘.

Stunnel4 를 이용한 ssl 터널링 설정하기 본문

개발 이야기/인프라 구축 및 운영

Stunnel4 를 이용한 ssl 터널링 설정하기

가온아 2024. 1. 19. 10:45

로컬에 redis 설치해두고 외부에서 접근할 때는 ssl로 접근할 수 있도록 하는 간단한 예제입니다.

인증서 생성
$ sudo openssl genrsa -out /etc/stunnel/key.pem 4096
$ sudo openssl req -new -x509 -days 3650  -key /etc/stunnel/key.pem -out /etc/stunnel/cert.pem 
$ sudo cat /etc/stunnel/key.pem /etc/stunnel/cert.pem > /etc/stunnel/private.pem
$ sudo chmod 644 /etc/stunnel/key.pem /etc/stunnel/cert.pem /etc/stunnel/private.pem

Stunnel 설치 및 설정
$ sudo apt-get update
$ sudo apt-get install stunnel4
$ sudo vi /etc/stunnel/stunnel.conf
client = no
[redis-ssl]
accept = 16379 # 같은 포트를 쓰려면 public_ip:6379 로 설정 가능. SSL을 통해 외부에서 접속할 포트 - 주석 삭제 필요
connect = 127.0.0.1:6379  # Redis 서버의 실제 포트 - 주석 삭제 필요
cert = /etc/stunnel/private.pem

 

클라이언트에도 Stunnel 설정 
# 서버에서 생성했던 private.pem 파일을 /etc/stunnel/private.pem로 복사.

stunnel4 설치 후..
$ sudo vi /etc/stunnel/stunnel.conf
client=yes
[redis]
accept=127.0.0.1:6379
connect=redis_server_ip:16379
cert = /etc/stunnel/private.pem

 

예전에 터널링 작업 상당히 비싸고 복잡했는데.. stunnel 덕에 엄청 심플해 졌네요. 

반응형