easy-rsa 应用中的一个场景,生成 ca.crt, server.crt, server.key, dh.pem 等服务端证书配置和 client1.crt, client1.key 等客户端需要的证书配置,如何在 ubuntu 中来应用 easyrsa 来完成上述的事情?
首先哪里有 easyrsa? 可以利用 ubuntu 22 repo 安装
$ sudo apt install -y easy-rsa
这样 /usr/share/easy-rsa/
下面就有了 easyrsa 的安装。
现在我们把他拷贝到 /etc/easy-rsa/
目录下面
$ sudo cp -r /usr/share/easy-rsa/ /etc/
这样我们就可以在 /etc/easy-rsa/
下应用 easyrsa 来生成证书啦。
切换到 /etc/easy-rsa/
cd /etc/easy-rsa/
修改 vars.example
# cp vars.example vars
# vim vars
查看 ./easyrsa 的帮助
# ./easyrsa
...VIM 如何关闭某个 buffer?设想有这样的场景,你正在编辑一个配置文件,而这个配置文件引用了另一个配置文件作为指令的值,比如证书的路径。这个时候,你可以利用 VIM g-f
来跳转到这个路径下面对应的文件,如果这个路径地址是正确的话,那么你就能在 VIM 中打开了这个跳转的文件。好的,现在你已经在这个新的文件中了,而且你已经确认了文件没错。
然后,你想要返回之前的那个文件,你会怎么做呢?我想你会想到的是 :bn
或者 :bp
, 用来切换下一个buffer 或者上一个 buffer, 然而切换回来以后,这时候你又有一个新的某路径下配置文件被你打开了,渐渐的被打开的配置文件越来越多,而你切换却越来越麻烦,这时候你可能就会想我能不能关掉它们了,因为我只是临时性的查看了它们一下,而正在编辑的那个主文件才是重点。
于是,你试了试 :close
, 发现没有这个命令,或者报错说 Cannot close last window
, 然后你又试了试 :quit
想想肯定也不对,这个时候你懵了,答案究竟是什么呢?
是 :bd
, 或者 :bdelete
...请注意,关闭缓冲区后,其中的文件内容将不再显示
用编辑器打开 /etc/sysctl.conf
文件,然后修改参数 net.ipv4.ip_forward=1
,将该行解除注释。
# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
然后执行 sysctl -p
参数 -p
代表的含义是
-p, --load[=<file>] read values from file
通过 /proc/sys/net/ipv4/ip_forward
查看
# cat /proc/sys/net/ipv4/ip_forward
1
参考:
...要检查远程服务器的443端口对应的HTTPS证书是否过期,可以使用openssl命令来获取证书信息并检查过期日期。以下是在Ubuntu上执行此操作的步骤:
确保已经安装了openssl工具。如果未安装,可以使用以下命令进行安装: bash
sudo apt update
sudo apt install openssl
执行以下命令来检查证书的过期日期: bash
echo | openssl s_client -connect <远程服务器地址>:443> | openssl x509 -noout -dates
将 <远程服务器地址>
替换为实际的远程服务器的IP地址或域名。
该命令的作用是通过openssl与远程服务器建立连接,并获取证书的详细信息。然后使用openssl命令的x509
子命令来提取证书的过期日期信息。
notBefore=May 10 00:00:00 2022 GMT
notAfter=May 10 23:59:59 2023 GMT
{"code":"PARAM_ERROR","detail":{"location":"body","value":129},"message":"输入源“/body/description”映射到值字段“商品描述”字符串规则校验失败,字节数 129,大于最大值 127"}
这里 129 是一个动态的数字,表示提交的字节数。
对 description 字符串进行截取
description = substringByBytes(description, 127);
定义
function substringByBytes(str, n) {
let bytes = 0;
for (let i = 0; i < str.length; i++) {
// 获取当前字符的字节长度
const byteLen = str.charCodeAt(i) > 255 ? 2 : 1
...