Let's Encrypt 是一个新的免费的,自动的,开源的认证中心。
Certbot是Let's Encrypt的基于控制台的证书生成工具。
本文我们将使用Certbot生成Let's Encrypt证书。该证书将被部署在Minio服务器中使用。
- 执行
certbot
时,需要打开443端口并确保可以访问。 - Certbot需要有root权限,因为只有root才允许绑定1024以下的端口。
- 本文我们将使用
myminio.com
这个域名,请在设置时改成你自己的域名。
参考这里安装Certbot。
# certbot certonly --standalone -d myminio.com --staple-ocsp -m [email protected] --agree-tos
列出/etc/letsencrypt/live/myminio.com
里的证书。
$ ls -l /etc/letsencrypt/live/myminio.com
total 4
lrwxrwxrwx 1 root root 37 Aug 2 09:58 cert.pem -> ../../archive/myminio.com/cert4.pem
lrwxrwxrwx 1 root root 38 Aug 2 09:58 chain.pem -> ../../archive/myminio.com/chain4.pem
lrwxrwxrwx 1 root root 42 Aug 2 09:58 fullchain.pem -> ../../archive/myminio.com/fullchain4.pem
lrwxrwxrwx 1 root root 40 Aug 2 09:58 privkey.pem -> ../../archive/myminio.com/privkey4.pem
-rw-r--r-- 1 root root 543 May 10 22:07 README
Certbot生成的证书和key需要放到用户的home文件夹里。
$ cp /etc/letsencrypt/live/myminio.com/fullchain.pem /home/user/.minio/certs/public.crt
$ cp /etc/letsencrypt/live/myminio.com/privkey.pem /home/user/.minio/certs/private.key
$ sudo chown user:user /home/user/.minio/certs/private.key
$ sudo chown user:user /home/user/.minio/certs/public.crt
启动Minio Server,使用443端口。
$ sudo ./minio server --address ":443" /mnt/data
如果你用的是Minio Docker版,则你需要
$ sudo docker run -p 443:443 -v /home/user/.minio:/root/.minio/ -v /home/user/data:/data minio/minio server --address ":443" /data