3월 13, 2024

http 와 https의 차이점 (구별법/ 좌물쇠모양/ 주의요함 표시/포트번호)

1. HTTP와 HTTPS의 차이점

URL 주소를 보면 http로 시작하는 것도 있는 반면 https로 시작하는 것도 있어 차이가 궁금한 사람들이 있을 수 있다.

URL(Uniform Resource Locator)은 네트워크 상에서 자원이 어디 있는지를 알려주는 것이기 때문에 단순히 웹사이트 주소라는 우리의 인식보다 훨씬 더 포괄적인 개념이라고 할 수 있다.

 

http, https의 개념을 하나씩 살펴보면서 둘의 차이점이 무엇인지 알아보겠다.

 

1. HTTP: HyperText Transfer Protocol

 

HTTP는 약자가 의미하는 것처럼 인터넷에서 HyperText를 Transfer (전송)하기 위해 사용되는 Protocol (통신규약)이라고 할 수 있다. HyperText에서 알 수 있듯이 HTTP는 정보를 텍스트로 주고 받게 된다. 이러한 부분이 HTTP의 가장 큰 취약점이라고 할 수 있다. 텍스트로 주고 받는 것이기 때문에 네트워크에서 전송 신호를 가로채면 데이터 유출이 발생할 수 있다는 것이 가장 큰 약점이다. 

 

HTTP의 공식 port는 80번 포트이다. 80번 포트는 웹사이트를 위한 표준 포트로, 웹사이트가 TCP 80 포트를 통해 연결하면 서버가 이에 응답하면서 정보를 전송하는 방식인 것이다. 위에서 언급된 것처럼 데이터 유출이 발생할 수 있는 보안 문제를 해결하기 위해서 우리는 HTTPS를 사용한다.


 

2. HTTPS: HyperText Transfer Protocol Secure Socket

 

HTTPS는 약자에서 볼 수 있듯이 HTTP 뒤에 S(Secure socket)가 하나 더 붙은 프로토콜이다. 데이터를 주고 받는 과정에서 데이터 유출이 발생할 수 있는 HTTP의 약점을 보완하기 위해서 서버와 클라이언트 사이의 통신 시에 통신 내용을 암호화한다는 특징을 가지고 있다. HTTPS의 포트 번호는 443번이다. 

 

요즘은 개인정보에 민감하기 때문에 개인정보를 다루는 사이트의 경우 대부분 HTTPS의 사용을 권장하고 있다. 네이버, 구글 같은 경우도 모두 https를 사용하고 있다는 것을 알 수 있을 것이다.


 

그렇다면 http와 https는 어떻게 구분할 수 있을까?



https로 시작하는 웹사이트 예시

쉽게 그림상으로 구별이 가능하다. https로 시작하는 경우 위와 같이 자물쇠 모양의 그림이 있고 자물쇠를 클릭해보면 위의 글씨처럼 '이 사이트는 보안 연결(HTTPS)이 사용되었습니다' 라고 뜬다. 

 

 

반면 똑같은 웹사이트를 http로 접속해보면,



http로 접속했을 경우

위와 같이 [주의 요함]이라는 표시가 뜨는 것을 알 수 있다. 그리고 주의 요함을 클릭해보면 '이 사이트는 보안 연결 (HTTPS)이 사용되지 않았습니다'라고 표시가 뜬다. 이런 것을 통해서 우리는 사이트의 URL이 http로 시작되고 있는지, https로 시작되고 있는지를 쉽게 알 수 있다. 


2. ssl 인증

만약 본인이 사이트를 제작하는 입장이라면, 그리고 해당 사이트가 개인정보를 다루고 있다면 https로 시작하는 사이트를 만드는 것이 무조건 좋다. https로 시작하는 사이트를 만들기 위해서는 ssl 인증을 받으면 되는데 방법은,

https://www.programmingstory.com/2024/02/ssl-https.html

해당 포스팅에서 다루었으니 궁금한 사람은 클릭해서 ssl 인증서를 받도록 해보자. 


2월 26, 2024

[ssl 인증서] 호스팅 신청 시 주의사항! https://로 시작하는 홈페이지 만들기 / 정보통신망법 개정

이 사이트는 보안 연결(HTTPS)이 사용되지 않았습니다. 문구

cafe24를 통해서 무료호스팅을 받고 해당 홈페이지 주소로 홈페이지 만들기 연습을 하고 있던 도중, 



주의 요함이라는 경고창아래 위와 같은 경고가 뜨는 것을 발견하였다. 

 

알고 보니, 개인정보 등이 담긴 사이트의 경우 ssl 인증을 받아야 한다는 것을 알게 되었다. 즉 cafe24에서 유료호스팅을 신청해 돈을 지불하였어도 추가로 ssl 인증서 획득이 필요하다는 것이다. 

ssl 인증서는 왜 필요할까?

요즘에는 정보가 굉장히 많은 사회이고 홈페이지 주소도 많기 때문에 이 홈페이지가 안전한 사이트인지 아닌지 일종의 인증을 해주는 것이다. 해킹에 취약하지는 않은지, 개인정보가 유출될 가능성은 없는지, 안전한 통신을 하는지 등을 보장해주는 것이라고 할 수 있다. 

 

요즘에는 개인정보가 민감한 사회적 이슈가 되었고, 정보통신망법 개정에 따라서 개인정보를 취급하는 모든 웹사이트는 의무적으로 보안서버 (SSL)을 설치하여야 한다고 한다. 만약 이를 어기고 적발 될 시 과태료가 부과된다고 하니 ssl 인증은 필수이다. 

 

hosting.cafe24.com/?controller=product_page&type=vservice&page=ssl


보안서버 SSL 인증서 구매하기

나는 위의 카페24에 들어가서 보안서버 SSL 인증서를 구매했다. 나는 SSL 스탠다드로 구매를 하였는데 각자의 필요에 따라서 구매를 하면 될 것 같다. 

구매를 하면 Sectigo Certification Authority에서 인증코드와 함께 메일을 보내준다. 메일로 인증코드를 보내주기 때문에 서버호스팅을 신청할 때 정확한 메일주소를 기입해야 한다. 

메일로 해당 링크에 들어가서 인증코드를 입력하면 얼마 지나지 않아 cafe24에서 

'신청하신 보안서버인증서 (SSL)의 설치가 완료되었습니다'라는 내용의 메일을 보내준다. 

 

그런 다음에 해당 도메인 주소를 http가 아니라 https://로 시작하는 것으로 입력하여 들어가보면.



위의 이미지처럼 잘 연결된 것을 알 수 있다. 위의 이미지는 홈페이지 url 옆에 좌물쇠처럼 생긴 버튼을 클릭하면 보인다. 


즉, 홈페이지를 만들때 조금의 돈과 시간이 더 들더라도 보안을 안전하게 하고 정보통신망법에 위배되지 않으려면 꼭 ssl 인증서를 받아야 한다!! 

나중에 홈페이지를 다 만들고 후회하는 일이 없도록 하자