아파치의 vhost 기능을 사용하여 하나의 도메인으로 여러 서비스 제공
인증서 발급 - 도커 사용
1 | |
- it : interactive + tty. 터미널을 통해 컨테이너와 상호작용 위해 필요
- rm : 컨테이너 종료시 삭제
- v ‘…’ : 인증서가 저장될 경로를 볼륨으로 설정
- d ‘.example.com’ : 인증서를 발급받을 도메인 (. 의경우 와일드 카드)
- manual –preferred-challenges dns : DNS를 통해 도메인을 인증
- server https://~~~ : 발급을 요청할 let’s encrypt 서버 주소
이메일 주소 입력 및 약관 확인 동의
1 | |
도메인의 txt 레코드 설정
1 | |
이후 적용 되었는지 확인
1 | |
ANSWER SECTION 부분에 설정 값이 출력 되는 것을 확인한 후 진행, 발급 완료시 아래 디렉토리에 생성
1 | |
vhost 설정
- Apache의 SSL 모듈 활성화
1 | |
2.http -> https 리다이렉트를 위하여 설정파일 생성
1 | |
http설정파일.conf 내용
1 | |
(REwritedEngine 사용하는 경우)
1 |
|
- 각 도메인 별로 /etc/apache2/sites-available/에 설정 파일을 만든다. ProxyPass에는 로컬에서 실행 중인 서버포트 입력해준다. (로컬에서 https 사용하면 에러 발생) (NameVirtualHost는 인증서에 등록된 도메인과 같아야 여러개 호스트 사용가능)
(서브 도메인의 경우 ServerName에 admin.example.com과 같이 사용)
(proxy 사용 위해서
1 | |
)
1 | |
- 사용하려는 설정 파일들을 아파치에서 사용하도록 등록
1 | |
- /etc/apache2/에 있는 ports.conf에 NameVirtualHost *:443 추가
1 | |
- 아파치 재시작
1 | |
spring boot 위한 p12 추가
OOOO에는 server.ssl.key-alias 와 같은 이름으로 설정 패스워드입력창이 이후 나오면 spring properties와 맞춰준다.
1 | |
인증서 3개월 후 재발급
1 | |
수동 발급
1 | |
crontab 사용하여 자동화
1 | |
이후 에디터 선택 현재날짜 기준 3개월
1 | |
리다이렉션
1 | |
기간확인
1 | |
공사중 띄우기
ssl 사용하는 경우 site-available(파일.conf)
1 |
|
RewriteEngine 활성화 시켜준 다음
1 | |