CentOS_LetsEncrypt

さくらVPS

詳細はコントロールパネルに記載されている

 状態:-  閲覧数:761  投稿日:2017-12-28  更新日:2018-02-02
名前
・CentOS_LetsEncrypt

説明
・このスクリプトはLet's EncryptにてSSL証明書を取得、nginxをインストールしWebサーバを構築します。

事前作業として以下の作業が必要となります
・使用するドメインの取得。※ドメインをお持ちでない場合は、こちらより取得していただくことが可能です。https://www.sakura.ne.jp/domain/
・使用するドメインのAレコードに、VPSのIPv4アドレスの設定。

※CentOS7系のみで動作します

利用可能OS
・CentOS7 x86_64
※「SiteGuard Lite (CentOS7 x86_64)」での指定は出来ない
→ 「LetsEncrypt」と「SiteGuard Lite」の何れを重要視するかで、指定OSが変わってくる



スクリプト内容 / Link

 閲覧数:131 投稿日:2018-02-02 更新日:2018-02-03 

スクリプト内容


内容はザッとでも確認しておいた方が良いかも

firewalldアクセス許可の設定
・「サービス名」ではなく「ポート番号」で指定している
firewall-cmd --permanent --add-port={80,443}/tcp

Nginx起動
systemctl start nginx

Nginx自動起動設定
systemctl enable nginx

コード
#!/usr/bin/bash

# Environment Variables
OS_MAJOR_VERSION=$(rpm -q --queryformat '%{VERSION}' centos-release)
ARCH=$(arch)
DOMAIN="@@@DOMAIN@@@"
MAIL_ADDRESS="@@@MAIL_ADDRESS@@@"

# Install nginx
cat << EOF > /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/${OS_MAJOR_VERSION}/${ARCH}/
gpgcheck=0
enabled=1
EOF

yum clean all
yum install nginx -y

# Install cert-bot
CPATH=/usr/local/certbot
git clone https://github.com/certbot/certbot ${CPATH}

# Configure firewall
firewall-cmd --permanent --add-port={80,443}/tcp
firewall-cmd --reload

# Configure nginx
LD=/etc/letsencrypt/live/${DOMAIN}
CERT=${LD}/fullchain.pem
PKEY=${LD}/privkey.pem

cat << _EOF_ > https.conf
map \$http_upgrade \$connection_upgrade {
default upgrade;
''      close;
}
server {
listen 443 ssl http2;
server_name ${DOMAIN};

location / {
root   /usr/share/nginx/html;
index  index.html index.htm;
}

ssl_protocols TLSv1.2;
ssl_ciphers EECDH+AESGCM:EECDH+AES;
ssl_ecdh_curve prime256v1;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;

ssl_certificate ${CERT};
ssl_certificate_key ${PKEY};

error_page   500 502 503 504  /50x.html;
location = /50x.html {
root   /usr/share/nginx/html;
}
}
_EOF_

systemctl enable nginx

# Configure Let's Encrypt
WROOT=/usr/share/nginx/html
systemctl start nginx
${CPATH}/certbot-auto -n certonly --webroot -w ${WROOT} -d ${DOMAIN} -m ${MAIL_ADDRESS} --agree-tos

if [ ! -f ${CERT} ]
then
echo "証明書の取得に失敗しました"
exit 1
fi

## Configure SSL Certificate Renewal
mv https.conf /etc/nginx/conf.d/
R=${RANDOM}
echo "$((R%60)) $((R%24)) * * $((R%7)) root ${CPATH}/certbot-auto renew --webroot -w ${WROOT} --post-hook 'systemctl reload nginx'" > /etc/cron.d/certbot-auto

systemctl restart nginx
exit 0


Link


さくらのVPSコントロールパネル
CentOS_LetsEncrypt

「CentOS_LetsEncrypt」選択した状態でのOSインストールが終了すると?

 閲覧数:142 投稿日:2018-02-02 更新日:2018-02-02 

「CentOS_LetsEncrypt」選択した状態でのOSインストールが終了すると?


Nginxインストールされた状態になる

ブラウザにIPアドレス入力すると?
・「Welcome to nginx!」と表示される

Twitter検索結果。「CentOS_LetsEncrypt」に関する最新ツイート


初めてのさくらVPS運用

systemd-tmpfiles-clean.service failed



週間人気ページランキング / 9-18 → 9-24
順位 ページタイトル抜粋 アクセス数
1 Nginx設定。エラーログレベル | Nginx(Webサーバ) 17
2 PHP実行ユーザ設定 / CentOS6 / Apache | PHP(プログラミング言語) 14
3 9回目-13.MySQL5.7.21設定 | CentOS 7 2週間無料のお試し期間 9回目(さくらVPS) 12
4 PHPのmb_send_mail関数でメール送信できない | メール処理システム 10
5 ImageMagick と imagick の違い | ImageMagick(ソフトウェアスイート) 9
6 さくらVPS0 8
6 tar: これは tar アーカイブではないようです 8
7 manページ日本語表示 | CentOS 7 (CentOS) 7
7 Reached target Shutdown メッセージが表示されたあと、シャットダウンまたは再起動プロセスがハングアップする | CentOS 7 (CentOS) 7
8 ABRT により 問題が検出されました | CentOS 7 (CentOS) 6
8 PHPファイルでchmodエラー | PHP(プログラミング言語) 6
8 「設定ファイルに、暗号化 (blowfish_secret) 用の非公開パスフレーズの設定を必要とするようになりました。」対応 6
8 Python 3.5 アンインストール / yum remove | Python(プログラミング言語) 6
9 FFmpeg 2.8.15 を yum インストール | ソフトウェアスイート 5
9 echo と cat の違い 5
10 phpMyAdmin 4.4.3(phpMyAdmin) カテゴリー 4
10 6回目-10.Nginxでバーチャルホスト設定確認 | CentOS 7 2週間無料のお試し期間 6回目(さくらVPS) 4
10 「さくらVPS」で、「CentOS6」を「CentOS7」へ変更するためには? | CentOS 7 2週間無料のお試し期間 Link(さくらVPS) 4
10 cronで定期実行しているphpファイルを、コマンドライン経由で即時実行する | cron(Linuxコマンド) 4
10 MySQL 5.5 から 5.6 へのアップグレード | MySQL(データベース) 4
2021/9/25 1:01 更新