温馨提示×

centos minio怎么用ssl

小樊
44
2026-10-08 19:18:50
栏目: 云计算

在 CentOS 上使用 MinIO 并启用 SSL(HTTPS),常见做法有两种:


一、准备 SSL 证书

方式 1:使用已有证书(推荐)

如果你已经有:

  • private.key
  • public.crt

直接放到 MinIO 的证书目录。

方式 2:使用 Let’s Encrypt(公网域名)

yum install -y certbot
certbot certonly --standalone -d minio.example.com

证书位置:

/etc/letsencrypt/live/minio.example.com/fullchain.pem
/etc/letsencrypt/live/minio.example.com/privkey.pem

二、MinIO 证书目录结构(关键)

MinIO 自动启用 SSL,只要证书放在正确位置:

/root/.minio/certs/

或(较新版本):

~/.minio/certs/

放入以下文件:

certs/
├── private.key
└── public.crt

✅ 文件名必须固定

示例:

mkdir -p ~/.minio/certs
cp fullchain.pem ~/.minio/certs/public.crt
cp privkey.pem  ~/.minio/certs/private.key

三、启动 MinIO(SSL 自动生效)

1️⃣ 二进制方式

minio server /data --address :9000

MinIO 检测到证书后,会自动:

  • HTTPS: https://IP:9000
  • Console: https://IP:9001

2️⃣ Systemd 方式(推荐)

/etc/systemd/system/minio.service

[Unit]
Description=MinIO
After=network.target

[Service]
User=minio
Group=minio
Environment="MINIO_ROOT_USER=admin"
Environment="MINIO_ROOT_PASSWORD=password"
ExecStart=/usr/local/bin/minio server /data --address :9000 --console-address :9001

[Install]
WantedBy=multi-user.target

重载并启动:

systemctl daemon-reload
systemctl restart minio

四、验证 SSL 是否生效

curl -k https://localhost:9000/minio/health/live

浏览器访问:

https://服务器IP:9000

五、常见问题

❌ 浏览器提示“证书不安全”

  • 自签名证书正常现象
  • 生产环境建议使用 Let’s Encrypt 或企业 CA

❌ MinIO 仍走 HTTP

检查:

ls -l ~/.minio/certs

确保:

  • private.key
  • public.crt
  • 权限 600

六、Nginx 反向代理(可选)

server {
    listen 443 ssl;
    server_name minio.example.com;

    ssl_certificate     /etc/letsencrypt/live/minio.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/minio.example.com/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:9000;
    }
}

如果你愿意,可以告诉我:

  • ✅ MinIO 版本
  • ✅ CentOS 版本
  • ✅ 是否用域名 / 内网

我可以给你完全贴合你环境的配置。

0 踩