Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Ngrok을 이용한 Nginx Https 적용하기.pptx

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Wird geladen in …3
×

Hier ansehen

1 von 28 Anzeige

Ngrok을 이용한 Nginx Https 적용하기.pptx

Herunterladen, um offline zu lesen

Ngrok을 이용한 Nginx Https 적용하기
- centos7 환경에서 Let's encrypt로 인증서 발급
- 인증서를 nginx 에 적용
- ngrok을 이용하여 외부 도메인과 연결

Ngrok을 이용한 Nginx Https 적용하기
- centos7 환경에서 Let's encrypt로 인증서 발급
- 인증서를 nginx 에 적용
- ngrok을 이용하여 외부 도메인과 연결

Anzeige
Anzeige

Weitere Verwandte Inhalte

Ähnlich wie Ngrok을 이용한 Nginx Https 적용하기.pptx (20)

Anzeige

Aktuellste (20)

Ngrok을 이용한 Nginx Https 적용하기.pptx

  1. 1. Intro http/https request 80, 443 port response Ngrok agent NAT / Firewall 외부와 양방향 통신 가능한 고정IP이 없는 경우에 Ngrok의 터널링 기능을 활용하면, 운영환경을 개발서버에서 시뮬레이션 할 수 있음 centos7
  2. 2. Nginx 설치 • yum install을 위한 nginx.repo 파일 생성 및 편집 # vi /etc/yum.repos.d/nginx.repo [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1 # yum install -y nginx
  3. 3. Nginx 구동 • 서비스 구동 및 접속 확인 # systemctl start nginx # systemctl enable nginx
  4. 4. Ngrok 설치 https://ngrok.com/download ftp로 서버에 업로드 후 압축해제 # tar xvzf ./ngrok-v3-stable-linux-amd64.tgz -C /usr/local/bin
  5. 5. Ngrok 구동 • 서비스 구동 및 접속 확인 # ngrok http 80 이 주소로 접속하면 Ngrok 중계서버가 나의 서버를 연결해 준다는 의미 이 주소는 리부팅 등 실행시마다 변동됨 (무료 계정) 또한, 8시간 정도만 주소가 유지됨 (실행 이후 주소 고정을 원할 경우 ‘인증토큰’을 추가해줘야 함  다음 장)
  6. 6. Ngrok 인증 토큰 추가 • Ngrok 회원 가입 필요 • 토큰 추가는 무료 • 무료 계정은 분당 요청 : 분당 약 40회까지 허용 유료 계정은 분당 약 120회 회원 가입 후 ‘Your Authtoken’ 메뉴 이동하여 토큰 확인 # ngrok config add-authtoken “인증 토큰” Ngrok 서비스 중지 후 위 명령어 실행  Ngrok 서비스 실행
  7. 7. Ngrok 인증 토큰 추가 인증 토큰 추가 후, 재시작한 Ngrok 서비스에서 변경된 접속 주소 확인 후, 해당 주소로 접속 ‘Visit Site’ 버튼 클릭
  8. 8. 외부 도메인 연결 + https 적용 준비사항 : 도메인 준비 예> 가비아 이벤트용 도메인 1년에 2,000원 [참고]
  9. 9. 도메인 등록 및 CNAME 설정 • 도메인 등록 및 CNAME 설정 후 nslookup으로 등록여부 확인 - 최초 도메인 등록時 DNS전파에 일정 시간 소요 (0분~00분)
  10. 10. certbot 설치 • Let’s Encrypt 인증서 발급 권장 도구 # yum install epel-release # yum install certbot python2-certbot-nginx # yum install certbot
  11. 11. certbot을 활용한 인증서 발급 • certbot certonly -d [도메인명] --manual --preferred-challenges dns # certbot certonly -d server.kopo.online --manual --preferred-challenges dns 거의 모든 스텝을 ‘Y’로 입력 진행하다가, 우측의 DNS TXT 필드 입력 문구가 나오면 DNS관리에서 입력 및 저장을 먼저 완료하고 엔터를 입력해야 정상 진행됨
  12. 12. 인증서 위치 확인 • /etc/letsencrypt/live/[도메인명]
  13. 13. nginx에 인증서 설정 및 ssl 서비스 등록 • vi /etc/nginx/conf.d/default.conf • nginx -s reload server{ listen 443 ssl; server_name server.kopo.online; root /usr/share/nginx/html; index index.html; ssl_certificate /etc/letsencrypt/live/server.kopo.online/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/server.kopo.online/privkey.pem; }
  14. 14. 로컬에서 자체 테스트 로컬 개발서버에서 hosts파일을 임시로 편집하여 로컬 브라우저로 접속하였을때 정상여부를 확인 정상이면 hosts파일은 원상복구
  15. 15. 인증서 자동 갱신 크론탭 등록 # crontab -e 0 0 1 * * root systemctl stop nginx && certbot renew -q && systemctl start nginx 매달 1일에 인증서 갱신 시도
  16. 16. 외부 도메인과 Ngrok 연계 • server.kopo.online 도메인을 Ngrok으로 연계하기 위해서는 유료 계정을 사용해야 한다.
  17. 17. 외부 도메인과 Ngrok 연계 • 유료 계정 가입 후 아래 링크로 이동 25$/month, 1년 단위 계약시 20$/month • https://dashboard.ngrok.com/cloud-edge/domains
  18. 18. 외부 도메인과 Ngrok 연계
  19. 19. 외부 도메인과 Ngrok 연계 • Ngrok에서 도메인 추가하기 전에 기등록한 CNAME은 삭제해야 함 (미삭제시 Ngrok 에서 에러 발생) server.kopo.online 입력
  20. 20. 외부 도메인과 Ngrok 연계
  21. 21. 외부 도메인과 Ngrok 연계 DNS 관리화면에 입력할 내용이므로 잠시 화면 정지
  22. 22. 외부 도메인과 Ngrok 연계 ① 주어진 정보를 DNS 관리화면에 입력 및 저장 ② 저장 후 Ngrok 화면에서 다음 단계를 진행하면 전파된 DNS 정보를 조회하여 정상여부를 출력한다.
  23. 23. 외부 도메인과 Ngrok 연계 • start tunnel 버튼을 클릭하면 아래와 같은 실행 명령을 제공 • 명령줄을 복사하여 서버에서 실행
  24. 24. 외부 도메인과 Ngrok 연계 • 실행 결과 확인
  25. 25. 외부 도메인과 Ngrok 연계 • 서버에서 /etc/hosts 편집
  26. 26. 외부 도메인과 Ngrok 연계 • 서버에서 /etc/hosts 파일에 server.kopo.online을 추가해야 하는 이유 상기 내용 미반영시, 서버 외부 브라우저 접속시 인증서 불일치 경고 발생(서버내에 있는 브라우저는 정상 접속) 추정 사유> server.kopo.online 접속 -> ngrok 중계, ngrok 인증서 교환 -> 로컬 서버 응답 -> 응답시 server.kopo.online을 참조하는데 위와 같이 설정하지 않으면 다시 ngrok 서버 및 해당 인증서로 연계하여 접속 주소와 인증서의 불일치가 발생하게 됨 (상기 그림)
  27. 27. [참고] Ngrok을 이용한 터미널 연결 • ngrok tcp 22

Hinweis der Redaktion

  • https://crontab.guru/#0_0_1_*_*

×