<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Security on 七三的小站</title>
        <link>https://www.bg7pbp.com/tags/security/</link>
        <description>Recent content in Security on 七三的小站</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-cn</language>
        <copyright>WangYan</copyright>
        <lastBuildDate>Sat, 09 Nov 2024 00:00:00 +0800</lastBuildDate><atom:link href="https://www.bg7pbp.com/tags/security/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>GnuPG 安装与使用</title>
        <link>https://www.bg7pbp.com/p/gnupg-install-usage/</link>
        <pubDate>Sat, 09 Nov 2024 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/gnupg-install-usage/</guid>
        <description>&lt;h2 id=&#34;目录&#34;&gt;目录  &lt;!-- omit from toc --&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#1-%E5%85%B3%E4%BA%8E-gpg&#34;&gt;1. 关于 GPG&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#11-gpg-%E6%98%AF%E4%BB%80%E4%B9%88&#34;&gt;1.1. GPG 是什么?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#12-keyid-%E6%98%AF%E4%BB%80%E4%B9%88&#34;&gt;1.2. KEYID 是什么？&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#13-user-id-%E6%98%AF%E4%BB%80%E4%B9%88&#34;&gt;1.3. USER-ID 是什么？&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#2-%E5%AE%89%E8%A3%85-gpg&#34;&gt;2. 安装 GPG&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#21-macos&#34;&gt;2.1. macOS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#22-windows&#34;&gt;2.2. windows&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#23-linux&#34;&gt;2.3. Linux&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#3-gpg-%E5%AF%86%E9%92%A5%E7%AE%A1%E7%90%86&#34;&gt;3. GPG 密钥管理&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#31-%E7%94%9F%E6%88%90-gpg-%E5%AF%86%E9%92%A5%E5%AF%B9&#34;&gt;3.1. 生成 GPG 密钥对&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#32-%E5%88%97%E5%87%BA%E5%AF%86%E9%92%A5&#34;&gt;3.2. 列出密钥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#33-%E5%88%97%E5%87%BA%E6%8C%87%E7%BA%B9&#34;&gt;3.3. 列出指纹&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#34-%E7%94%9F%E6%88%90%E5%AD%90%E5%AF%86%E9%92%A5&#34;&gt;3.4. 生成子密钥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#35-%E5%88%A0%E9%99%A4%E5%AF%86%E9%92%A5&#34;&gt;3.5. 删除密钥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#36-%E5%AF%BC%E5%87%BA%E5%AF%86%E9%92%A5&#34;&gt;3.6. 导出密钥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#37-%E5%AF%BC%E5%85%A5%E5%AF%86%E9%92%A5&#34;&gt;3.7. 导入密钥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#38-%E4%BF%A1%E4%BB%BB%E5%AF%86%E9%92%A5&#34;&gt;3.8. 信任密钥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#39-%E5%88%86%E5%8F%91%E5%85%AC%E9%92%A5&#34;&gt;3.9. 分发公钥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#310-%E6%A3%80%E7%B4%A2%E5%85%AC%E9%92%A5&#34;&gt;3.10. 检索公钥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#311-%E6%8E%A5%E6%94%B6%E4%BB%96%E4%BA%BA%E7%9A%84%E5%85%AC%E9%92%A5&#34;&gt;3.11. 接收他人的公钥&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#312-%E7%AD%BE%E5%90%8D%E4%BB%96%E4%BA%BA%E5%85%AC%E9%92%A5&#34;&gt;3.12. 签名他人公钥&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#4-gpg-%E6%96%87%E4%BB%B6%E6%93%8D%E4%BD%9C&#34;&gt;4. GPG 文件操作&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#41-%E5%8A%A0%E8%A7%A3%E4%B8%8E%E8%A7%A3%E5%AF%86&#34;&gt;4.1. 加解与解密&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#411-%E5%8A%A0%E5%AF%86&#34;&gt;4.1.1. 加密&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#412-%E8%A7%A3%E5%AF%86&#34;&gt;4.1.2. 解密&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#42-%E7%AD%BE%E5%90%8D%E4%B8%8E%E9%AA%8C%E8%AF%81&#34;&gt;4.2. 签名与验证&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#421-%E7%AD%BE%E5%90%8D%E4%B8%94%E5%8A%A0%E5%AF%86&#34;&gt;4.2.1. 签名且加密&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#422-%E5%8F%AA%E7%AD%BE%E5%90%8D%E4%B8%8D%E5%8A%A0%E5%AF%86&#34;&gt;4.2.2. 只签名不加密&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#423-%E5%8F%AA%E7%AD%BE%E5%90%8D%E4%B8%8D%E5%8A%A0%E5%AF%86%E4%B8%94%E4%BD%BF%E7%94%A8%E6%98%8E%E6%96%87%E7%AD%BE%E5%90%8D&#34;&gt;4.2.3. 只签名不加密，且使用明文签名&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#424-%E9%AA%8C%E8%AF%81&#34;&gt;4.2.4. 验证&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#5-gpg-%E5%90%8A%E9%94%80%E6%93%8D%E4%BD%9C&#34;&gt;5. GPG 吊销操作&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#51-%E7%94%9F%E6%88%90%E5%90%8A%E9%94%80%E8%AF%81%E4%B9%A6&#34;&gt;5.1. 生成吊销证书&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#52-%E5%AF%BC%E5%85%A5%E5%90%8A%E9%94%80%E8%AF%81%E4%B9%A6&#34;&gt;5.2. 导入吊销证书&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#53-%E6%92%A4%E9%94%80%E5%AF%86%E9%92%A5%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84%E5%AF%86%E9%92%A5&#34;&gt;5.3. 撤销密钥服务器上的密钥&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#6-git-%E9%85%8D%E7%BD%AE&#34;&gt;6. Git 配置&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;1-关于-gpg&#34;&gt;1. 关于 GPG&lt;/h2&gt;
&lt;h3 id=&#34;11-gpg-是什么&#34;&gt;1.1. GPG 是什么?&lt;/h3&gt;
&lt;p&gt;GnuPG，即 &lt;code&gt;GNU Privacy Guard&lt;/code&gt; (&lt;code&gt;GPG&lt;/code&gt;) 是一个密码学软件，用于加密、签名内容及管理非对称密钥。&lt;/p&gt;
&lt;p&gt;GPG 的核心是 GPG 密钥对，分为公钥和私钥。在密码学技术上，GPG 可以使用若干不同的加密算法来向外提供加密解密服务。&lt;/p&gt;
&lt;h3 id=&#34;12-keyid-是什么&#34;&gt;1.2. KEYID 是什么？&lt;/h3&gt;
&lt;p&gt;KEYID 就是你的 &lt;code&gt;GPG Key&lt;/code&gt; 指纹的缩短版：&lt;/p&gt;
&lt;p&gt;&lt;code&gt;Long&lt;/code&gt;  Fingerprint 的末尾 16 位数字	 &lt;br&gt;
&lt;code&gt;Short&lt;/code&gt; Fingerprint 的末尾 8 位数字&lt;/p&gt;
&lt;p&gt;在很多命令中，&lt;code&gt;--keyid-format [none|short|0xshort|long|0xlong]&lt;/code&gt; 可以决定 KEYID 的显示格式。&lt;/p&gt;
&lt;h3 id=&#34;13-user-id-是什么&#34;&gt;1.3. USER-ID 是什么？&lt;/h3&gt;
&lt;p&gt;USER-ID 通常是指你为邮箱地址所关联的姓名字段，有时候也指所关联的注释文本。&lt;/p&gt;
&lt;h2 id=&#34;2-安装-gpg&#34;&gt;2. 安装 GPG&lt;/h2&gt;
&lt;h3 id=&#34;21-macos&#34;&gt;2.1. macOS&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://gpgtools.org&#34;&gt;https://gpgtools.org&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;22-windows&#34;&gt;2.2. windows&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://gpg4win.org/download.html&#34;&gt;https://gpg4win.org/download.html&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;23-linux&#34;&gt;2.3. Linux&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;gpg --version # 查看是否安装
sudo apt-get install -y gnupg
sudo yum install -y gnupg
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;3-gpg-密钥管理&#34;&gt;3. GPG 密钥管理&lt;/h2&gt;
&lt;h3 id=&#34;31-生成-gpg-密钥对&#34;&gt;3.1. 生成 GPG 密钥对&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;gpg --full-generate-key
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;gpg 密钥是与 email 绑定的，它是一个身份证明。&lt;/li&gt;
&lt;li&gt;算法建议选择默认值 RSA，其用途是完整的。&lt;/li&gt;
&lt;li&gt;密钥强度首选 4096 bits。&lt;/li&gt;
&lt;li&gt;建议生成一个不过期的根密钥，然后再建立若干子密钥，用于不同的用途。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;32-列出密钥&#34;&gt;3.2. 列出密钥&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;# 列出公钥和指纹
gpg --list-keys --keyid-format=short

# 列出私钥和指纹
gpg --list-secret-keys -keyid-format=short
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;参数 &lt;code&gt;--keyid-format&lt;/code&gt; 可以指定长度。&lt;/p&gt;
&lt;h3 id=&#34;33-列出指纹&#34;&gt;3.3. 列出指纹&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;gpg --fingerprint me@wangyan.org
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&#34;34-生成子密钥&#34;&gt;3.4. 生成子密钥&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;gpg --expert --edit-key 2E0E8722
gpg&amp;gt; addkey
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&#34;35-删除密钥&#34;&gt;3.5. 删除密钥&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;# 删除公钥
gpg --delete-key [USER-ID or KEYID]

# 删除私钥
gpg --delete-secret-key [USER-ID or KEYID]
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&#34;36-导出密钥&#34;&gt;3.6. 导出密钥&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;# 导出公钥
gpg --armor --output user.gpg.public.asc --export MASTER-KEYID

# 导出私钥
gpg --armor --output user.gpg.private.key.asc --export-secret-keys MASTER-KEYID

# 不导出子密钥
gpg --armor --output user.gpg.private.key.asc --export-secret-keys MASTER-KEYID!

# 导出指定子密钥
gpg --armor --output 2E0E8722.pub.asc --export 2E0E8722
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;默认导出主密钥的同时，将会连同其全部子密钥一起导出&lt;/li&gt;
&lt;li&gt;根据非对称密钥体系原理，导出私钥就代表着同时也导出了公钥，因为私钥能够推导出公钥。&lt;/li&gt;
&lt;li&gt;使用子密钥的公钥KEYID，可以指定导出子密钥&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;37-导入密钥&#34;&gt;3.7. 导入密钥&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;gpg --import user.gpg.public.pem
gpg --import user.gpg.private.key
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&#34;38-信任密钥&#34;&gt;3.8. 信任密钥&lt;/h3&gt;
&lt;p&gt;重新导入密钥后会显示&lt;code&gt;未知&lt;/code&gt;，因此需要信任。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;gpg --edit-key user@useremail.com
gpg&amp;gt; trust
gpg&amp;gt; 5
gpg&amp;gt; save
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;导出信任文件：&lt;code&gt;gpg --export-ownertrust &amp;gt; file.txt&lt;/code&gt;&lt;/p&gt;
&lt;h3 id=&#34;39-分发公钥&#34;&gt;3.9. 分发公钥&lt;/h3&gt;
&lt;p&gt;一旦密钥创建就绪，你就可以将其发表到 GPG 公共服务器，其他人通过指纹或者邮箱地址能够检索到你的公钥。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# 默认发布到 hkps://keys.openpgp.org 服务器
gpg --send-keys 2E0E8722

# 发布到指定服务器
gpg  --keyserver hkps://keyserver.ubuntu.com --send-keys 2E0E8722
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&#34;310-检索公钥&#34;&gt;3.10. 检索公钥&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;# 检索默认服务器
gpg --search-keys 70B152332E0E8722
gpg --auto-key-locate keyserver --locate-keys no-reply@wangyan.org

