单机部署minio,设置Nginx代理,配置https(TLS)访问
安装
下载地址:https://dl.min.io/
# 创建目录
mkdir -p /usr/local/minio/{data,bin,etc}
# 下载minio
wget https://dl.min.io/server/minio/release/linux-amd64/minio -P /usr/local/minio/bin/
# 授予minio文件执行权限
cd /usr/local/minio/bin && chmod +x minio
# 创建minio用户
useradd -s /sbin/nologin -d /var/lib/minio minio
# 更改minio相关目录、文件的所有者、所有组
chown -R minio:minio /usr/local/minio/
# 创建配置文件:/usr/local/minio/etc/minio.conf
MINIO_VOLUMES="/usr/local/minio/data"
#端口:默认9000
MINIO_OPTS="--address ':9000' --console-address ':9001' --config-dir /usr/local/minio/etc/"
#登录名
#MINIO_ACCESS_KEY=minio #过期配置
MINIO_ROOT_USER=minio
#登录密码
#MINIO_SECRET_KEY=minio #过期配置
MINIO_ROOT_PASSWORD=minio
# 创建service文件:/etc/systemd/system/minio.service
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/minio/bin/minio
[Service]
# User and group
User=minio
Group=minio
EnvironmentFile=/usr/local/minio/etc/minio.conf
ExecStart=/usr/local/minio/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
# Let systemd restart this service always
Restart=always
# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=65536
# Disable timeout logic and wait until process is stopped
TimeoutStopSec=infinity
SendSIGKILL=no
[Install]
WantedBy=multi-user.target
# 重新加载、生效minio.service文件(以上两个文件配置发生变更后需要执行)
systemctl daemon-reload
# 启动、关闭、查看进程状态、开机启动
systemctl start minio
systemctl stop minio
systemctl status minio
systemctl enable minio.service
# 防火墙放行端口:9000
firewall-cmd --zone=public --add-port=9000/tcp --permanent
firewall-cmd --zone=public --add-port=9001/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports
# 查看minio服务日志
journalctl -u minio.service
# 倒序查看日志
journalctl -r -u minio.service
# 查看时间段内的服务日志
journalctl --since "2020-01-01 20:00:00" --until "2020-02-01 20:15:00"
为MinIO Server设置Nginx代理
参考文档:http://docs.minio.org.cn/docs/master/setup-nginx-proxy-with-minio
参考另一篇文章:https://www.cnblogs.com/sanduzxcvbnm/p/15988362.html
注:nginx和minio是安装在同一系统上的
修改nginx配置文件 /usr/local/nginx/conf/nginx.conf
upstream minio_gateway {
server 127.0.0.1:9000 weight=1 max_fails=2 fail_timeout=10s;
}
server {
listen 19000;
server_name localhost:19000;
location / {
proxy_set_header Host $http_host;
proxy_pass http://minio_gateway;
}
}
我这边对外提供访问minio的端口号是19000,当浏览器访问 IP:19000 时,nginx会代理转发给 minio_gateway (即 localhost:9000)
登录账号名、密码 见 /usr/local/minio/etc/minio.conf 中的 MINIO_ROOT_USER、MINIO_ROOT_PASSWORD
配置Minio服务使用TLS
# 查看本机ip
# ip addr
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:6a:65:07 brd ff:ff:ff:ff:ff:ff
inet 192.168.20.102/24 brd 192.168.20.255 scope global noprefixroute dynamic ens32
valid_lft 1547sec preferred_lft 1547sec
inet6 fe80::45cc:6455:6bb0:4d86/64 scope link noprefixroute
valid_lft forever preferred_lft forever
我的IP是:192.168.20.102
# 编辑文件 /etc/pki/tls/openssl.cnf
找到[ v3_ca ],新增一行: subjectAltName=IP:192.168.20.102
# 不编辑openssl.cnf文件的后果就是:minio控制台登录不了
# 创建目录/usr/local/minio/etc/certs 后进入,如果已存在可直接进入,在当前目录使用 OpenSSL 来生成私钥文件和自签名证书
生成私钥: openssl genrsa -out private.key 2048
生成自签名证书: openssl req -new -x509 -days 3650 -key private.key -out public.crt -subj "/C=US/ST=state/L=location/O=organization/CN=domain"
最后检查/usr/local/minio/etc/certs目录是否属于minio:minio,如果不是就需要执行以下命令: chown -R minio:minio /usr/local/minio/etc/certs
# 重新启动minio
systemctl restart minio
单机部署minio,设置Nginx代理,配置https(TLS)访问的更多相关文章
- 使用容器运行的minio配置https(TLS)访问
使用certgen生成证书 下载地址:https://github.com/minio/certgen/releases/tag/v0.0.2 下载地址:https://files.cnblogs.c ...
- 使用docker部署nginx并配置https
我只有一台服务器,但我想在这台服务器上运行多个项目,怎么办? 总不能靠加端口区分吧? 百度和Google是个好东西,于是我找到了答案,使用nginx. 通过nginx,我可以给我的一台服务器配置两个域 ...
- 第十四章 nginx代理配置
一.nginx代理 1.常见模式 1.常见模式:1)正向代理2)反向代理2.区别1)区别在于形式上服务的"对象"不一样2)正向代理代理的对象是客户端,为客户端服务3)反向代理代理 ...
- 【转】Linux下nginx配置https协议访问的方法
一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...
- Linux服务之nginx服务篇四(配置https协议访问)
一.配置nginx支持https协议访问 编译安装nginx的时候需要添加相应的模块--with-http_ssl_module和--with-http_gzip_static_module(可通过/ ...
- nginx代理配置 配置中的静态资源配置,root 和 alias的区别。启动注意事项
这篇主要内容是:nginx代理配置 配置中的静态资源配置,root 和 alias的区别.启动注意事项! 为什么会在window上配置了nginx呢?最近我们的项目是静态资源单独放在一个工程里面,后端 ...
- nginx代理配置 配置中的静态资源配置,root 和 alias的区别
这篇主要内容是:nginx代理配置 配置中的静态资源配置,root 和 alias的区别.启动注意事项! 为什么会在window上配置了nginx呢?最近我们的项目是静态资源单独放在一个工程里面,后端 ...
- Nginx代理配置-centos6.10版
nginx代理配置 cd /etc/nginx/init.d vi default.conf 添加: upstream server1{ server 192.168.125.128:8100 wei ...
- NGINX 代理以及 HTTPS (一)
一. Nginx 安装 和基础代理配置 假如 启动nginx 出现这个错误,可能是 iis服务被打开了,80端口被占用了. 需要如下操作: 用Nginx 配置一个test.com 的代理名称.配置ho ...
随机推荐
- Thread和Runnable的区别和匿名内部类方式实现线程的创建
如果一个类继承Thread,则不适合资源共享.但是如果实现了Runable接口的话,则很容易的实现资源共享. 总结:实现Runnable接口比继承Thread类所具有的优势: 1.适合多个相同的程序代 ...
- 集合容器和Hash表
集合容器 集合相当于一个容器,在我们使用Arraylist的时候添加参数相当与放了一个容器中.这里面的元素是可以重复的 在HashSet中添加元素是没有重复的,我们来写一个测试看一下 public s ...
- for增强
package study5ran2yl.study; public class ForDemo02 { public static void main(String[] args) { int[] ...
- [javaweb]javaweb中HttpServletResponse实现文件下载,验证码和请求重定向功能
HttpServletResponse web服务器接受到客户端的http请求之后,针对这个请求,分别创建一个代表请求的httpServletRequest和代表响应的HttpServletRespo ...
- 常用的函数式接口Function接口和常用的函数式接口Function接口默认方法andThen
常用的函数式接口Function接口 package com.yang.Test.FunctionStudy; import java.util.function.Function; /** * ja ...
- 序列化和返序列化的概述和对象的序列化流ObjectOutputStream
序列化和返序列化的概述 对象的序列化流ObjectOutputStream Person类: package com.yang.Test.ObjectStreamStudy; import java. ...
- python编程思想及对象与类
目录 编程思想 面向对象 面向过程 对象与类的概念 对象与类的创建 对象的实例化方法-独有数据 编程思想 1.面向对象 1.1. 面向对象前戏 案例:人狗大战 # 需求:人狗大战# 1.'创造'出人和 ...
- 一键到位「GitHub 热点速览 v.22.32」
作者:HelloGitHub-小鱼干 上上周在 B 站观看了智能键盘--瀚文的制作过程,本周 GitHub 热榜上出现了它的软硬件开源项目 HelloWord-Keyboard,如果你的动手能力强不妨 ...
- Spring源码 11 IOC refresh方法6
参考源 https://www.bilibili.com/video/BV1tR4y1F75R?spm_id_from=333.337.search-card.all.click https://ww ...
- Excel 数学函数(二):ISODD 和 ISEVEN
ISODD 函数用于判断一个数是否为奇数:ISEVEN 函数用于判断一个数是否为偶数. 结合文本函数 MID 和逻辑函数 IF,来判断一个身份证的性别. 身份证倒数第二位是奇数就代表男性,否则代表女性 ...