使用openssl对文件进行加密
发表于|更新于|基础运维
使用密码加密
1 | # 指定输入和输出文件操作 |
使用密码解密
1 | # 指定输入和输出文件操作 |
文章作者: 张理坤
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 杂烩饭!
相关推荐
2025-04-11
检查域名支持的HTTPS协议版本
使用 NMAP(推荐)依赖于 nmap, nmap 需要安装 比如 GitHub 只支持 TLS1.2 和 TLS1.3: 在线验证SSL Server Test (Powered by Qualys SSL Labs) 这个域名还可以检测支持的设备情况。 https://myssl.com/ https://www.ssleye.com/ssltool/cipher_suites.html https://www.site24x7.com/zhcn/tools/tls-checker.html 使用 CURL 验证 报错说明不支持当前版本: 使用 OpenSSL 如果握手失败的话,那么就是不支持了。 服务端 TLS 版本配置可以通过配置服务端,比如 nginx 来设置支持的 TLS 版本. Nginx 配置修改配置生成地址: https://ssl-config.mozilla.org/ 注意: tls 版本的配置必须全局生效,如果你有多个 vhost,那么所有都需要修改,建议直接写到一个文件内,然后通过 include 的方式来引用。 常见问题ssl_ciph...

2026-07-14
HTTPS的原理,使用HTTPS就一定是安全的吗?
HTTPS 是什么以前一直以为 HTTPS 是一种与 HTTP 类似的应用层协议,后来才发现 HTTPS 并不是一种协议。https 只是在 URI 中作为 protocol identifier 罢了。HTTPS 其实是 HTTP Over TLS( RFC2818 )的简称,也就是运行在 TLS 协议上的 HTTP 协议,使用 TLS 协议对 HTTP 数据进行加密,从而保证了安全性。 TLS 协议简介HTTPS 的核心就是 TLS 协议,那么 TLS 协议又是什么呢?TLS 的全称为 Transport Layer Security,也就是在传输层保证安全 RFC5246。主要分为以下四个协议: handshake protocol,用来建立连接、身份认证、密钥协商 alert protocol,用来关闭连接 change cipher spec protocol,用来表示开始使用协商好的加密方式进行数据传输 application data protocol,用来传输密文 TLS 协议中最重要的就是 handshake 了,在握手阶段通信双方以安全的方式协商好用于之后...
2026-07-14
gpg使用记录
要了解什么是 GPG,就要先了解 PGP。 1991 年,程序员 Phil Zimmermann 为了避开政府监视,开发了加密软件 PGP。这个软件非常好用,迅速流传开来,成了许多程序员的必备工具。但是,它是商业软件,不能自由使用。所以,自由软件基金会决定,开发一个 PGP 的替代品,取名为 GnuPG。这就是 GPG 的由来。 GPG 有许多用途,本文主要介绍文件加密。至于邮件的加密,不同的邮件客户端有不同的设置。 当前我的系统环境是 Ubuntu 22.04 gpg 版本是 gpg (GnuPG) 2.2.27。 Key 管理Key ID: 该 GPG Key 的唯一标识,值为主公钥的指纹,支持多种格式 (Fingerprint, Long key ID, Short key ID)。UID: 1 个或多个,每个 UID 由 name、email、comment 组成,email 和 comment 可以为空。Expire: 过期时间,可以为永久。主秘钥和主公钥(Primary Key)、子秘钥和子公钥(Sub Key)都是成对出现的,其用途也是一致的。每一对都包含一个 ke...
2025-08-24
使用openssl制作自签名双向认证(mTLS)证书
可以直接使用我制作好的工具,支持自签名 HTTPS 证书和双向认证证书,纯 shell 脚本,支持 Docker 使用,一键生成证书:https://github.com/iuxt/my_cert 双向认证用途是什么: 双向认证就是客户端需要携带证书来请求服务器,证书校验通过了才会正常返回。比如说我有个网站只有自己访问,就可以配置双向认证,自己电脑安装一下证书就可以访问,还可以通过吊销证书的方式来禁止对应的人访问网站。 CA 证书生成 CA 私钥 生成一个 ca.key 文件 生成 CA 证书非交互式创建交互式创建 需要交互式输入: 提示 含义 输入内容 Country Name 国家 CN State or Province Name 省 Shanghai Locality Name 市 留空 Organization Name 组织名,公司名 iuxt Organizational Unit Name 团体名 留空 Common Name 你的名字或域名 zhanglikun Email Address 电子邮箱 iuxt@qq.com...
2025-05-22
使用acme.sh来自动更新https证书
使用 acme.sh 可以自动申请 let’s encrypt 证书,并且可以自动配置到 nginx,整个过程可以全自动。也可以使用 certbot,certbot 基于 acme.sh使用certbot自动申请ssl证书 安装推荐安装 socat 安装 acme.sh 退出终端,重新登陆后,执行 acme.sh 有输出,说明安装成功了。 配置邮箱 配置默认 CA新版默认 zerossl,也可以手动切换为 let’s encrypt 申请证书acme.sh 实现了 acme 协议支持的所有验证协议.一般有两种方式验证: http 和 dns 验证. 使用 dns api 自动申请官方说明: https://github.com/acmesh-official/acme.sh/wiki/dnsapi DNSpod这里以 dnspod 为例,申请一个 dnspod 的 api key 将 id 和 key 记录下来,执行 执行一次就会把 id 和 key 记录在 ~/.acme.sh/account.conf,下次再执行就不用再提供 id 和 key 了 如果找...
2026-07-14
Nginx配置双向认证
单项认证只需要服务器提供证书即可, 不验证客户端证书, 而双向认证需要验证服务器证书,也需要验证客户端证书, 不满足要求的客户端可以不允许其访问, 并且可以通过后期吊销证书的方式禁止其访问. 证书签名可以参考: 使用certbot自动申请ssl证书 使用acme.sh来自动更新https证书 制作和使用自签名证书 本文提到的 client.crt server.crt 都是通过 ca 签发的 服务器配置Nginx 配置: 代理配置比如服务器是开启了双向认证的, 我想用一台 Nginx 做代理, 证书都绑定到这台代理机器上面, 平常访问就访问这台代理 Nginx 就行了, 客户端不用再配置证书了. Nginx 配置: 如果你遇到访问 nginx 报错 502 的,恰好你的系统又是 RedHat 系, 可以尝试关闭 Selinux 使用 curl 测试
公告
此博客为我记录运维工作总结所用,供网友阅读参考,如有侵权,请通知我,我会核实后进行处理。
欢迎加博主微信,进微信运维技术交流群:

