{"id":129,"date":"2026-07-23T23:41:05","date_gmt":"2026-07-23T15:41:05","guid":{"rendered":"https:\/\/fsdata.site\/?p=129"},"modified":"2026-07-23T23:41:05","modified_gmt":"2026-07-23T15:41:05","slug":"linux-server-hardening-checklist","status":"publish","type":"post","link":"https:\/\/fsdata.site\/?p=129","title":{"rendered":"Linux \u670d\u52a1\u5668\u5b89\u5168\u52a0\u56fa 12 \u6761 Checklist"},"content":{"rendered":"<h2>\u4e3a\u4ec0\u4e48\u5b89\u5168\u52a0\u56fa\u8981\u5148\u505a<\/h2>\n<p>\u5f88\u591a\u670d\u52a1\u5668\u88ab\u653b\u7834\uff0c\u4e0d\u662f\u56e0\u4e3a\u7528\u4e86\u591a\u9ad8\u6df1\u7684\u6280\u672f\uff0c\u800c\u662f\u57fa\u7840\u52a0\u56fa\u6ca1\u505a\uff1a\u5bc6\u7801\u767b\u5f55\u5f00\u7740\u3001\u9632\u706b\u5899\u6ca1\u914d\u3001root \u968f\u4fbf\u767b\u3002\u672c\u6587\u7ed9\u4f60\u4e00\u4efd\u4e0a\u7ebf\u524d\u5c31\u8be5\u7167\u7740\u52fe\u7684 12 \u6761 Linux \u5b89\u5168\u6e05\u5355\uff0c\u8986\u76d6\u4ece\u767b\u5f55\u5230\u76d1\u63a7\u7684\u5173\u952e\u70b9\u3002<\/p>\n<h2>1. SSH \u6539\u7528\u5bc6\u94a5\u767b\u5f55\uff0c\u7981\u5bc6\u7801<\/h2>\n<pre><code># \/etc\/ssh\/sshd_config\nPubkeyAuthentication yes\nPasswordAuthentication no\nPermitRootLogin no\nsystemctl restart sshd\n<\/code><\/pre>\n<p>\u5148\u628a\u4f60\u7684\u516c\u94a5\u653e\u8fdb <code>~\/.ssh\/authorized_keys<\/code>\uff0c\u786e\u8ba4\u80fd\u767b\u518d\u5173\u5bc6\u7801\uff0c\u522b\u628a\u81ea\u5df1\u9501\u5916\u9762\u3002<\/p>\n<h2>2. \u6539 SSH \u7aef\u53e3<\/h2>\n<p>\u9ed8\u8ba4 22 \u662f\u626b\u63cf\u91cd\u707e\u533a\uff0c\u6539\u6210\u9ad8\u4f4d\u7aef\u53e3\uff08\u5982 22222\uff09\u80fd\u6321\u6389\u5927\u90e8\u5206\u81ea\u52a8\u5316\u7206\u7834\u3002<\/p>\n<h2>3. \u5f00\u9632\u706b\u5899\uff0c\u53ea\u653e\u5fc5\u8981\u7aef\u53e3<\/h2>\n<pre><code># ufw \u793a\u4f8b\nufw default deny incoming\nufw allow 22222\/tcp\nufw allow 80,443\/tcp\nufw enable\n<\/code><\/pre>\n<h2>4. \u88c5 fail2ban \u9632\u7206\u7834<\/h2>\n<p>\u8fde\u7eed\u5931\u8d25\u51e0\u6b21\u5c31\u5c01 IP\uff0c\u5bf9 SSH\u3001Nginx \u767b\u5f55\u90fd\u6709\u6548\u3002<\/p>\n<pre><code>apt install fail2ban\nsystemctl enable fail2ban\n<\/code><\/pre>\n<h2>5. \u7981\u7528 root \u76f4\u63a5\u767b\u5f55<\/h2>\n<p>\u7528\u666e\u901a\u7528\u6237 + <code>sudo<\/code>\uff0c\u5373\u4f7f\u8d26\u53f7\u6cc4\u9732\u4e5f\u62ff\u4e0d\u5230\u6700\u9ad8\u6743\u9650\u3002<\/p>\n<h2>6. \u53ca\u65f6\u6253\u7cfb\u7edf\u8865\u4e01<\/h2>\n<pre><code>apt update &amp;&amp; apt upgrade -y\n# \u6216\u914d\u7f6e\u65e0\u4eba\u503c\u5b88\u66f4\u65b0\n<\/code><\/pre>\n<h2>7. \u6700\u5c0f\u5316\u670d\u52a1<\/h2>\n<p>\u5173\u6389\u7528\u4e0d\u5230\u7684\u670d\u52a1\uff08\u5982 telnet\u3001rpcbind\uff09\uff0c\u51cf\u5c11\u653b\u51fb\u9762\u3002<\/p>\n<h2>8. \u4e25\u683c\u6587\u4ef6\u6743\u9650<\/h2>\n<p>Web \u76ee\u5f55\u522b\u7ed9 777\uff0c\u914d\u7f6e\u6587\u4ef6\uff08\u542b\u5bc6\u7801\uff09\u6743\u9650\u6536\u7d27\u5230 600\uff0c\u5c5e\u4e3b\u6b63\u786e\u3002<\/p>\n<h2>9. \u5f00\u542f\u5ba1\u8ba1\uff08auditd\uff09<\/h2>\n<p>\u8bb0\u5f55\u5173\u952e\u6587\u4ef6\/\u547d\u4ee4\u7684\u8bbf\u95ee\uff0c\u51fa\u4e8b\u540e\u80fd\u6eaf\u6e90\u3002<\/p>\n<h2>10. \u542f\u7528 SELinux \/ AppArmor<\/h2>\n<p>\u7ed9\u8fdb\u7a0b\u52a0\u6700\u5c0f\u6743\u9650\u8fb9\u754c\uff0c\u5373\u4f7f\u67d0\u670d\u52a1\u88ab\u653b\u7834\u4e5f\u96be\u6a2a\u5411\u79fb\u52a8\u3002<\/p>\n<h2>11. \u96c6\u4e2d\u6536\u96c6\u65e5\u5fd7<\/h2>\n<p>\u7528 <code>rsyslog<\/code> \u6216 ELK \u628a\u65e5\u5fd7\u5f52\u5230\u522b\u5904\uff0c\u670d\u52a1\u5668\u88ab\u6e05\u76d8\u4e5f\u80fd\u67e5\u5230\u5386\u53f2\u3002<\/p>\n<h2>12. \u5b9a\u671f\u5907\u4efd<\/h2>\n<p>\u524d\u9762 11 \u6761\u662f&#8221;\u9632&#8221;\uff0c\u5907\u4efd\u662f&#8221;\u515c\u5e95&#8221;\u3002\u5f02\u5730\u3001\u52a0\u5bc6\u3001\u5b9a\u671f\u6f14\u7ec3\u6062\u590d\uff0c\u7f3a\u4e00\u4e0d\u53ef\u3002<\/p>\n<h2>\u5c0f\u7ed3<\/h2>\n<p>\u5b89\u5168\u6ca1\u6709\u94f6\u5f39\uff0c\u4f46\u628a\u8fd9 12 \u6761\u9ed8\u8ba4\u52fe\u4e0a\uff0c\u80fd\u6321\u6389 90% \u7684\u81ea\u52a8\u5316\u653b\u51fb\u3002\u8bb0\u4f4f\u4e00\u4e2a\u539f\u5219\uff1a<strong>\u9ed8\u8ba4\u62d2\u7edd\u3001\u6700\u5c0f\u6743\u9650\u3001\u7559\u597d\u9000\u8def\uff08\u5907\u4efd\uff09<\/strong>\u3002\u4e0a\u7ebf\u524d\u82b1\u534a\u5c0f\u65f6\u505a\u5b8c\uff0c\u6bd4\u51fa\u4e8b\u540e\u6551\u706b\u4fbf\u5b9c\u5f97\u591a\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5bc6\u94a5\u767b\u5f55\u3001\u9632\u706b\u5899\u3001fail2ban\u3001\u6700\u5c0f\u6743\u9650\u2026\u2026\u4e0a\u7ebf\u7b2c\u4e00\u6b65\u5c31\u8be5\u505a\u7684 12 \u6761\u5b89\u5168\u52a0\u56fa\u3002<\/p>\n","protected":false},"author":2,"featured_media":119,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18],"tags":[],"class_list":["post-129","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-pitfalls"],"_links":{"self":[{"href":"https:\/\/fsdata.site\/index.php?rest_route=\/wp\/v2\/posts\/129","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fsdata.site\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fsdata.site\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fsdata.site\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/fsdata.site\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=129"}],"version-history":[{"count":0,"href":"https:\/\/fsdata.site\/index.php?rest_route=\/wp\/v2\/posts\/129\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fsdata.site\/index.php?rest_route=\/wp\/v2\/media\/119"}],"wp:attachment":[{"href":"https:\/\/fsdata.site\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fsdata.site\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fsdata.site\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}