このチュートリアルでは、CentOS7にCaddyWebサーバーをインストールする方法を示します。知らなかった人のために、CaddyWebサーバーはオープンソースです。 Go。Caddyで記述されたセキュリティ重視のWebサーバーには、仮想ホストのサポート、静的ファイルの縮小、HTTP/2などの最新機能が含まれています。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、'sudo
を追加する必要があります。 ルート権限を取得するコマンドに‘。 CentOS7サーバーへのCaddyWebサーバーのインストール手順を説明します。
前提条件
- 次のオペレーティングシステムのいずれかを実行しているサーバー:CentOS7。
- 潜在的な問題を防ぐために、OSの新規インストールを使用することをお勧めします。
- サーバーへのSSHアクセス(またはデスクトップを使用している場合はターミナルを開く)
non-root sudo user
またはroot user
へのアクセス 。non-root sudo user
として行動することをお勧めします ただし、ルートとして機能するときに注意しないと、システムに害を及ぼす可能性があるためです。
キャディー機能
- 自動HTTPS。
- 簡単な導入。
- マルチコア。
- WebSocket。
- 書き換えとリダイレクト。
- 仮想ホスト。
CentOS7にCaddyWebサーバーをインストールする
ステップ1.まず、システムが最新であることを確認することから始めましょう。
yum clean all yum -y update
ステップ2.CentOS7にCaddyWebサーバーをインストールします。
Caddyのインストールは、次のコマンドを実行するだけですばやく簡単に行えます。
curl https://getcaddy.com | bash
スクリプトが終了したら、次のコマンドを実行して、Caddyのバイナリファイルがどこにあるかを確認できます。
which caddy
出力は次のようになります:
/usr/local/bin/caddy
ステップ3.必要なディレクトリを設定します。
次に、Caddy構成ファイルのCaddyfileとSSL証明書を保存するディレクトリを作成します。
mkdir /etc/caddy chown -R root:caddy /etc/caddy touch /etc/caddy/Caddyfile mkdir /etc/ssl/caddy chown -R caddy:root /etc/ssl/caddy chmod 0770 /etc/ssl/caddy mkdir /var/www chown caddy:caddy /var/www
ステップ4.システムサービスとしてのCaddyのインストール。
新しいSystemD構成スクリプトも作成する必要があります:
cd /etc/systemd/system/ nano caddy.service
次の行を追加します:
[Unit] Description=Caddy HTTP/2 web server Documentation=https://caddyserver.com/docs After=network-online.target Wants=network-online.target systemd-networkd-wait-online.service [Service] Restart=on-failure StartLimitInterval=86400 StartLimitBurst=5 ; User and group the process will run as. User=caddy Group=caddy ; Letsencrypt-issued certificates will be written to this directory. Environment=CADDYPATH=/etc/ssl/caddy ; Always set "-root" to something safe in case it gets forgotten in the Caddyfile. ExecStart=/usr/local/bin/caddy -log stdout -agree=true -conf=/etc/caddy/Caddyfile -root=/var/tmp ExecReload=/bin/kill -USR1 $MAINPID ; Limit the number of file descriptors; see `man systemd.exec` for more limit settings. LimitNOFILE=1048576 ; Unmodified caddy is not expected to use more than that. LimitNPROC=64 ; Use private /tmp and /var/tmp, which are discarded after caddy stops. PrivateTmp=true ; Use a minimal /dev PrivateDevices=true ; Hide /home, /root, and /run/user. Nobody will steal your SSH-keys. ProtectHome=true ; Make /usr, /boot, /etc and possibly some more folders read-only. ProtectSystem=full ; … except /etc/ssl/caddy, because we want Letsencrypt-certificates there. ; This merely retains r/w access rights, it does not add any new. Must still be writable on the host! ReadWriteDirectories=/etc/ssl/caddy ; The following additional security directives only work with systemd v229 or later. ; They further retrict privileges that can be gained by caddy. Uncomment if you like. ; Note that you may have to add capabilities required by any plugins in use. ;CapabilityBoundingSet=CAP_NET_BIND_SERVICE ;AmbientCapabilities=CAP_NET_BIND_SERVICE ;NoNewPrivileges=true [Install] WantedBy=multi-user.target
所有者と権限を設定します:
chown root:root /etc/systemd/system/caddy.service chmod 644 /etc/systemd/system/caddy.service
最後に、次のコマンドを実行して、Caddyが起動時に実行できるようにします。
systemctl enable caddy systemctl start caddy
ステップ5.テストWebページとキャディファイルを作成します。
テストの目的で、テストHTMLファイルを作成します:
mkdir -p /var/www/my-domain.com echo "Caddy" > /var/www/idroot.us/index.html chown -R www-data: /var/www/my-domain.com
次に、ドメインをCaddy構成ファイルに追加します:
nano /etc/caddy/Caddyfile
次の行を追加します:
my-domain.com { root /var/www/idroot.us }
ファイルを保存してエディターを終了します。変更を適用するには、Caddyを再起動します:
systemctl restart caddy.service
これで、Webブラウザーを使用して、https://my-domain.com
にアクセスするだけです。 、テストページが表示されます!
おめでとうございます!Caddyが正常にインストールされました。CentOS7システムにCaddy Webサーバーをインストールするためにこのチュートリアルを使用していただきありがとうございます。追加のヘルプや役立つ情報については、公式のCaddyWebを確認することをお勧めします。サーバーのWebサイト。