2020. 1. 10. 14:04ㆍ프로그래밍
HTTPS 서버로 운영하려면 80 포트 433 포트를 각각 열어야 합니다. 그러나, 이것은 나중에 코드로 할 것 입니다.
먼저, 아래의 모듈을 불러와 주세요.
const http = require('http');
const fs = require('fs');
const https = require('https')
그 다음에는 Lets Encrypt 에서 ssl 인증서를 발급 받아야 합니다.
무료이나, 3개월마다 갱신해주어야 합니다. 갱신은 자동으로 해도 되고, 아니면 가끔 들어가서 갱신해도 됩니다.
Lets Encrypt를 설치하겠습니다.
sudo apt-get install git python2.7
letsencrypt는 python2.7을 권장하고있습니다. git은 letsencrypt를 클론하기 위해서 설치합니다.
cd /home/
letsencrypt를 다운로드받을 위치로 이동해주세요. 어느곳이던간에 상관 없습니다.
git clone https://github.com/letsencrypt/letsencrypt
letsencrypt를 해주시고, 다운로드 받은 곳으로 또 이동해주세요.
아까 /home에 받았다면 /home/letsencrypt가 되겠습니다.
./letsencrypt-auto certonly
이제 실행하시면 됩니다. 위 명령어를 입력하고, 나오는 결과는 약관 동의와 비슷한 형태인데, 도메인 이름이랑 이메일, 또 여러 질문에 답하면 됩니다. 버전 마다 다르니, 명시하지는 않겠습니다.
이제 설치가 완료되었습니다. 입력한 도메인명으로 /etc/letsencrypt/live에 폴더가 생겼습니다. 그러나, 속 내용은 알 필요 없습니다.
바로 코드 작성하시면 됩니다.
const ssl_options={
cert:fs.readFileSync('/etc/letsencrypt/live/도메인명/fullchain.pem'),
key:fs.readFileSync('/etc/letsencrypt/live/도메인명/privkey.pem')
};
app.js나 제너레이터를 써서 만들었으면 bin/www에 작성해주십시오. ssl 옵션 입니다.
var server = http.createServer(app).listen(80)
https.createServer(ssl_options, app).listen(443)
이렇게 https서버와 http서버를 같이 구축하여 운영할 수 있습니다.
감사합니다
'프로그래밍' 카테고리의 다른 글
OpenGL과 GLFW, GLEW 설명과 마름모 생성 튜토리얼 (0) | 2020.08.11 |
---|---|
OpenGL과 GLFW 새 창 열기 튜토리얼 (0) | 2020.08.10 |
[SCIKIT LEARN] CSV 파일을 데이터 배열로 나만의 데이터 만들기 (0) | 2019.11.03 |
쉽게 시작하는 [SCIKIT LEARN] / 붓꽃 품종 분류하기 (0) | 2019.11.02 |
[RUST] Owner 소유권에 관하여 (0) | 2019.10.27 |