가난한 세팅으로 SSL 적용하기
집 인터넷은 이렇게 구성되어 있습니다
따로 도메인을 구매하지는 않은 상태이고 외부에서 내부로 접속하기 위해서 기본 DDNS로 설정해서 사용하고 있습니다.
ASUS 라우터에서는 DDN 서비스와 동시에 Let's Encrypt를 통해서 SSL/HTTPS 인증을 해 주는 기능을 가지고 있습니다. 이 인증파일을 가지고 Raspberry Pi에서 운영하고 있는 NGINX 서비스에서 적용할 수 있습니다
SSH를 통해 ASUS 공유기에 접속을 하고 인증파일을 찾습니다.
find / -iname *pem
admin@BLUE_CAVE:/tmp/home/root# find / -iname *pem
/jffs/.le/********.asuscomm.com/fullchain.pem
/jffs/.le/********.asuscomm.com/cert.pem
/jffs/.le/********.asuscomm.com/chain.pem
/rom/dh2048.pem
경로는 /jffs/.le/[DDNS명]
으로 기본설정이 되는 것 같습니다.
해당 폴더로 들어가 보면 검색되는 파일명들과는 달리 4개의 파일이 있습니다.
cert.pem
chain.pem
domain.key
fullchain.pem
이 파일들을 nginx 설정엥 삽입 해야 합니다.
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name ********.asuscomm.com;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
ssl_session_tickets off;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH EDH+aRSA !RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS";
ssl_prefer_server_ciphers on;
ssl_certificate /etc/nginx/ssl/********.asuscomm.com/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/********.asuscomm.com/domain.key;
ssl_trusted_certificate /etc/nginx/ssl/********.asuscomm.com/chain.pem;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_next_upstream error timeout http_502 http_503 http_504;
}
}
현재는 Proxy 형태로 서비스하고 있는 port를 연결하고 있습니다.
SSL/TLS 설정 파일을 세팅합니다.
반응형
'개발 > 리눅스' 카테고리의 다른 글
Fedora 30 | uim 입력기 변경 (0) | 2019.08.20 |
---|---|
Fedora 30 | 텔레그램 설치하기 (0) | 2019.07.24 |
MAC | 맥북프로에서 tb16 dock 사용하기 (0) | 2019.06.19 |
Mac | vim 8.1 YouCompleteMe 설치 (0) | 2019.05.07 |
CentOS 대 Ubuntu : 서버에 더 좋은 것 (0) | 2019.03.05 |