# 检索指定服务器
gpg --keyserver hkps://keyserver.ubuntu.com --search-keys 70B152332E0E8722
gpg --keyserver hkps://keyserver.ubuntu.com --search-keys no-reply@wangyan.org
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&#34;311-接收他人的公钥&#34;&gt;3.11. 接收他人的公钥&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;# 使用 Long-KEYID 从指定服务器接收
gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys 70B152332E0E8722
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&#34;312-签名他人公钥&#34;&gt;3.12. 签名他人公钥&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;接收他的公钥&lt;/p&gt;
&lt;p&gt;gpg -recv-keys 70B152332E0E8722&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;签名这个公钥&lt;/p&gt;
&lt;p&gt;gpg &amp;ndash;ask-cert-level &amp;ndash;sign-key &lt;a href=&#34;mailto:no-reply@wangyan.org&#34;&gt;no-reply@wangyan.org&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;签名后导出&lt;/p&gt;
&lt;p&gt;#使用他的公钥加密签名再导出
gpg -a &amp;ndash;export &lt;a href=&#34;mailto:no-reply@wangyan.org&#34;&gt;no-reply@wangyan.org&lt;/a&gt; | gpg -se -r &lt;a href=&#34;mailto:no-reply@wangyan.org&#34;&gt;no-reply@wangyan.org&lt;/a&gt; &amp;gt; &lt;a href=&#34;mailto:no-reply@wangyan.org.asc.pgp&#34;&gt;no-reply@wangyan.org.asc.pgp&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;接收方解密并导入&lt;/p&gt;
&lt;p&gt;gpg &amp;ndash;decrypt &lt;a href=&#34;mailto:no-reply@wangyan.org.asc.pgp&#34;&gt;no-reply@wangyan.org.asc.pgp&lt;/a&gt; &amp;gt; &lt;a href=&#34;mailto:no-reply@wangyan.org.asc&#34;&gt;no-reply@wangyan.org.asc&lt;/a&gt;
gpg &amp;ndash;import &lt;a href=&#34;mailto:no-reply@wangyan.org.asc&#34;&gt;no-reply@wangyan.org.asc&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;发布新公钥到服务器&lt;/p&gt;
&lt;p&gt;gpg &amp;ndash;send-keys &lt;a href=&#34;mailto:no-reply@wangyan.org&#34;&gt;no-reply@wangyan.org&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;4-gpg-文件操作&#34;&gt;4. GPG 文件操作&lt;/h2&gt;
&lt;h3 id=&#34;41-加解与解密&#34;&gt;4.1. 加解与解密&lt;/h3&gt;
&lt;h4 id=&#34;411-加密&#34;&gt;4.1.1. 加密&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;gpg -e -r 2E0E8722 original.file
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-e, --encrypt&lt;/code&gt;       加密数据&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-r, --recipient&lt;/code&gt;     为 USER-ID 加密&lt;/li&gt;
&lt;li&gt;加密后默认生成一个新文件 &lt;code&gt;original.file.gpg&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;412-解密&#34;&gt;4.1.2. 解密&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;gpg -d -r 2E0E8722 original.file.gp
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-d, --decrypt&lt;/code&gt;       解密数据&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;42-签名与验证&#34;&gt;4.2. 签名与验证&lt;/h3&gt;
&lt;h4 id=&#34;421-签名且加密&#34;&gt;4.2.1. 签名且加密&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;gpg -u 2E0E8722 -s original.file
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-u, --local-user&lt;/code&gt;    使用 USER-ID 来签名或者解密&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-s, --sign&lt;/code&gt;          生成一份签名&lt;/li&gt;
&lt;li&gt;这会生成一个加密文件 &lt;code&gt;original.file.gpg&lt;/code&gt;，同时它也是被签名的。&lt;/li&gt;
&lt;li&gt;发给他人，只需分发加密文件，无需附带原始文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;422-只签名不加密&#34;&gt;4.2.2. 只签名不加密&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;gpg -u 2E0E8722 -a -b -s original.file
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-a, --armor&lt;/code&gt;         创建 ASCII 字符封装的输出&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-b, --detach-sign&lt;/code&gt;   生成一份分离的签名&lt;/li&gt;
&lt;li&gt;签名后生成一个纯文本的签名文件 &lt;code&gt;original.file.asc&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;发给他人，需要和原始文件一同分发。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;423-只签名不加密且使用明文签名&#34;&gt;4.2.3. 只签名不加密，且使用明文签名&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;gpg -u 2E0E8722 --clear-sign original.file
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--clear-sign&lt;/code&gt;        生成一份明文签名&lt;/li&gt;
&lt;li&gt;区别在于包含了原始文件的内容，无需和原始文件一同分发。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;424-验证&#34;&gt;4.2.4. 验证&lt;/h4&gt;
&lt;pre&gt;&lt;code&gt;gpg -u 2E0E8722 --verify original.file.gpg
gpg -u 2E0E8722 --verify original.file.asc
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&#34;5-gpg-吊销操作&#34;&gt;5. GPG 吊销操作&lt;/h2&gt;
&lt;p&gt;一旦发布到 keyserver 上，你的 GPG Key 就不能被真正删除了。&lt;/p&gt;
&lt;p&gt;对于失效的、过时的、可能已经泄漏的密钥，你要使用吊销功能。&lt;/p&gt;
&lt;h3 id=&#34;51-生成吊销证书&#34;&gt;5.1. 生成吊销证书&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;gpg --output revoke.asc --gen-revoke key-ID 
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 id=&#34;52-导入吊销证书&#34;&gt;5.2. 导入吊销证书&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;gpg --import revoke.asc 
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;注意：吊销并不删除密钥本身，它是标记该密钥被作废了&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;53-撤销密钥服务器上的密钥&#34;&gt;5.3. 撤销密钥服务器上的密钥&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;gpg --keyserver hkps://keys.openpgp.org --send-keys key-ID
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;已标记作废的密钥会被发送到服务器&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;6-git-配置&#34;&gt;6. Git 配置&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;git config --global gpg.program gpg
git config --global commit.gpgsign true
git config user.name wangyan
git config user.email no-reply@wangyan.org
git config user.signingkey 2E0E8722
git commit -S -m your commit message
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;参考文档：&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://hedzr.com/security/gpg/gpg-short-guide/&#34;&gt;https://hedzr.com/security/gpg/gpg-short-guide/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        <item>
        <title>Mariadb 日志审计与密码插件</title>
        <link>https://www.bg7pbp.com/p/mariadb-log-audit-password/</link>
        <pubDate>Thu, 07 Nov 2024 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/mariadb-log-audit-password/</guid>
        <description>&lt;h2 id=&#34;目录&#34;&gt;目录  &lt;!-- omit from toc --&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%80%E5%90%AF%E7%94%A8%E6%97%A5%E5%BF%97&#34;&gt;一、启用日志&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#11-%E9%94%99%E8%AF%AF%E6%97%A5%E5%BF%97&#34;&gt;1.1. 错误日志&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#12-%E9%80%9A%E7%94%A8%E6%9F%A5%E8%AF%A2%E6%97%A5%E5%BF%97&#34;&gt;1.2. 通用查询日志&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#13-%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%97%A5%E5%BF%97&#34;&gt;1.3. 二进制日志&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#14-%E6%B8%85%E9%99%A4%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%97%A5%E5%BF%97&#34;&gt;1.4. 清除二进制日志&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#15-%E6%85%A2%E6%9F%A5%E8%AF%A2%E6%97%A5%E5%BF%97&#34;&gt;1.5. 慢查询日志&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%BA%8C%E8%BD%AE%E6%8D%A2%E6%97%A5%E5%BF%97&#34;&gt;二、轮换日志&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#21-logrotate&#34;&gt;2.1. Logrotate&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#211-%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81&#34;&gt;2.1.1. 身份验证&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#212-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6&#34;&gt;2.1.2. 配置文件&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#22-journal&#34;&gt;2.2. Journal&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%89%E5%90%AF%E7%94%A8%E5%AE%A1%E8%AE%A1&#34;&gt;三、启用审计&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#31-%E6%9F%A5%E7%9C%8B%E5%BD%93%E5%89%8D%E5%BC%80%E5%90%AF%E5%AE%A1%E8%AE%A1&#34;&gt;3.1. 查看当前开启审计&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#32-%E5%90%AF%E7%94%A8%E5%AE%A1%E8%AE%A1&#34;&gt;3.2. 启用审计&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#33-%E9%87%8D%E5%90%AF&#34;&gt;3.3. 重启&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E5%9B%9B%E5%AF%86%E7%A0%81%E6%8F%92%E4%BB%B6&#34;&gt;四、密码插件&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#41-simple_password_check&#34;&gt;4.1. simple_password_check&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#42-cracklib_password_check&#34;&gt;4.2. cracklib_password_check&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;一启用日志&#34;&gt;一、启用日志&lt;/h2&gt;
