- -LinuxにCaddy Webサーバーをインストールする方法

LinuxにCaddy Webサーバーをインストールする方法

最近では、Webサイトをホストする際にHTTPSが重要です。 これがないと、ユーザーは非常に個人的なデータをWebサイトから世界に漏らしている可能性があります。これを解決するために、多くのLinux Webマスターは、証明書の生成を非常に簡単にするため、LetsEncryptツールの使用に取り組みました。それでも、LetsEncrpytと同じくらい簡単なことですが、Nginxでそれを有効にしたり、LinuxでApacheを有効にしたりするのは少し面倒です。幸いなことに、より良い方法があります。 Caddy Webサーバーの紹介。デフォルトでHTTPSが有効になっているWebサーバー。 SSL証明書に悩まされている場合は、Caddyがまさに必要なものかもしれません。

Caddyのインストール

Caddy Webサーバーのインストールはほとんど機能しますどのサーバーオペレーティングシステムを使用していても同じです。 Caddyのインストールが非常に簡単な理由は、サードパーティのソフトウェアリポジトリを追加したり、バイナリでインストールしたりするのではなく、ダウンロード可能なBashスクリプトを使用してソフトウェアをインストールするという開発者の選択によるものです。

このチュートリアルでは、Ubuntu Serverを使用しますが、Caddyウェブサーバーを実行すると、デスクトップOSを含め、他のほとんどのLinux OSでも問題なく動作します。始めるために、あなたが持っていることを確認してください カール Linux PC上のアプリ。そうでない場合は、ターミナルを開き、パッケージマネージャーで「カール」を検索してインストールします。

注:実行して既にcurlがあるかどうかを判別します カール ターミナルで。プログラムの「ヘルプ」ダイアログが表示された場合、 カール Linuxマシンで。

curl https://getcaddy.com | bash -s personal

Caddy Webサーバーは個人使用に無料で使用できますが、指定する必要があります。 Caddyをエンタープライズ環境で使用する予定ですか?次のコマンドでインストールコマンドを実行します。

curl https://getcaddy.com | bash -s commercial

Curlを実行すると、Bashを介してパイプされ、インストールプロセスが自動的に開始されます。 Caddyインストーラーは、Webサーバーのバイナリをダウンロードして配置するのに時間がかかります / usr / local / bin / ディレクトリ。インストールが成功すると、「正常にインストールされました」というメッセージが表示されます。

この時点で、Caddyバイナリを変更する必要があります。ターミナルで次のコマンドを実行します。 須藤 特権。

sudo setcap cap_net_bind_service=+ep /usr/local/bin/caddy

キャディの構成

Caddyがサーバーにインストールされます。 プロセスの次のステップは、ディレクトリ構造を構成することです。ルート端末を取得することから始めます。これを行うと、入力する必要がないため、ファイルシステム内のフォルダの変更がはるかに高速になります。 須藤 コマンドごとに、パスワードが続きます。

ほとんどのシステムでは、ユーザーは以下を使用してルートアカウントに直接ログインできます。

su

ただし、Ubuntuサーバーでは、セキュリティ上の理由からRootアカウントがロックされています。これを回避するには、次のコマンドでルートシェルを取得します。 須藤.

sudo -s

ルートアクセスができたので、Caddyサーバーが正しく動作するために必要なディレクトリを作成します。

mkdir /etc/caddy
mkdir /etc/ssl/caddy

注:サーバーに既に / var / www / ディレクトリ、この最後をスキップ mkdir コマンド。

mkdir /var/www

次に、新しい「Caddyfile」を内部に作成します / etc / caddy /.

touch /etc/caddy/Caddyfile

を使用して chmod コマンド、内のCaddyサブフォルダーのアクセス許可を更新します / etc / ssl /.

chmod 0770 /etc/ssl/caddy

最後に、 チャウン その / var / www / ディレクトリ:

chown www-data: /var/www

キャディシステムファイル

ほとんどのサーバー、特にUbuntuサーバーは重いsystemd initシステムの使用。ただし、WebサーバーはBashスクリプトを介してインストールされるため、systemdファイルは存在しません。代わりに、独自に作成する必要があります。使用 タッチ 新しい空のサービスファイルを作成するコマンド。

touch /lib/systemd/system/caddy.service

新しいものを開く caddy.service ファイルし、次のコードをそこに貼り付けます。

[Unit]
Description=Caddy HTTP/2 web server
Documentation=https://caddyserver.com/docs
After=network-online.target
Wants=network-online.target

[Service]
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5

User=www-data
Group=www-data
; Letsencrypt-issued certificates will be written to this directory.
Environment=CADDYPATH=/etc/ssl/caddy

ExecStart=/usr/local/bin/caddy -log stdout -agree=true -conf=/etc/caddy/Caddyfile -root=/var/tmp
ExecReload=/bin/kill -USR1 $MAINPID

LimitNOFILE=1048576
LimitNPROC=64

PrivateTmp=true
PrivateDevices=true
ProtectHome=true
ProtectSystem=full
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

には多くのコードがあります caddy.service ファイル、すべてがそこにあることを確認するために最善を尽くします。確信したら、を押して変更を保存します Ctrl + X キーボードの組み合わせ。でエディターを終了します Ctrl + X.

systemctl enable caddy.service
systemctl start caddy.service

systemdをセットアップしたら、すべての準備が整います。

ドメインのセットアップ

Caddyは、他のWebサーバーと同様に、使用する前に少し設定が必要です。ドメインフォルダを作成することから始めます。

注:必ず「test-domain.org」の名前をドメインに変更してください。

mkdir -p /var/www/test-domain.org/

次に、ファイルを編集します キャディファイル 前に作成しました。

nano /etc/caddy/Caddyfile

次のコードを貼り付けて、新しいドメインを有効にします。

my-domain.com {
root /var/www/test-domain.org
}

Caddy systemdサービスを再起動して、変更を保存します。サービスの再起動が完了すると、Caddyはサーバーで使用できるようになります。

systemctl restart caddy.service
</ p>

コメント