12/30
This commit is contained in:
parent
86361331a0
commit
eecbe4fa4e
@ -1,4 +1,4 @@
|
|||||||
# 2024/12/26 日报
|
# 2024/12/27 日报
|
||||||
|
|
||||||
### 做了什么
|
### 做了什么
|
||||||
|
|
||||||
@ -99,7 +99,6 @@ server {
|
|||||||
|
|
||||||
- 处理客户问题
|
- 处理客户问题
|
||||||
- 鉴权token拿不到 版本问题
|
- 鉴权token拿不到 版本问题
|
||||||
-
|
|
||||||
|
|
||||||
### 学了什么
|
### 学了什么
|
||||||
|
|
||||||
|
73
20241230 日报.md
Normal file
73
20241230 日报.md
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
# 2024/12/30 日报
|
||||||
|
|
||||||
|
### 做了什么
|
||||||
|
|
||||||
|
- 编写证书获取文档windows部分
|
||||||
|
|
||||||
|
#### 1: 下载 win-acme
|
||||||
|
|
||||||
|
1. 访问 win-acme 的 [GitHub 页面](https://github.com/win-acme/win-acme)。
|
||||||
|
2. 下载最新版本的 ZIP 文件(通常是 `wacs-x.x.x.xxx.zip`)。
|
||||||
|
3. 解压到一个文件夹,例如 `C:\win-acme\`。
|
||||||
|
|
||||||
|
#### 2: 运行 win-acme
|
||||||
|
|
||||||
|
1. 打开命令提示符(以管理员身份运行)。
|
||||||
|
|
||||||
|
2. 导航到 win-acme 文件夹:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
cmd
|
||||||
|
复制代码
|
||||||
|
cd C:\win-acme
|
||||||
|
```
|
||||||
|
|
||||||
|
3. 运行主程序:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
cmd
|
||||||
|
复制代码
|
||||||
|
wacs.exe
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 3: 配置证书
|
||||||
|
|
||||||
|
运行 `wacs.exe` 后,您会看到一个交互式菜单,按照提示操作:
|
||||||
|
|
||||||
|
1. **选择选项**:选择 `N` 以创建新的 HTTPS 绑定。
|
||||||
|
|
||||||
|
2. **输入域名**:输入要申请证书的域名(如 `example.com`)。
|
||||||
|
|
||||||
|
3. **验证域名**
|
||||||
|
|
||||||
|
:**选择验证方式**:
|
||||||
|
|
||||||
|
- **HTTP-01 验证**:确保域名指向服务器的公网 IP,并且可以通过 80 端口访问。
|
||||||
|
- **DNS-01 验证**:需要配置 DNS TXT 记录(适合无 80 端口访问的情况)。
|
||||||
|
|
||||||
|
4. **证书生成**:成功验证后,win-acme 会自动生成证书。
|
||||||
|
|
||||||
|
#### 4: 配置证书路径
|
||||||
|
|
||||||
|
win-acme 生成的证书路径通常位于:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
复制代码
|
||||||
|
C:\ProgramData\win-acme\acme-v02.api.letsencrypt.org\Certificates
|
||||||
|
```
|
||||||
|
|
||||||
|
证书文件包括:
|
||||||
|
|
||||||
|
- `.pfx` 文件:包含证书和私钥,适合导入到 IIS 等 Windows 服务。
|
||||||
|
- `.pem` 文件:可用于 Nginx 等服务器。
|
||||||
|
|
||||||
|
##### 处理客户问题
|
||||||
|
|
||||||
|
- EasyNvr7.3.8版本更新会失败
|
||||||
|
- 鉴权问题登录会返回一个验证 ,然后用这个验证去做直播预览处理
|
||||||
|
- 第三方鉴权
|
||||||
|
- 三方鉴权返回200 但是接口返回未鉴权
|
||||||
|
|
||||||
|
### 学了什么
|
||||||
|
|
||||||
|
- 无
|
Before Width: | Height: | Size: 630 KiB After Width: | Height: | Size: 630 KiB |
@ -11,4 +11,4 @@
|
|||||||
- **海康设备用onvif协议带不出通道名**---EasyNVR交流群(客户:我的世界叫你)
|
- **海康设备用onvif协议带不出通道名**---EasyNVR交流群(客户:我的世界叫你)
|
||||||
- 可以使用onvif device manager查看通道名称
|
- 可以使用onvif device manager查看通道名称
|
||||||
- 或者使用抓包软件抓取读取的通道信息看是否一致
|
- 或者使用抓包软件抓取读取的通道信息看是否一致
|
||||||
- ![通道名字带不出来](D:\日报\zhaowei\技术支持\通道名字带不出来.png)
|
- ![通道名字带不出来](D:\日报\zhaowei\技术支持\图片\通道名字带不出来.png)
|
159
技术支持/证书获取方法.md
159
技术支持/证书获取方法.md
@ -1,9 +1,7 @@
|
|||||||
|
# 在 Ubuntu系统上:
|
||||||
|
|
||||||
## 1.安装 Certbot
|
## 1.安装 Certbot
|
||||||
|
|
||||||
Certbot 是 Let's Encrypt 推荐的客户端,用于自动化证书的获取和续期。
|
|
||||||
|
|
||||||
#### 在 Ubuntu系统上:
|
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
bash
|
bash
|
||||||
sudo apt update
|
sudo apt update
|
||||||
@ -13,35 +11,76 @@ sudo apt install python3-certbot-nginx # 安装certbot-Nginx插件
|
|||||||
|
|
||||||
## 2. 生成 SSL 证书
|
## 2. 生成 SSL 证书
|
||||||
|
|
||||||
Certbot 需要在服务器上通过 HTTP 或 DNS 验证域名所有权。
|
#### 2.1使用 Nginx 进行自动配置
|
||||||
|
|
||||||
#### 使用 Nginx 进行自动配置
|
|
||||||
|
|
||||||
如果你使用的是 Nginx 服务器,可以通过 Certbot 自动配置 SSL 证书。
|
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
bash
|
bash
|
||||||
复制代码
|
复制代码
|
||||||
sudo certbot --nginx -d example.com -d www.example.com
|
sudo certbot --nginx -d example.com
|
||||||
```
|
```
|
||||||
|
|
||||||
-
|
- `-d example.com 是你要为其申请证书的域名。
|
||||||
- `-d example.com -d www.example.com` 是你要为其申请证书的域名。
|
|
||||||
- Certbot 会自动配置 Nginx,使得你的站点使用 HTTPS 协议。
|
- Certbot 会自动配置 Nginx,使得你的站点使用 HTTPS 协议。
|
||||||
|
|
||||||
#### 手动获取证书
|
#### 2.2使用 Nginx 仅获取证书(手动配置)
|
||||||
|
|
||||||
|
如果您只想获取证书而不让 Certbot 自动配置 Nginx,可以使用以下命令:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
bash
|
||||||
|
复制代码
|
||||||
|
sudo certbot certonly --nginx
|
||||||
|
```
|
||||||
|
|
||||||
|
证书文件生成后,默认保存路径为:
|
||||||
|
|
||||||
|
- **证书文件**:`/etc/letsencrypt/live/example.com/fullchain.pem`
|
||||||
|
- **私钥文件**:`/etc/letsencrypt/live/example.com/privkey.pem`
|
||||||
|
|
||||||
|
#### 2.3手动获取证书
|
||||||
|
|
||||||
如果你没有使用自动配置工具,或者使用其他类型的 Web 服务器,你可以手动获取证书。
|
如果你没有使用自动配置工具,或者使用其他类型的 Web 服务器,你可以手动获取证书。
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
bash
|
bash
|
||||||
复制代码
|
复制代码
|
||||||
sudo certbot certonly --manual -d example.com -d www.example.com
|
sudo certbot certonly --manual -d example.com
|
||||||
```
|
```
|
||||||
|
|
||||||
Certbot 会引导你通过 DNS 或 HTTP 验证来证明你拥有域名的所有权。
|
Certbot 会引导你通过 DNS 或 HTTP 验证来证明你拥有域名的所有权。
|
||||||
|
|
||||||
- 手动获取证书后
|
#### 2.4使用 Standalone 模式获取证书
|
||||||
|
|
||||||
|
如果您的服务器没有运行 Nginx,或您暂时关闭了 Nginx 服务,可以使用 Standalone 模式获取证书:
|
||||||
|
|
||||||
|
##### 停止 Nginx 服务:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
bash
|
||||||
|
复制代码
|
||||||
|
sudo systemctl stop nginx
|
||||||
|
```
|
||||||
|
|
||||||
|
##### 获取证书:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
bash
|
||||||
|
复制代码
|
||||||
|
sudo certbot certonly --standalone -d example.com
|
||||||
|
```
|
||||||
|
|
||||||
|
- `-d` 参数指定域名。
|
||||||
|
- Certbot 会启动一个临时的 HTTP 服务器,监听 80 端口,用于域名验证。
|
||||||
|
|
||||||
|
##### 启动 Nginx 服务:
|
||||||
|
|
||||||
|
完成证书生成后,重新启动 Nginx:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
bash
|
||||||
|
复制代码
|
||||||
|
sudo systemctl start nginx
|
||||||
|
```
|
||||||
|
|
||||||
### 3. 验证证书获取成功
|
### 3. 验证证书获取成功
|
||||||
|
|
||||||
@ -74,7 +113,7 @@ sudo vi /etc/nginx/sites-available/default #具体看你nginx的配置文件路
|
|||||||
```shell
|
```shell
|
||||||
server {
|
server {
|
||||||
listen 80;
|
listen 80;
|
||||||
server_name example.com www.example.com;
|
server_name example.com;
|
||||||
# HTTP 到 HTTPS 的重定向
|
# HTTP 到 HTTPS 的重定向
|
||||||
return 301 https://$host:服务端口$request_uri; #如果要重定向注意是https
|
return 301 https://$host:服务端口$request_uri; #如果要重定向注意是https
|
||||||
}
|
}
|
||||||
@ -93,3 +132,91 @@ server {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### 5.配置自动续期
|
||||||
|
|
||||||
|
Let's Encrypt 证书有效期为 90 天。要避免证书过期,可以设置自动续期任务。
|
||||||
|
|
||||||
|
运行以下命令测试续期是否正常:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
bash
|
||||||
|
复制代码
|
||||||
|
sudo certbot renew --dry-run
|
||||||
|
```
|
||||||
|
|
||||||
|
添加一个 cron 任务定期检查续期:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
bash
|
||||||
|
复制代码
|
||||||
|
sudo crontab -e
|
||||||
|
```
|
||||||
|
|
||||||
|
添加以下内容:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
bash
|
||||||
|
复制代码
|
||||||
|
0 0 * * * certbot renew --quiet && systemctl reload nginx
|
||||||
|
```
|
||||||
|
|
||||||
|
# 在windows系统下
|
||||||
|
|
||||||
|
### 使用 win-acme 获取证书
|
||||||
|
|
||||||
|
#### 1: 下载 win-acme
|
||||||
|
|
||||||
|
1. 访问 win-acme 的 [GitHub 页面](https://github.com/win-acme/win-acme)。
|
||||||
|
2. 下载最新版本的 ZIP 文件(通常是 `wacs-x.x.x.xxx.zip`)。
|
||||||
|
3. 解压到一个文件夹,例如 `C:\win-acme\`。
|
||||||
|
|
||||||
|
#### 2: 运行 win-acme
|
||||||
|
|
||||||
|
1. 打开命令提示符(以管理员身份运行)。
|
||||||
|
|
||||||
|
2. 导航到 win-acme 文件夹:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
cmd
|
||||||
|
复制代码
|
||||||
|
cd C:\win-acme
|
||||||
|
```
|
||||||
|
|
||||||
|
3. 运行主程序:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
cmd
|
||||||
|
复制代码
|
||||||
|
wacs.exe
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 3: 配置证书
|
||||||
|
|
||||||
|
运行 `wacs.exe` 后,您会看到一个交互式菜单,按照提示操作:
|
||||||
|
|
||||||
|
1. **选择选项**:选择 `N` 以创建新的 HTTPS 绑定。
|
||||||
|
|
||||||
|
2. **输入域名**:输入要申请证书的域名(如 `example.com`)。
|
||||||
|
|
||||||
|
3. **验证域名**
|
||||||
|
|
||||||
|
:**选择验证方式**:
|
||||||
|
|
||||||
|
- **HTTP-01 验证**:确保域名指向服务器的公网 IP,并且可以通过 80 端口访问。
|
||||||
|
- **DNS-01 验证**:需要配置 DNS TXT 记录(适合无 80 端口访问的情况)。
|
||||||
|
|
||||||
|
4. **证书生成**:成功验证后,win-acme 会自动生成证书。
|
||||||
|
|
||||||
|
#### 4: 配置证书路径
|
||||||
|
|
||||||
|
win-acme 生成的证书路径通常位于:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
复制代码
|
||||||
|
C:\ProgramData\win-acme\acme-v02.api.letsencrypt.org\Certificates
|
||||||
|
```
|
||||||
|
|
||||||
|
证书文件包括:
|
||||||
|
|
||||||
|
- `.pfx` 文件:包含证书和私钥,适合导入到 IIS 等 Windows 服务。
|
||||||
|
- `.pem` 文件:可用于 Nginx 等服务器。
|
||||||
|
Loading…
Reference in New Issue
Block a user