Home  >  Article  >  Web Front-end  >  Caddy: Free SSL over server

Caddy: Free SSL over server

DDD
DDDOriginal
2024-10-31 04:58:02726browse

Caddy: Free SSL over server

I have always been a fan of Nginx, but with Nginx, I always have to buy SSL for the domain configuration, with HTTPS. And, when it comes to Wildcard SSL, it costs more than the normal SSL.

Recently, I have been working with a server architect, and I came to know about Caddy - The Ultimate Server, and it's fascinating to see how it can obtain and renew the SSL certificates, automatically.

It provides the same features as Nginx but with fewer configurations and security has been added automatically too.

It supports Compression, Virtual file systems, TLS configurations, etc.

How to configure it in AWS: EC2

I created an EC2 instance, with AMI ( Amazon Linux v3 ) as an image.

After creating an instance, you can connect it either via SSH or directly through the EC2, and then you have to enter the following commands to install it

sudo yum -y install yum-plugin-copr
sudo yum -y copr enable @caddy/caddy epel-8-$(arch)
sudo yum -y install caddy

This will install the caddy server in the EC2 instance.

Creating the CaddyFile

After installing the caddy in your EC2 instance, you have to create a Caddyfile, in /etc/caddy folder.

To create the Caddyfile, you have to enter the below command.

sudo nano /etc/caddy/Caddyfile

And, after creating the file, you have to enter the following configuration

domain_name {
    reverse_proxy Ip_address:port 
}

For example, I have deployed the frontend and backend code in the EC2 and now I want to configure the caddy for the frontend and backend, by attaching the domain name to it.

app.aceinterview.co {
    reverse_proxy 3.24.60.134:3000
}

api.aceinterview.co {
    reverse_proxy 3.24.60.145:8000
}

As you can see in the example, I configured two different domains, one for the frontend and the other for the backend.

Run the caddy server

First, you have to enable the caddy server.

sudo systemctl enable caddy

The above step will create the symlink of the caddy.

Then, you have to start the caddy

sudo systemctl start caddy

Hurray!. Your caddy server configuration is completed. Now, you got reverse proxy, SSL configuration, etc.

More commands to handle caddy in EC2.

To stop the caddy server

sudo systemctl stop caddy

If you change something in Caddyfile, then you have to restart it to take effect.

sudo systemctl restart caddy

Today I have highlighted the basic setup of caddy, and this setup will do the most of the job. For more information, you can directly checkout the caddy server website https://caddyserver.com/

The above is the detailed content of Caddy: Free SSL over server. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn