応用EC 2ドメイン接続+HTTPS
ガビアからドメインを購入
コメントリンク
[Nginx]NginxとSpringBoot統合Tomcat統合
現在のプロジェクトでは、GithubActionを使用してci/cdを事前に構築し、/home/ubuntu/deployでspringブートjarファイルを実行しています.
が自分のip:80に入ると、Welcome to Nginxは に成功したことを示します.
nginx.confはNginxのプライマリファイルです./etc/nginxパスにあります.
confファイル-httpブロックにコンテンツが存在します
sitesで有効なディレクトリのファイルを変更する必要があります.
→理由は参考のブログを参照してください.
簡単に言えば、confファイルにはサイトが有効なフォルダ内のファイルが含まれているからです.
server name:購入したドメイン名または未購入のlocalhostを入力
proxy pass http://localhost:{port}:locationの下のコマンド列で起動するポート番号.現在、プロジェクトサーバポートは9000なので、9000に指定されています.
テストurlを入力すると、成功した場合に確認できます.
サイト-使用可能なディレクトリにテストされました.新しいconfファイルが作成されているため、接続が必要です.
リファレンスリンク
[Nginx][EC 2]ドメイン接続、httpsの適用、サブドメインの設定
ガビア→Myガビア→DNS管理ツール
青はドメイン、黒はipアドレス サブドメインの場合は、CNAMEタイプに設定する必要があります. の値/場所のドメイン名の後ろにあります.貼り付けます.
urlを止めたけど成功!
コメントリンク
LetsEncryptのインストール
[Nginx][EC 2]ドメイン接続、httpsの適用、サブドメインの設定
ec 2インバウンドでhttpsが開いていることを確認!!
証明書の発行方式には独立とwebroot方式があります.
スタンドアロンモードでは、証明書を発行する前にWebサーバを閉じる必要があります.
その利点は,サブドメインに適用できることである.
Webroot方式は最初のブログに整理されており、必要に応じて直接使用すればよい.
**表示されるコマンドの入力
入力以外の内容は省略しました.
<-{1}複数のドメインの証明書を取得する場合は、セパレータを使用してドメインを作成できます.
この場合sites-enabledで作成したドメインに記入するだけです!
現在のプロジェクトでは、confファイルにdevサブドメインのみが作成されます.
Dev.ドメイン名のみでSSL証明書を受け取りました!
削除しましたが、ポートが開いていないので接続できません. ポート独立アプリケーションを開いている場合、すぐに適用されますか?
2つ目の方法...命令、上のような文は2と言います! 2号を適用して、httpsで自動的にリダイレクトすることができます! プロジェクトでテストするapiを作成してください!! ポートを開けろ! の注意事項ではありませんが、他のサブドメインに接続されている場合は、httpsを適用するには証明書発行コマンドを使用する必要があります.
1.ドメイン接続-Nginxのインストール
コメントリンク
[Nginx]NginxとSpringBoot統合Tomcat統合
現在のプロジェクトでは、GithubActionを使用してci/cdを事前に構築し、/home/ubuntu/deployでspringブートjarファイルを実行しています.
インストールNginx
#nginx 설치
sudo apt-get install nginx
#nginx 실행
sudo service nginx start
#---------이외 명령어--------
#상태확인
sudo service nginx status
#중지
sudo service nginx stop
#재시작
sudo service nginx restart
#설정 다시 반영
sudo service nginx reload
Nginx運転の確認
nginx.確認conf
#conf 파일이 있는 곳으로 이동
cd /etc/nginx
#nginx.conf 확인
cat nginx.conf
confファイル-httpブロックにコンテンツが存在します
sitesで有効なディレクトリのファイルを変更する必要があります.
→理由は参考のブログを参照してください.
簡単に言えば、confファイルにはサイトが有効なフォルダ内のファイルが含まれているからです.
sites-availableの設定ファイルの作成と適用
#디렉토리 이동
cd /etc/nginx/sites-available
#새롭게 적용시킬 conf 파일 생성
sudo vi test.conf
test.conf
server {
listen 80;
listen [::]:80;
server_name 구매한 도메인명;
location / {
proxy_pass http://localhost:9000;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
}
テストurlを入力すると、成功した場合に確認できます.
sites-有効なシンボルリンクの作成
#심볼릭 링크 연결
sudo ln -s /etc/nginx/sites-available/test.conf /etc/nginx/sites-enabled
# 연결 목록 확인
cd /etc/nginx/sites-enabled
ls -l
# default 연결을 끊어줘야 test.conf 사용이 가능하다.
sudo rm default
# default 파일을 삭제한게 아니라 연결을 끊은거여서
#sites-available 디렉토리에 보면 default 파일은 존재함!
#만약 망했다 싶으면 test.conf 연결 지우고 default로 다시 연결시켜주면 됨
#nginx 재구동 및 확인
sudo service restart
또는
sudo service reload
#구매한 도메인/test url 로 입력했을 때 출력 값이 제대로 나오면 성공
#안될 시 확인해볼 것
1. ec2 인바운드 설정 확인
2. 리다이렉트하는 포트번호 제대로 설정했는지 확인
3. root 프로젝트 위치를 지정하는 방법도 있는데 다른 글을 보고 참고하면 좋을듯...
2.サブドメインの設定
リファレンスリンク
[Nginx][EC 2]ドメイン接続、httpsの適用、サブドメインの設定
ガビア→Myガビア→DNS管理ツール
ec 2サブドメインの適用
cd /etc/sites-enabled
sudo vi test.conf
test.confファイル→server nameを変更します.server {
listen 80;
listen [::]:80;
server_name teamplanz.shop;
location / {
proxy_pass http://localhost:9000;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
}
sudo service nginx restart
sudo service nginx status
서버 돌아가는 지 확인
urlを止めたけど成功!
3.HTTPSの適用
コメントリンク
LetsEncryptのインストール
[Nginx][EC 2]ドメイン接続、httpsの適用、サブドメインの設定
※開始前の注意事項
Certbotのインストール
#certbot 설치
sudo snap install certbot --classic
SSL証明書の発行(独立)
証明書の発行方式には独立とwebroot方式があります.
スタンドアロンモードでは、証明書を発行する前にWebサーバを閉じる必要があります.
その利点は,サブドメインに適用できることである.
Webroot方式は最初のブログに整理されており、必要に応じて直接使用すればよい.
**表示されるコマンドの入力
#standalone 방식 사용할거기 때문에 nginx 잠시 꺼줘야 한다.
sudo service nginx stop
sudo certbot certonly --standalone
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Enter email address (used for urgent renewal and security notices)
**(Enter 'c' to cancel): (자기 이메일 적기)**
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
생략
agree in order to register with the ACME server. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
**(Y)es/(N)o: Y <- ACME 약관에 동의하는지 N선택시 진행불가**
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
생략
EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: N <- 이메일을 통해 Let's Encrypt 프로젝트 정보를 받아볼지
Please enter in your domain name(s) (comma and/or space separated)
(Enter 'c' to cancel): 도메인1 도메인2 <- {1} 인증서를 발급할 도메인 입력
Requesting a certificate for vompressor.com and www.vompressor.com
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/도메인명/fullchain.pem <- {2} 발급된 인증서 경로
Your key file has been saved at:
/etc/letsencrypt/live/도메인명/privkey.pem <- {2} 발급된 인증서 경로
Your certificate will expire on 2021-05-16.
생략
#SSL 인증서 발급 끝나면 다시 nginx 시작해주기
sudo service nginx start
#정상 실행 됐는지 확인
sudo service nginx status
#필수는 아님
cd /etc/nginx/sites-enabled
vi test.conf
#conf 파일 확인해보면 자동으로 443포트 연결해준거를 볼 수 있다.
入力以外の内容は省略しました.
<-{1}複数のドメインの証明書を取得する場合は、セパレータを使用してドメインを作成できます.
この場合sites-enabledで作成したドメインに記入するだけです!
現在のプロジェクトでは、confファイルにdevサブドメインのみが作成されます.
Dev.ドメイン名のみでSSL証明書を受け取りました!
証明書の削除
#만약 위에 설치했는데 적용안되면 인증서 삭제 후 다시 발급
#인증서 이름은 도메인명 적으면 된다.
certbot revoke --cert-name {인증서 이름}
#SSL 발급받은 도메인 확인하고 싶은 경우
cd /etc/letsencrypt/
#live 디렉토리는 sudo 권한만 들어갈 수 있음
sudo su
cd live
ls
#여기에 발급받은 도메인들 있을텐데 certbot revoke 명령어로 지워주면 된다.
証明書-2の発行
2つ目の方法...
sudo certbot --nginx -d domain.com -d www.domain.com
#-d로 구분해서 도메인 여러개 지정해줄 수 있다.
注意事項を再整理する
Reference
この問題について(応用EC 2ドメイン接続+HTTPS), 我々は、より多くの情報をここで見つけました https://velog.io/@isg/EC2-도메인-연결-HTTPS-적용하기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol