<?xml version="1.0" encoding="utf-8"?>
    <rss version="2.0">
        <channel>
            
                <title>学习记录</title>
            
            
                <link>https://evome.online</link>
            
            
                
            
            <generator>Sonic v1.0.0</generator>
            <lastBuildDate>Mon, 23 Mar 2026 13:23:59 GMT</lastBuildDate>
            
                
                    <item>
                        <title>
                            <![CDATA[Ubuntu server 安全登陆小白文]]>
                        </title>
                        <link>/archives/Linuxserver</link>
                        <description><![CDATA[<h1 id="ssh%E5%AE%89%E5%85%A8%E7%99%BB%E9%99%86%E5%B0%8F%E7%99%BD%E6%96%87" tabindex="-1">ssh安全登陆小白文</h1><p>很多新手拿到一台 Linux Server 后，第一件事往往是直接开始装环境、跑服务，但更稳妥的做法是先把登录方式收拾好。因为一台刚装好的服务器，如果长期允许 <code>root</code> 直接密码登录、继续使用默认 SSH 端口、一直开着密码认证，风险会比较高。</p><p>这篇文章按一个适合新手的顺序，带你完成 Linux 初始设置中的 SSH 安全加固。示例系统为 <strong>Ubuntu Server</strong>。整套流程的目标很明确：</p><ol><li>新建一个普通管理用户，例如 <code>test</code></li><li>禁止 <code>root</code> 使用密码直接登录</li><li>修改 SSH 默认端口，例如改为 <code>22222</code></li><li>为 <code>test</code> 配置密钥登录</li><li>确认密钥登录没问题后，彻底关闭密码登录</li></ol><p>整篇文章尽量写得浅显，但操作逻辑会按运维的标准来，确保你既能看懂，也能尽量少踩坑。</p><hr /><h2 id="%E4%B8%80%E3%80%81%E5%BC%80%E5%A7%8B%E5%89%8D%E5%85%88%E4%BA%86%E8%A7%A3%E4%B8%A4%E6%9D%A1%E5%8E%9F%E5%88%99" tabindex="-1">一、开始前先了解两条原则</h2><h3 id="%E5%8E%9F%E5%88%99-1%EF%BC%9A%E4%B8%8D%E8%A6%81%E4%B8%80%E4%B8%8A%E6%9D%A5%E5%B0%B1%E6%8A%8A%E6%89%80%E6%9C%89%E9%97%A8%E9%83%BD%E5%85%B3%E6%AD%BB" tabindex="-1">原则 1：不要一上来就把所有门都关死</h3><p>很多教程会一口气改端口、关 root、关密码登录。如果你是第一次操作，<strong>强烈建议按步骤来，每改完一项就测试一次</strong>。这样即使出问题，也知道是在哪一步出的问题。</p><h3 id="%E5%8E%9F%E5%88%99-2%EF%BC%9A%E6%93%8D%E4%BD%9C-ssh-%E9%85%8D%E7%BD%AE%E6%97%B6%EF%BC%8C%E5%A7%8B%E7%BB%88%E4%BF%9D%E7%95%99%E5%BD%93%E5%89%8D%E5%B7%B2%E7%99%BB%E5%BD%95%E4%BC%9A%E8%AF%9D" tabindex="-1">原则 2：操作 SSH 配置时，始终保留当前已登录会话</h3><p>假设你现在已经通过终端连上了服务器，那么在新配置验证成功之前，<strong>不要关闭当前这个 SSH 窗口</strong>。正确做法是：</p><ul><li>保留当前连接不动</li><li>新开一个终端窗口测试新配置</li><li>确认新方式能登录后，再关闭旧窗口</li></ul><p>这是非常重要的习惯，可以避免把自己锁在服务器外面。</p><hr /><h2 id="%E4%BA%8C%E3%80%81%E5%85%88%E6%9B%B4%E6%96%B0%E7%B3%BB%E7%BB%9F%E8%BD%AF%E4%BB%B6%E5%8C%85" tabindex="-1">二、先更新系统软件包</h2><p>登录系统后，先把软件包索引和已安装软件更新一下：</p><pre><code class="language-bash">sudo apt updatesudo apt upgrade -y</code></pre><p>如果你当前登录的就是 <code>root</code>，那么可以直接运行：</p><pre><code class="language-bash">apt updateapt upgrade -y</code></pre><p>这一步不是 SSH 加固本身，但它是很常见的初始操作，建议先做。</p><hr /><h2 id="%E4%B8%89%E3%80%81%E6%96%B0%E5%BB%BA%E6%99%AE%E9%80%9A%E7%94%A8%E6%88%B7-test" tabindex="-1">三、新建普通用户 <code>test</code></h2><h3 id="1.-%E5%88%9B%E5%BB%BA%E7%94%A8%E6%88%B7" tabindex="-1">1. 创建用户</h3><p>执行下面的命令：</p><pre><code class="language-bash">adduser test</code></pre><p>系统会提示你设置该用户的密码，并填写一些用户信息。除了密码，其他信息直接回车也可以。</p><h3 id="2.-%E6%8A%8A-test-%E5%8A%A0%E5%85%A5-sudo-%E7%BB%84" tabindex="-1">2. 把 <code>test</code> 加入 sudo 组</h3><p>为了让 <code>test</code> 以后也能执行管理命令，需要把它加入 <code>sudo</code> 组：</p><pre><code class="language-bash">usermod -aG sudo test</code></pre><p>Ubuntu Server 默认使用 <code>sudo</code> 组授予管理员权限，这样做比一直使用 <code>root</code> 更安全，也更符合日常运维习惯。</p><h3 id="3.-%E6%B5%8B%E8%AF%95-test-%E6%98%AF%E5%90%A6%E5%8F%AF%E7%94%A8" tabindex="-1">3. 测试 <code>test</code> 是否可用</h3><p>可以先切换到新用户试一下：</p><pre><code class="language-bash">su - test</code></pre><p>再测试是否具备 sudo 权限：</p><pre><code class="language-bash">sudo whoami</code></pre><p>如果输出是 <code>root</code>，说明 <code>sudo</code> 权限正常。</p><p>测试完成后，如需回到原账户：</p><pre><code class="language-bash">exit</code></pre><hr /><h2 id="%E5%9B%9B%E3%80%81%E5%85%B3%E9%97%AD-root-%E5%AF%86%E7%A0%81%E7%99%BB%E5%BD%95%E6%9D%83%E9%99%90" tabindex="-1">四、关闭 root 密码登录权限</h2><p>这一项的目标不是“删除 root”，而是<strong>不允许 root 通过 SSH 远程密码登录</strong>。</p><h3 id="1.-%E7%BC%96%E8%BE%91-ssh-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6" tabindex="-1">1. 编辑 SSH 配置文件</h3><p>Ubuntu Server 的 SSH 服务配置文件通常是：</p><pre><code class="language-bash">sudo nano /etc/ssh/sshd_config</code></pre><p>如果你当前是 root：</p><pre><code class="language-bash">nano /etc/ssh/sshd_config</code></pre><p>找到这一项：</p><pre><code class="language-bash">PermitRootLogin</code></pre><p>把它改成：</p><pre><code class="language-bash">PermitRootLogin no</code></pre><p>说明：</p><ul><li><code>PermitRootLogin no</code> 表示禁止 root 通过 SSH 登录</li><li>对新手来说，这是最省事、也最安全的做法</li><li>后续远程管理统一使用普通用户 <code>test</code>，再配合 <code>sudo</code></li></ul><h3 id="2.-%E6%A3%80%E6%9F%A5%E9%85%8D%E7%BD%AE%E6%98%AF%E5%90%A6%E9%87%8D%E5%A4%8D" tabindex="-1">2. 检查配置是否重复</h3><p>很多配置文件里，某个参数可能出现多次。最终生效的通常是<strong>后面那一项</strong>。所以你要确保文件里关于 <code>PermitRootLogin</code> 的设置清晰明确，避免前后冲突。</p><h3 id="3.-%E5%85%88%E4%B8%8D%E8%A6%81%E6%80%A5%E7%9D%80%E9%87%8D%E5%90%AF%E8%BF%9E%E6%8E%A5" tabindex="-1">3. 先不要急着重启连接</h3><p>改完先保存文件，但先别关闭当前 SSH 会话。后面我们会统一检查并重启 SSH 服务。</p><hr /><h2 id="%E4%BA%94%E3%80%81%E4%BF%AE%E6%94%B9-ssh-%E7%99%BB%E5%BD%95%E7%AB%AF%E5%8F%A3" tabindex="-1">五、修改 SSH 登录端口</h2><p>SSH 默认端口是 <code>22</code>。修改端口不能替代真正的安全措施，但能减少大量针对默认端口的自动扫描和暴力尝试。</p><h3 id="1.-%E5%9C%A8-sshd_config-%E4%B8%AD%E4%BF%AE%E6%94%B9%E7%AB%AF%E5%8F%A3" tabindex="-1">1. 在 <code>sshd_config</code> 中修改端口</h3><p>继续编辑：</p><pre><code class="language-bash">sudo nano /etc/ssh/sshd_config</code></pre><p>找到：</p><pre><code class="language-bash">#Port 22</code></pre><p>把它改成：</p><pre><code class="language-bash">Port 22222</code></pre><p>说明：</p><ul><li>这里用 <code>22222</code> 只是示例，你也可以换成别的未占用端口</li><li>端口范围通常建议使用大于 <code>1024</code> 的端口</li><li>修改后，以后 SSH 登录要显式指定这个端口</li></ul><h3 id="2.-%E5%A6%82%E6%9E%9C%E5%BC%80%E4%BA%86%E9%98%B2%E7%81%AB%E5%A2%99%EF%BC%8C%E8%A6%81%E6%94%BE%E8%A1%8C%E6%96%B0%E7%AB%AF%E5%8F%A3" tabindex="-1">2. 如果开了防火墙，要放行新端口</h3><p>如果服务器启用了 <code>ufw</code>，需要先放行新端口：</p><pre><code class="language-bash">sudo ufw allow 22222/tcp</code></pre><p>如果你还没有放行新端口，就贸然重启 SSH，可能会导致无法连接。</p><p>如果你想确认 <code>ufw</code> 状态：</p><pre><code class="language-bash">sudo ufw status</code></pre><h3 id="3.-%E9%87%8D%E5%90%AF-ssh-%E6%9C%8D%E5%8A%A1%E5%89%8D%E5%85%88%E5%81%9A%E9%85%8D%E7%BD%AE%E6%A3%80%E6%9F%A5" tabindex="-1">3. 重启 SSH 服务前先做配置检查</h3><p>在正式重启前，先检查 SSH 配置有没有写错：</p><pre><code class="language-bash">sudo sshd -t</code></pre><p>如果没有任何输出，通常表示语法正常。</p><h3 id="4.-%E9%87%8D%E5%90%AF-ssh-%E6%9C%8D%E5%8A%A1" tabindex="-1">4. 重启 SSH 服务</h3><p>Ubuntu Server 一般执行：</p><pre><code class="language-bash">sudo systemctl restart ssh</code></pre><p>然后查看服务状态：</p><pre><code class="language-bash">sudo systemctl status ssh</code></pre><p>如果状态正常，就可以开始测试新端口。</p><h3 id="5.-%E5%85%88%E6%B5%8B%E8%AF%95%E6%96%B0%E7%AB%AF%E5%8F%A3%E8%83%BD%E5%90%A6%E7%99%BB%E5%BD%95" tabindex="-1">5. 先测试新端口能否登录</h3><p>在你自己的电脑上，新开一个终端窗口，使用新端口测试：</p><pre><code class="language-bash">ssh -p 22222 test@你的服务器IP</code></pre><p>请注意：</p><ul><li>一定要新开窗口测试</li><li>原来的 SSH 窗口先不要关</li><li>如果能登录成功，说明新端口配置正确</li></ul><hr /><h2 id="%E5%85%AD%E3%80%81%E4%B8%BA-test-%E9%85%8D%E7%BD%AE-ssh-%E5%AF%86%E9%92%A5%E7%99%BB%E5%BD%95" tabindex="-1">六、为 <code>test</code> 配置 SSH 密钥登录</h2><p>这一部分是整套流程里最关键的内容之一。相比密码登录，<strong>SSH 密钥登录更安全，也更适合长期使用</strong>。</p><h3 id="1.-%E5%9C%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E5%88%9B%E5%BB%BA-.ssh-%E7%9B%AE%E5%BD%95" tabindex="-1">1. 在服务器上创建 <code>.ssh</code> 目录</h3><p>先切换到 <code>test</code> 用户，或者直接以 <code>test</code> 登录后执行：</p><pre><code class="language-bash">mkdir -p /home/test/.sshchmod 700 /home/test/.sshchown test:test /home/test/.ssh</code></pre><p>这三条命令的作用分别是：</p><ul><li>创建 <code>.ssh</code> 目录</li><li>把目录权限设置为只有用户自己可读写执行</li><li>确保目录归属者是 <code>test</code></li></ul><p><code>.ssh</code> 权限不正确时，SSH 可能会拒绝使用密钥，这一点非常常见。</p><h3 id="2.-%E5%9C%A8%E6%9C%AC%E5%9C%B0%E7%94%B5%E8%84%91%E5%88%9B%E5%BB%BA%E5%AF%86%E9%92%A5%E5%AF%B9" tabindex="-1">2. 在本地电脑创建密钥对</h3><p>这一步是在<strong>你自己的电脑</strong>上执行，不是在服务器上执行。</p><p>如果你使用的是 Linux、macOS，或者 Windows 的 PowerShell/OpenSSH 环境，可以执行：</p><pre><code class="language-bash">ssh-keygen -t ed25519 -C &quot;test@ubuntu-server&quot;</code></pre><p>说明：</p><ul><li><code>ed25519</code> 是目前非常常用、也很推荐的密钥类型</li><li><code>-C</code> 后面的内容只是备注，便于你以后识别这把密钥</li></ul><p>执行后会提示你输入保存路径，通常直接回车即可，默认会保存到：</p><pre><code class="language-bash">~/.ssh/id_ed25519</code></pre><p>随后会提示你是否为私钥设置口令：</p><ul><li>设口令更安全</li><li>不设口令更方便</li><li>从安全角度看，<strong>建议设置一个你自己记得住的私钥口令</strong></li></ul><p>生成完成后，你本地一般会得到两个文件：</p><ul><li>私钥：<code>~/.ssh/id_ed25519</code></li><li>公钥：<code>~/.ssh/id_ed25519.pub</code></li></ul><p>其中：</p><ul><li><strong>私钥绝对不要发给别人，也不要上传到服务器公开目录</strong></li><li>服务器上需要放的是公钥</li></ul><h3 id="3.-%E6%8A%8A%E5%85%AC%E9%92%A5%E5%AF%BC%E5%85%A5%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84-authorized_keys" tabindex="-1">3. 把公钥导入服务器的 <code>authorized_keys</code></h3><p>方法一：使用 <code>ssh-copy-id</code>，这是最省事的方法。</p><p>在本地电脑执行：</p><pre><code class="language-bash">ssh-copy-id -p 22222 test@你的服务器IP</code></pre><p>如果本机没有 <code>ssh-copy-id</code>，也可以手动导入。</p><p>先在本地查看公钥内容：</p><pre><code class="language-bash">cat ~/.ssh/id_ed25519.pub</code></pre><p>复制输出的整行内容，然后在服务器上执行：</p><pre><code class="language-bash">echo &quot;这里替换成你的公钥整行内容&quot; &gt;&gt; /home/test/.ssh/authorized_keyschmod 600 /home/test/.ssh/authorized_keyschown test:test /home/test/.ssh/authorized_keys</code></pre><p>说明：</p><ul><li><code>authorized_keys</code> 用于保存允许登录该用户的公钥</li><li>权限建议设为 <code>600</code></li><li>文件归属者必须是 <code>test</code></li></ul><h3 id="4.-%E5%86%8D%E6%AC%A1%E7%A1%AE%E8%AE%A4-.ssh-%E7%9B%B8%E5%85%B3%E6%9D%83%E9%99%90" tabindex="-1">4. 再次确认 <code>.ssh</code> 相关权限</h3><p>建议最终检查一下：</p><pre><code class="language-bash">ls -ld /home/test/.sshls -l /home/test/.ssh/authorized_keys</code></pre><p>一个比较稳妥的结果通常是：</p><ul><li><code>/home/test/.ssh</code> 权限为 <code>700</code></li><li><code>/home/test/.ssh/authorized_keys</code> 权限为 <code>600</code></li><li>两者所有者都是 <code>test:test</code></li></ul><hr /><h2 id="%E4%B8%83%E3%80%81%E6%B5%8B%E8%AF%95%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E5%85%8D%E5%AF%86%E7%A0%81-ssh-%E7%99%BB%E5%BD%95" tabindex="-1">七、测试是否可以免密码 SSH 登录</h2><p>现在开始进行最关键的验证。</p><p>在你的本地电脑上，新开终端执行：</p><pre><code class="language-bash">ssh -p 22222 test@你的服务器IP</code></pre><p>理想情况：</p><ul><li>如果你的私钥没有设置口令，会直接登录成功</li><li>如果你的私钥设置了口令，会提示输入<strong>私钥口令</strong>，而不是服务器用户密码</li></ul><p>这里要区分两种“密码”：</p><ul><li>服务器账号密码：以后我们准备关闭它的 SSH 登录用途</li><li>私钥口令：这是保护你本地私钥文件的密码，可以保留</li></ul><p>如果登录成功，可以继续执行：</p><pre><code class="language-bash">whoami</code></pre><p>应该输出：</p><pre><code class="language-bash">test</code></pre><p>再测试 sudo：</p><pre><code class="language-bash">sudo whoami</code></pre><p>如果输出 <code>root</code>，说明后续远程管理已经具备条件。</p><hr /><h2 id="%E5%85%AB%E3%80%81%E7%A1%AE%E8%AE%A4%E6%B2%A1%E9%97%AE%E9%A2%98%E5%90%8E%EF%BC%8C%E5%85%B3%E9%97%AD-ssh-%E5%AF%86%E7%A0%81%E7%99%BB%E5%BD%95" tabindex="-1">八、确认没问题后，关闭 SSH 密码登录</h2><p>这一步一定要放在<strong>密钥登录确认成功之后</strong>进行。</p><h3 id="1.-%E4%BF%AE%E6%94%B9-ssh-%E9%85%8D%E7%BD%AE" tabindex="-1">1. 修改 SSH 配置</h3><p>编辑配置文件：</p><pre><code class="language-bash">sudo nano /etc/ssh/sshd_config</code></pre><p>找到下面这些参数，建议设置为：</p><pre><code class="language-bash">PasswordAuthentication noChallengeResponseAuthentication noUsePAM yesPubkeyAuthentication yes</code></pre><p>重点说明：</p><ul><li><code>PasswordAuthentication no</code>：关闭 SSH 密码认证</li><li><code>PubkeyAuthentication yes</code>：启用公钥认证</li><li><code>UsePAM yes</code>：Ubuntu 默认一般保留开启即可</li></ul><p>有些系统里没有 <code>ChallengeResponseAuthentication</code>，也可能看到 <code>KbdInteractiveAuthentication</code>。如果存在交互式认证相关项，也建议关闭，例如：</p><pre><code class="language-bash">KbdInteractiveAuthentication no</code></pre><h3 id="2.-%E5%86%8D%E6%AC%A1%E6%A3%80%E6%9F%A5-ssh-%E9%85%8D%E7%BD%AE" tabindex="-1">2. 再次检查 SSH 配置</h3><pre><code class="language-bash">sudo sshd -t</code></pre><p>如果没有报错，再重启 SSH：</p><pre><code class="language-bash">sudo systemctl restart ssh</code></pre><h3 id="3.-%E6%9C%80%E7%BB%88%E9%AA%8C%E8%AF%81" tabindex="-1">3. 最终验证</h3><p>在本地新开终端，重新连接：</p><pre><code class="language-bash">ssh -p 22222 test@你的服务器IP</code></pre><p>然后再故意测试一次密码方式是否已失效。一个简单判断方法是：</p><ul><li>如果系统不再提示输入服务器账户密码</li><li>或者在没有正确私钥的情况下直接拒绝登录</li></ul><p>就说明密码登录已经被关闭，服务器只接受密钥登录。</p><p>到这里，你的 SSH 登录方式就已经比初始状态安全很多了。</p><hr /><h2 id="%E4%B9%9D%E3%80%81%E6%8E%A8%E8%8D%90%E4%BD%A0%E9%A1%BA%E6%89%8B%E5%86%8D%E5%81%9A%E4%B8%A4%E4%BB%B6%E4%BA%8B" tabindex="-1">九、推荐你顺手再做两件事</h2><p>虽然这篇文章的重点是 SSH 初始安全设置，但从运维角度看，下面两项也非常建议一起做。</p><h3 id="1.-%E9%85%8D%E7%BD%AE%E9%98%B2%E7%81%AB%E5%A2%99%EF%BC%8C%E5%8F%AA%E6%94%BE%E8%A1%8C%E5%BF%85%E8%A6%81%E7%AB%AF%E5%8F%A3" tabindex="-1">1. 配置防火墙，只放行必要端口</h3><p>例如只放行 SSH 新端口：</p><pre><code class="language-bash">sudo ufw allow 22222/tcpsudo ufw enablesudo ufw status</code></pre><p>如果你的服务器还要跑网站，再按需放行 <code>80</code>、<code>443</code>。</p><h3 id="2.-%E5%AE%89%E8%A3%85-fail2ban" tabindex="-1">2. 安装 fail2ban</h3><p>它可以在有人频繁尝试暴力登录时自动封禁来源 IP：</p><pre><code class="language-bash">sudo apt install fail2ban -ysudo systemctl enable fail2bansudo systemctl start fail2ban</code></pre><p>它不能代替密钥登录，但可以进一步减少无意义的扫描和尝试。</p><hr /><h2 id="%E5%8D%81%E3%80%81%E5%AE%8C%E6%95%B4%E6%93%8D%E4%BD%9C%E9%A1%BA%E5%BA%8F%E6%80%BB%E7%BB%93" tabindex="-1">十、完整操作顺序总结</h2><p>如果你想记住最稳妥的顺序，可以按下面的思路操作：</p><ol><li>更新系统</li><li>创建普通用户 <code>test</code></li><li>给 <code>test</code> sudo 权限</li><li>修改 SSH 端口为 <code>22222</code></li><li>放行防火墙新端口</li><li>禁止 <code>root</code> SSH 登录</li><li>为 <code>test</code> 配置 <code>.ssh</code> 和 <code>authorized_keys</code></li><li>在本地创建密钥对</li><li>测试 <code>test</code> 是否可以通过密钥登录</li><li>确认无误后关闭 SSH 密码登录</li></ol><p>这个顺序的核心思想是：<strong>先确保新方式能进，再关闭旧方式</strong>。</p><hr /><h2 id="%E5%8D%81%E4%B8%80%E3%80%81%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98%E6%8E%92%E6%9F%A5" tabindex="-1">十一、常见问题排查</h2><h3 id="1.-%E6%94%B9%E4%BA%86%E7%AB%AF%E5%8F%A3%E5%90%8E%E8%BF%9E%E4%B8%8D%E4%B8%8A" tabindex="-1">1. 改了端口后连不上</h3><p>优先检查这几项：</p><ul><li>是否真的重启了 SSH 服务</li><li>是否放行了防火墙端口 <code>22222/tcp</code></li><li>连接时是否写了 <code>-p 22222</code></li><li><code>sshd_config</code> 是否写错，可用 <code>sudo sshd -t</code> 检查</li></ul><h3 id="2.-%E5%85%AC%E9%92%A5%E5%B7%B2%E7%BB%8F%E5%AF%BC%E5%85%A5%EF%BC%8C%E8%BF%98%E6%98%AF%E8%A6%81%E6%B1%82%E8%BE%93%E5%85%A5%E5%AF%86%E7%A0%81" tabindex="-1">2. 公钥已经导入，还是要求输入密码</h3><p>常见原因有：</p><ul><li><code>/home/test/.ssh</code> 权限不对</li><li><code>authorized_keys</code> 权限不对</li><li>文件所有者不是 <code>test:test</code></li><li>公钥内容复制不完整</li><li>登录时用错了用户，例如你把公钥放在 <code>test</code> 下，却用别的用户名登录</li></ul><h3 id="3.-%E5%85%B3%E9%97%AD%E5%AF%86%E7%A0%81%E7%99%BB%E5%BD%95%E5%90%8E%E8%BF%9B%E4%B8%8D%E5%8E%BB%E4%BA%86" tabindex="-1">3. 关闭密码登录后进不去了</h3><p>这通常说明你在确认密钥登录成功之前就把密码认证关掉了。所以再次强调：</p><ul><li>不要关闭当前已登录的 SSH 窗口</li><li>一定要新开窗口测试密钥登录</li><li>确认成功后再关密码登录</li></ul><hr /><h2 id="%E5%8D%81%E4%BA%8C%E3%80%81%E7%BB%93%E8%AF%AD" tabindex="-1">十二、结语</h2><p>对新手来说，服务器初始化最重要的不是“装了什么软件”，而是“先把门锁好”。</p><p>用普通用户代替 <code>root</code> 直登、修改 SSH 默认端口、启用密钥登录、最后关闭密码认证，这是一套非常基础但非常实用的安全习惯。它不代表绝对安全，但足以帮你避开大量低级风险。</p><p>如果你以后继续学习 Linux 运维，可以在这套基础上再逐步补充：</p><ul><li>更细致的 <code>sudo</code> 权限控制</li><li><code>fail2ban</code> 防爆破</li><li><code>ufw</code> 或 <code>iptables</code> 防火墙策略</li><li>双因素认证</li><li>异地日志审计和入侵告警</li></ul><p>先把这篇里的流程熟练完成，你的 Ubuntu Server 初始登录安全，就已经走在正确的路上了。</p>]]></description>
                        <pubDate>Mon, 23 Mar 2026 13:23:59 GMT</pubDate>
                    </item>
                
            
        </channel>
    </rss>
