리눅스:openssl(ssl인증서): 두 판 사이의 차이
둘러보기로 이동
검색으로 이동
(새 문서: {{리눅스}} == 개요 == HTTPS 보안을 사용하기 위해 SSL을 구성하게 도와주는 패키지. 보통 리눅스에 기본적으로 설치되어 있다. == 기초 사용...) |
(→간단 사용) |
||
(사용자 2명의 중간 판 3개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
{{리눅스}} | {{리눅스}} | ||
== 개요 == | ==개요== | ||
HTTPS 보안을 사용하기 위해 SSL을 구성하게 도와주는 패키지. | HTTPS 보안을 사용하기 위해 SSL을 구성하게 도와주는 패키지. | ||
구글의 API를 사용하거나 할 때 https 보안이 요구되는 경우가 있다. | |||
보통 리눅스에 기본적으로 설치되어 있다. | 보통 리눅스에 기본적으로 설치되어 있다. | ||
== 기초 사용법 == | ==기초 사용법== | ||
쉘에서 openssl로 openssl 프롬프트에 접속할 수 있다. 아래 '방법'은 쉘에서 바로 실행하는 방법으로, 프롬프트에선 openssl을 제외하면 된다. | 쉘에서 openssl로 openssl 프롬프트에 접속할 수 있다. 아래 '방법'은 쉘에서 바로 실행하는 방법으로, 프롬프트에선 openssl을 제외하면 된다. | ||
44번째 줄: | 46번째 줄: | ||
|openssl x509 -text -in [인증서파일명] -noout | |openssl x509 -text -in [인증서파일명] -noout | ||
|} | |} | ||
===간단 사용=== | |||
{| class="wikitable" | |||
!과정 | |||
!설명 | |||
!방법 | |||
|- | |||
|간단히 https 통신 | |||
|공식 기관을 통해 인증을 받은 것은 아니지만, 그 https 통신을 사용하기 위해. | |||
*개인키와 CSR을 생성하고 자체서명 인증서를 만들고... | |||
*웹서버에 적용한다.(아래 목차를 참고하자.) | |||
|openssl genrsa -out my.key 2048 & openssl req -new -x509 -key my.key -out my.crt | |||
|} | |||
= 웹서버에 적용 = | |||
== nginx == | |||
/etc/nginx/sites-available/nginx_conf 등 사용하고 있는 설정파일을 다음과 같이 편집한다.<syntaxhighlight lang="bash"> | |||
# 기본 설정 외에 서버를 하나 더 만들어준다. | |||
server { | |||
# 받을 포트. | |||
listen 10100 ssl; # 443인데..일단. | |||
# 고정아이피. | |||
server_name example.iptime.org; # 도메인 | |||
# ssl 설정 | |||
ssl_certificate /경로/my.crt; | |||
ssl_certificate_key /경로/my.key; | |||
#### 이외 설정. | |||
</syntaxhighlight>이후 <code>nginx -t</code> 등으로 설정파일을 점검하고 <code>sudo service nginx restart</code> 등으로 서버를 재시작한다. |
2022년 12월 1일 (목) 17:20 기준 최신판
리눅스를 위한 문서틀 틀:리눅스
- 리눅스:명령어
- 리눅스:권한관련
- 리눅스:편의기능
- 리눅스 기반 OS
- 리눅스:패키지 관리
- 다양한 패키지
- 리눅스:쉘 스크립트
개요[편집 | 원본 편집]
HTTPS 보안을 사용하기 위해 SSL을 구성하게 도와주는 패키지.
구글의 API를 사용하거나 할 때 https 보안이 요구되는 경우가 있다.
보통 리눅스에 기본적으로 설치되어 있다.
기초 사용법[편집 | 원본 편집]
쉘에서 openssl로 openssl 프롬프트에 접속할 수 있다. 아래 '방법'은 쉘에서 바로 실행하는 방법으로, 프롬프트에선 openssl을 제외하면 된다.
아래 방법에서 key나 csr 등의 확장자는 굳이 맞춰주지 않아도 된다.(아무 확장자로든 가능)
과정 | 설명 | 방법 |
---|---|---|
개인키 발급 | https에선 서비스를 등록할 때마다 비밀번호가 필요해 비밀번호가 없이 사용.
-des3옵션을 주면 비밀번호를 생성하는 문답이 발생한다. |
openssl genrsa -out 파일명.key 2048 |
공개키 발급 | 개인키에 이어서 공개에 사용할 키도 발급해야 한다.
개인키는 위에서 만든 것을 사용한다. |
openssl rsa -in 개인키.key -pubout -out 공개키.key |
인증요청서 만들기 | 인증기관에 보낼 신청서를 만든다.(굳이 안하고 아래 내용을 진행해도 된다.)
각종 정보를 기입할 창이 뜨는데, 그냥 enter를 쳐도 잘 넘어간다.(마지막의 패스워드, 옵션 회사명은 안넣는 게 좋겠다.) |
openssl req -new -key 개인키.key -out 인증서.csr |
인증서 만들기
(인증요청서 없을 때) |
openssl req -new -x509 -key 개인키.key -out 만들인증서파일명.crt | |
인증서 만들기
(인증요청서 있을 때) |
openssl x509 -req -days [유효날] -in [인증사인요청파일] -signkey [개인키] -out [인증서 파일명] | |
인증서 검증 | 인증서에 관한 정보를 열람한다. | openssl x509 -text -in [인증서파일명] -noout |
간단 사용[편집 | 원본 편집]
과정 | 설명 | 방법 |
---|---|---|
간단히 https 통신 | 공식 기관을 통해 인증을 받은 것은 아니지만, 그 https 통신을 사용하기 위해.
|
openssl genrsa -out my.key 2048 & openssl req -new -x509 -key my.key -out my.crt |
웹서버에 적용[편집 | 원본 편집]
nginx[편집 | 원본 편집]
/etc/nginx/sites-available/nginx_conf 등 사용하고 있는 설정파일을 다음과 같이 편집한다.
# 기본 설정 외에 서버를 하나 더 만들어준다.
server {
# 받을 포트.
listen 10100 ssl; # 443인데..일단.
# 고정아이피.
server_name example.iptime.org; # 도메인
# ssl 설정
ssl_certificate /경로/my.crt;
ssl_certificate_key /경로/my.key;
#### 이외 설정.
이후 nginx -t
등으로 설정파일을 점검하고 sudo service nginx restart
등으로 서버를 재시작한다.