#7. Django에 SSL 달아주기
by Qerogram서론
# REF
오늘 한번 서버자체를 갈아 엎었다. apache2랑 연동도 하고, ssl도 달아봤다.
역시나 환경은 라즈베리파이3
진행과정
1. 우선은 letsencrypt를 설치한다.
1 | sudo git clone https://github.com/letsencrypt/letsencrypt | cs |
2. 설치된 경로 안으로 들어가서, 아래의 명령어를 수행해준다
(아래는 단지 예시다. --email엔 이메일을, -d옵션으론 도메인을 기입)
1 | sudo ./letsencrypt-auto --manual --email aa@tt.xyz -d www.naver.com | cs |
뭐라뭐라 뜨는데, 캡쳐를 안떠놔서 설명이 좀 어렵다.
중간에 아주 긴 영문장이 한 줄 있을 것이다. 그 내용을 웹서버의 .well-known/acme-challenge/ 경로 속에 파일로 넣어야한다. 자세한건 찾아보길 바람.
쨋든 Django 기준으로 설명하자면 templates폴더에 ssl이라는 명칭으로 만들고 긴 영문장을 삽입후 url로 따준다.
(아래 주소는 가칭.)
1 2 3 4 5 | from django.conf.urls import url, include from django.views.generic import TemplateView urlpatterns = [ url(r'^.well-known/acme-challenge/SS-2YVVXD-dv29MvEy5OxbxpAvSZTB_99leZobHhN1k$', TemplateView.as_view(template_name="ssl", content_type="text/plain")), ] | cs |
3. 그리고 이전 게시글에 작성했던 Test.conf에 <VirtualHost *:443>을 작성한다.
내용은 80때랑 비슷하며 www.naver.com 대신 자신이 등록한 url을 넣는다.
1 2 3 | SSLEngine on SSLCertificateFile /etc/letsencrypt/live/www.naver.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/www.naver.com/privkey.pem | cs |
그렇게 서비스 재 구동 후 https://를 주고 접근하게되면 적용이 가능하고.
80 접근시 아래의 구문을 넣으면 리다이렉트로 HTTPS로 넘기기가 가능하다.
1 | Redirect permanent / https://www.qerogram.kro.kr | cs |
http://forybm.tistory.com/6
'코딩 > Python' 카테고리의 다른 글
#10. PyInstaller (0) | 2018.06.28 |
---|---|
#9. Tray 프로그램 (0) | 2018.06.26 |
#6. Django와 Apache2 연동하기 in 라즈베리파이3 (0) | 2018.02.13 |
#5. 파일전용 hash 뷰어를 만들어보자 (0) | 2018.02.13 |
Django에서 robots.txt 처리하기 (0) | 2018.01.19 |
블로그의 정보
Data+
Qerogram