티스토리 뷰
1. SSL(Secure Socket Layer) 이란?
- 보안 소켓 계층이라는 뜻으로 웹 사이트와 브라우저, (혹은 두 서버) 사이에 전송된 데이터를 암호화하여 인터넷 연결 보안을 유지하는 표준 기술
- 해커가 개인 정보 및 금융 정보를 포함한 전송되는 모든 정보를 열람하거나 훔치는 것을 방지
cf) TLS(Transport Layer Securiity) - 더욱 더 강력한 버전의 SSL , 하지만 일반적으로 TLS도 SSL로 불림
2. HTTP(HyperText Transfer Protocol)
- 인터넷에서 웹 서어와 사용자컴퓨터에 설치된 웹 브라우저 사이에 문서를 전송하기 위한 통신
- HTTPS는? 보안 취약점을 해결하기 위한 프로토콜, 기본 골격이나 사용목적등은 HTTP와 거의 동일하고 데이터 주고 받는 과정에서 보안 요소가 추가됨
3. 서버에 https 적용하기
- https를 서버에 적용시키기 위해서는 https 인증서가 필요
- OpenSSL 사용 - 네트워크를 통한 데이터 통신에 쓰이는 프로토콜인 TLS와 SSL의 오픈 소스 구현판
(2). 설치후 node.js 폴더 들어가서 cmd창에 다음과 같이 입력
>> openssl genrsa 1024 > private.pem
>> openssl req -x509 -new -key private.pem > public.pem
공개키 생성 후 국가, 도시, 이름, 이메일 등을 입력하라고 하는데 아무거나 입력
그럼 이렇게 인증서 파일이 "따악" 하고 생김
그런 후 https를 사용할 수 있도록 다음과 같이 변경
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
var os = require('os');
var nodeStatic = require('node-static');
var http = require('https');
var socketIO = require('socket.io');
const fs = require('fs');
const options = {
key: fs.readFileSync('./private.pem'),
cert: fs.readFileSync('./public.pem') };
var fileServer = new(nodeStatic.Server)();
var app = http.createServer(options, function(req, res) {
fileServer.serve(req, res);
}).listen(7777);
|
cs |
https://localhost:7777/ 로 접속시 접속가능한걸 확인할 수 있음!
서버 시작시 node index.js 입력하고 시작
2. digicert 사이트
3. https://ko.wikipedia.org/wiki/OpenSSL
'Programming > 서버와 네트워크' 카테고리의 다른 글
WSL2 설치 및 Docker & CUDA 사용 방법 (0) | 2020.08.27 |
---|---|
[Node.js/Server] Nodejs를 사용하여 Heroku로 Posting 해보기 (0) | 2020.08.26 |
Windows10 Linux 개발환경 구축 (0) | 2020.08.24 |
OSI 7 Layer과 네트워크 관련장비 (0) | 2020.08.17 |
빡쳐서 쓰는 우분투 하드디스크 설치 극복기 (0) | 2020.01.01 |