&lt;h3 id=&#34;11-错误日志&#34;&gt;1.1. 错误日志&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://mariadb.com/kb/en/library/error-log/&#34;&gt;Error Log&lt;/a&gt;&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# /etc/my.cnf.d/mariadb-logs.cnf&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;mariadb&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;......
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Error Log&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_error&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/var/log/mariadb/error.log
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_warnings&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;3&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;日志详细程度：0-9，默认值为 2&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;12-通用查询日志&#34;&gt;1.2. 通用查询日志&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://mariadb.com/kb/en/general-query-log/&#34;&gt;General Query Log&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;通用查询日志是从客户端接收到的每个 SQL 查询以及每个客户端连接和断开连接的日志。由于它是服务器收到的每个查询的记录，因此它可能会很快变大。&lt;/p&gt;
&lt;p&gt;但是，如果您只想记录更改数据的查询，那么最好使用二进制日志。一个重要的区别是，二进制日志仅在服务器提交事务时记录查询，而通用查询日志在服务器接收到查询后立即记录查询。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# /etc/my.cnf.d/mariadb-logs.cnf&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;mariadb&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;......
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# General Query Log&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;general_log
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_output&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;FILE
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;general_log_file&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/var/log/mariadb/queries.log
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_disabled_statements&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;slave,sp&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;13-二进制日志&#34;&gt;1.3. 二进制日志&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://mariadb.com/kb/en/binary-log/&#34;&gt;Binary Log&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;二进制日志包含对数据库的所有更改（数据和结构）以及每个语句执行所需时间的记录。它由一组二进制日志文件和一个索引组成。&lt;/p&gt;
&lt;p&gt;这意味着诸如 CREATE、ALTER、INSERT、UPDATE 和 DELETE 之类的语句将被记录，但对数据没有影响的语句（如 SELECT 和 SHOW ）将不会被记录。如果您想记录这些（以性能为代价），请使用通用查询日志。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# /etc/my.cnf.d/mariadb-logs.cnf&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;mariadb&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Binary Log&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# datadir/log-basename-bin&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_bin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;ON
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_basename&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;mariadb
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;binlog_format&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;mixed
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;expire_logs_days&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;90&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;max_binlog_size&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;512M
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;max_binlog_total_size&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;5G
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--binlog-ignore-db&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;database_name&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;14-清除二进制日志&#34;&gt;1.4. 清除二进制日志&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://mariadb.com/kb/en/purge-binary-logs/&#34;&gt;PURGE BINARY LOGS&lt;/a&gt;&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 列出所有日志&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;SHOW BINARY LOGS&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 查看正在读取的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;SHOW SLAVE STATUS&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 删除所有二进制日志文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;RESET MASTER&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 清除到指定位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;PURGE BINARY LOGS TO &lt;span class=&#34;s1&#34;&gt;&amp;#39;mariadb-bin.000057&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 清除指定日期之前的&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;PURGE BINARY LOGS BEFORE &lt;span class=&#34;s1&#34;&gt;&amp;#39;2019-04-02 22:46:26&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 清除3天前的日志&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#SELECT DATE_SUB(CURRENT_DATE, INTERVAL 3 DAY);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;PURGE MASTER LOGS BEFORE DATE_SUB&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;CURRENT_DATE, INTERVAL &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; DAY&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;PURGE BINARY LOGS BEFORE DATE_SUB&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;CURRENT_DATE, INTERVAL &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; DAY&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;15-慢查询日志&#34;&gt;1.5. 慢查询日志&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://mariadb.com/kb/en/slow-query-log/&#34;&gt;Slow Query Log&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;慢查询日志是执行时间较长的 SQL 查询的记录。&lt;/p&gt;
&lt;p&gt;请注意，如果您的查询包含用户的密码，则慢查询日志也可能包含密码。因此，应该对其进行保护。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# /etc/my.cnf.d/mariadb-logs.cnf&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;mariadb&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;......
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;## Slow Query Log&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_output&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;FILE
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;slow_query_log
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;slow_query_log_file&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/var/log/mariadb/slow.log
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;long_query_time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;5.0
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_queries_not_using_indexes&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;ON
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_slow_admin_statements&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;ON
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;log_slow_rate_limit&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;10&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;long_query_time&lt;/code&gt; 定义慢速查询的时间&lt;/li&gt;
&lt;li&gt;&lt;code&gt;log_queries_not_using_indexes&lt;/code&gt; 记录不使用索引的查询&lt;/li&gt;
&lt;li&gt;&lt;code&gt;log_slow_admin_statements&lt;/code&gt; 记录缓慢的管理语句&lt;/li&gt;
&lt;li&gt;&lt;code&gt;log_slow_rate_limit&lt;/code&gt; 限制每10次慢查询才记录一次&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;二轮换日志&#34;&gt;二、轮换日志&lt;/h2&gt;
&lt;h3 id=&#34;21-logrotate&#34;&gt;2.1. Logrotate&lt;/h3&gt;
&lt;h4 id=&#34;211-身份验证&#34;&gt;2.1.1. 身份验证&lt;/h4&gt;
&lt;p&gt;使用 MariaDB 进行身份验证的最简单方法是将用户帐户配置 &lt;code&gt;root@localhost&lt;/code&gt; 为使用 &lt;code&gt;unix_socket&lt;/code&gt; 身份验证。&lt;/p&gt;
&lt;p&gt;在MariaDB 10.4及更高版本不许设置&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;sql&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;ALTER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;USER&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;root&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;localhost&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;IDENTIFIED&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;VIA&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;unix_socket&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;212-配置文件&#34;&gt;2.1.2. 配置文件&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/etc/logrotate.conf&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/etc/logrotate.d/&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo tee /etc/logrotate.d/mariadb &lt;span class=&#34;s&#34;&gt;&amp;lt;&amp;lt;EOF
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;/var/log/mysql/* {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        su mysql mysql
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        missingok
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        create 660 mysql mysql
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        notifempty
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        daily
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        minsize 1M
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        maxsize 100M
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        rotate 30
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        dateext
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        dateformat .%Y-%m-%d-%H-%M-%S
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        compress
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        delaycompress
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        sharedscripts 
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        olddir archive/
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        createolddir 770 mysql mysql # only use with logrotate &amp;gt;= 3.8.9
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    postrotate
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        # just if mysqld is really running
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        if test -x /usr/local/mysql/bin/mysqladmin &amp;amp;&amp;amp; \
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;           /usr/local/mysql/bin/mariadb-admin ping &amp;amp;&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        then
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;           /usr/local/mysql/bin/mariadb-admin --local flush-error-log \
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;              flush-engine-log flush-general-log flush-slow-log
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;        fi
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    endscript
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;EOF&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;重要参数：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;daily&lt;/code&gt;：每天轮换每个日志文件一次。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;minsize 1M&lt;/code&gt;：该指令将其配置为在日志轮转期间跳过小于 1 MB 的日志文件。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;maxsize 100M&lt;/code&gt;：此指令将其配置为在日志文件增长超过 100 MB 时比每天更频繁地轮换日志文件。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rotate 30&lt;/code&gt;：该指令将其配置为保留每个日志文件的 30 个旧副本。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;dateext&lt;/code&gt;：该指令将其配置为使用日期作为扩展名，而不仅仅是数字。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;olddir archive/&lt;/code&gt;：该指令将其配置为将轮换日志文件存档在&lt;code&gt;/var/log/mariadb/archive/&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;22-journal&#34;&gt;2.2. Journal&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;systemd-journal&lt;/code&gt; 是一个改进型的日志管理服务。&lt;/p&gt;
&lt;p&gt;常见用法如下：&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;sql&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;查看文件情况&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;du&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;--max-depth=1 /var/log
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;日志总体磁盘占用情况&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;journalctl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;--disk-usage
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;硬性指定日志总体体积，删除超出部分&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;journalctl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;--vacuum-size=10M
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;只保留近一周的日志&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;journalctl&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;--vacuum-time=1w
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;#&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;直接删除&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;var&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;log&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;journal&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;err&#34;&gt;目录下的日志文件&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;rm&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;rf&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;var&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;log&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;journal&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;f9d400c5e1e8c3a8209e990d887d4ac1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;三启用审计&#34;&gt;三、启用审计&lt;/h2&gt;
&lt;h3 id=&#34;31-查看当前开启审计&#34;&gt;3.1. 查看当前开启审计&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;sql&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;show&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;variables&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;like&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;%audit%&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;如果没有，则先查看审计插件目录&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;sql&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SHOW&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;VARIABLES&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;LIKE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;plugin_dir&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;32-启用审计&#34;&gt;3.2. 启用审计&lt;/h3&gt;
&lt;p&gt;具体参数详见官方文档：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://mariadb.com/kb/en/mariadb-audit-plugin-options-and-system-variables&#34;&gt;MariaDB Audit Plugin Options and System Variables&lt;/a&gt;&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# /etc/my.cnf.d/server-audit.cnf&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;mariadb&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;## MariaDB Audit Plugin&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;server_audit_events&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL,QUERY_DML_NO_SELECT
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;server_audit_file_path&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/var/log/mariadb/server_audit.log
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;server_audit_file_rotate_size&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;100M
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;server_audit_file_rotations&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;10&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;server_audit_logging&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;ON
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;server_audit_output_type&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;file
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;server_audit&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;FORCE_PLUS_PERMANENT&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;33-重启&#34;&gt;3.3. 重启&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl restart mariadb&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;四密码插件&#34;&gt;四、密码插件&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://mariadb.com/kb/en/library/password-validation/&#34;&gt;Password Validation Plugin API&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;41-simple_password_check&#34;&gt;4.1. simple_password_check&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://mariadb.com/kb/en/library/simple-password-check-plugin/&#34;&gt;Simple Password Check Plugin&lt;/a&gt;&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# /etc/my.cnf.d/simple_password_check.cnf&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;mariadb&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Password Validation&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;plugin_load_add&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; simple_password_check.so
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;simple_password_check_digits&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;simple_password_check_letters_same_case&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;simple_password_check_minimal_length&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;8&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;simple_password_check_other_characters&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;42-cracklib_password_check&#34;&gt;4.2. cracklib_password_check&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://mariadb.com/kb/en/cracklib-password-check-plugin/&#34;&gt;Cracklib Password Check Plugin&lt;/a&gt;&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo yum install MariaDB-cracklib-password-check
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-get install mariadb-plugin-cracklib-password-check&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;安装&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;shell&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;mariadb&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;plugin_load_add&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; cracklib_password_check&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
        </item>
        <item>
        <title>CentOS 密码安全策略</title>
        <link>https://www.bg7pbp.com/p/centos-password-security-policy/</link>
        <pubDate>Sat, 15 Apr 2017 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/centos-password-security-policy/</guid>
        <description>&lt;h2 id=&#34;目录&#34;&gt;目录  &lt;!-- omit from toc --&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#1-%E8%AE%BE%E7%BD%AE%E5%AF%86%E7%A0%81%E9%95%BF%E5%BA%A6%E5%92%8C%E6%9C%89%E6%95%88%E6%9C%9F&#34;&gt;1. 设置密码长度和有效期&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#2-%E8%AE%BE%E7%BD%AE%E5%AF%86%E7%A0%81%E5%A4%8D%E6%9D%82%E5%BA%A6&#34;&gt;2. 设置密码复杂度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#4%E9%85%8D%E7%BD%AE%E7%99%BB%E5%BD%95%E5%A4%B1%E8%B4%A5%E5%A4%84%E7%90%86&#34;&gt;4、配置登录失败处理&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#5%E9%85%8D%E7%BD%AE%E7%94%A8%E6%88%B7%E6%9C%80%E5%A4%A7%E7%99%BB%E5%BD%95%E6%95%B0&#34;&gt;5、配置用户最大登录数&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;1-设置密码长度和有效期&#34;&gt;1. 设置密码长度和有效期&lt;/h2&gt;
&lt;p&gt;每180天需要更改密码，并且会提前7天提醒用户密码快到期了。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /etc/login.defs
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;PASS_MAX_DAYS   &lt;span class=&#34;m&#34;&gt;180&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;PASS_MIN_DAYS   &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;PASS_MIN_LEN    &lt;span class=&#34;m&#34;&gt;8&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;PASS_WARN_AGE   &lt;span class=&#34;m&#34;&gt;7&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;2-设置密码复杂度&#34;&gt;2. 设置密码复杂度&lt;/h2&gt;
&lt;p&gt;检查是否安装了 cracklib 模块&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rpm -qa &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; grep cracklib&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /etc/pam.d/system-auth&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;参数说明&lt;/p&gt;
&lt;p&gt;retry=N 如果用户输入的密码强度不够可以重复输入的次数，默认值是 1，一般设置为 3。
difok=M 新密码与前一个旧密码之间至少有 M 个字符不相同
minlen=N 密码最小长度
dcredit=N 密码中至少有几个数字（至少 N&amp;lt;0 或至多 N&amp;gt;=0）
ucredit=N 密码中至少有几个大写字母（至少 N&amp;lt;0 或至多 N&amp;gt;=0）
lcredit=N 密码中至少有几个小写字母（至少 N&amp;lt;0 或至多 N&amp;gt;=0）
ocredit=N 密码中至少有几个特殊字符（至少 N&amp;lt;0 或至多 N&amp;gt;=0）&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;password    requisite     pam_cracklib.so try_first_pass &lt;span class=&#34;nv&#34;&gt;retry&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;difok&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;minlen&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;8&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;dcredit&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;-1 &lt;span class=&#34;nv&#34;&gt;ucredit&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;-1 &lt;span class=&#34;nv&#34;&gt;lcredit&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;-1 &lt;span class=&#34;nv&#34;&gt;ocredit&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;-1&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;防止用户再次使用以前使用过的密码remember=3（3次）&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok &lt;span class=&#34;nv&#34;&gt;remember&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;3&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;4配置登录失败处理&#34;&gt;4、配置登录失败处理&lt;/h2&gt;
&lt;p&gt;失败5次后需要180秒才解锁&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;auth        required      pam_tally2.so &lt;span class=&#34;nv&#34;&gt;deny&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;3&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;unlock_time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;300&lt;/span&gt; even_deny_root &lt;span class=&#34;nv&#34;&gt;root_unlock_time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;300&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;5配置用户最大登录数&#34;&gt;5、配置用户最大登录数&lt;/h2&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /etc/security/limits.conf
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;root – maxlogins &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dmfy – maxlogins &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;登录超时&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /etc/profile
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;TMOUT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;600&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;避免普通用户 su 到 root 用户&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /etc/pam.d/su
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;auth            sufficient      pam_rootok.so debug
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;auth            required        pam_wheel.so &lt;span class=&#34;nv&#34;&gt;group&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;wheel
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;usermod -G wheel &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;username&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;#加入wheel用户组&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
        </item>
        <item>
        <title>Apache2.4 访问控制</title>
        <link>https://www.bg7pbp.com/p/apache-access-control/</link>
        <pubDate>Tue, 12 Aug 2014 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/apache-access-control/</guid>
        <description>&lt;h2 id=&#34;目录&#34;&gt;目录  &lt;!-- omit from toc --&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%80%E8%AE%BF%E9%97%AE%E6%8E%A7%E5%88%B6&#34;&gt;一、访问控制&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E5%AE%9E%E4%BE%8B1%E6%89%80%E6%9C%89%E8%AF%B7%E6%B1%82%E9%83%BD%E8%A2%AB%E6%8B%92%E7%BB%9D&#34;&gt;实例1：所有请求都被拒绝&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E5%AE%9E%E4%BE%8B2%E6%89%80%E6%9C%89%E8%AF%B7%E6%B1%82%E9%83%BD%E8%A2%AB%E5%85%81%E8%AE%B8&#34;&gt;实例2：所有请求都被允许&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E5%AE%9E%E4%BE%8B3exampleorg%E6%89%80%E6%9C%89%E8%AF%B7%E6%B1%82%E9%83%BD%E8%A2%AB%E5%85%81%E8%AE%B8%E5%85%B6%E4%BB%96%E6%8B%92%E7%BB%9D&#34;&gt;实例3：example.org所有请求都被允许，其他拒绝&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%BA%8Capache-require-%E6%8C%87%E4%BB%A4&#34;&gt;二、Apache Require 指令&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本文翻译自官方文档：&lt;a href=&#34;http://httpd.apache.org/docs/2.4/upgrading.html&#34;&gt;《Upgrading to 2.4 from 2.2》&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;一访问控制&#34;&gt;一、访问控制&lt;/h2&gt;
&lt;p&gt;在Apache2.2版本中，访问控制是基于客户端的主机名、IP地址以及客户端请求中的其他特征，使用Order(排序), Allow(允许), Deny(拒绝),Satisfy(满足)指令来实现。&lt;/p&gt;
&lt;p&gt;在Apache2.4版本中，使用mod_authz_host这个新的模块，来实现访问控制，其他授权检查也以同样的方式来完成。旧的访问控制语句应当被新的授权认证机制所取代，即便Apache已经提供了mod_access_compat这一新模块来兼容旧语句。&lt;/p&gt;
&lt;p&gt;这里有一些实例，用新方法取代旧语句实现相同的访问控制&lt;/p&gt;
&lt;h3 id=&#34;实例1所有请求都被拒绝&#34;&gt;实例1：所有请求都被拒绝&lt;/h3&gt;
&lt;p&gt;Apache2.2 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Order deny,allow &lt;span class=&#34;c1&#34;&gt;#排序，先拒绝后允许&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Deny from all &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Apache2.4 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Require all denied &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;实例2所有请求都被允许&#34;&gt;实例2：所有请求都被允许&lt;/h3&gt;
&lt;p&gt;Apache2.2 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Order allow,deny &lt;span class=&#34;c1&#34;&gt;#排序，先允许后拒绝&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Allow from all &lt;span class=&#34;c1&#34;&gt;#允许所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Apache2.4 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Require all granted &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;实例3exampleorg所有请求都被允许其他拒绝&#34;&gt;实例3：example.org所有请求都被允许，其他拒绝&lt;/h3&gt;
&lt;p&gt;Apache2.2 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Order Deny,Allow &lt;span class=&#34;c1&#34;&gt;#排序，先拒绝后允许&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Deny from all &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Allow from example.org &lt;span class=&#34;c1&#34;&gt;#允许example.org&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Apache2.4 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Require host example.org &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;二apache-require-指令&#34;&gt;二、Apache Require 指令&lt;/h2&gt;
&lt;p&gt;了解更多require指令用法：&lt;a href=&#34;http://httpd.apache.org/docs/2.4/mod/mod_authz_core.html#require&#34;&gt;《Apache Module mod_authz_core》&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;附：常见访问控制指令&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require all granted &lt;span class=&#34;c1&#34;&gt;#允许所有&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require all denied &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require env env-var &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;env-var&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ... &lt;span class=&#34;c1&#34;&gt;#允许，匹配环境变量中任意一个&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require method http-method &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;http-method&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ... &lt;span class=&#34;c1&#34;&gt;#允许，特定的HTTP方法&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require expr expression &lt;span class=&#34;c1&#34;&gt;#允许，表达式为true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require user userid &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; userid &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ... &lt;span class=&#34;c1&#34;&gt;#允许，特定用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require group group-name &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;group-name&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ... &lt;span class=&#34;c1&#34;&gt;#允许，特定用户组&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require valid-user &lt;span class=&#34;c1&#34;&gt;# #允许，有效用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require ip &lt;span class=&#34;m&#34;&gt;10&lt;/span&gt; 172.20 192.168.2 &lt;span class=&#34;c1&#34;&gt;#允许 特定IP&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
        </item>
        
    </channel>
</rss>
