Administrator
Administrator
发布于 2026-07-31 / 7 阅读
0

从零开始的博客教程(上)

本文将从零开始手把手教你怎么搭建一个博客。

在此过程中,除了必须付费的域名和服务器,其它一切都可以是不用花费八分钱。

一、服务器选择

教程中以阿里云的轻量应用服务器为例。如果你认为其它的服务器提供商的服务器价格更加实惠,那么请去查看对应的服务器配置相关的文章,本节只适用于阿里云的轻量应用服务器。

阿里云轻量服务器选购界面:

正常价格为40元/月,但如果你是阿里云新用户,能够通过优惠将第一年的价格降至68.00元/年,如果你认为价格还是有些昂贵,则可选择图中的国际型,正常情况下是28元/月,更加便宜,但是网络线路上没有针对国内进行优化,因此访问时延迟会相对较高。

服务器配置推荐如图所示:

内存:最好保证至少有1GiB,如果只有0.5GiB,可能会导致服务器运行博客时卡顿。

系统镜像:推荐使用ubuntu或者debian。

地域:看个人所在的区域进行选择,我这里是选择上海。

购买配置:看个人财力和需求时长情况。

二、服务器配置

购买完服务器就应该给服务器做足安全措施了!

主页搜索轻量应用服务器进入对应界面,此时如图所示:

点击更多选项,再点击查看详情即可看到如下图所示:

首先需要配置服务器ssh连接所需的密钥,在密钥一栏点击创建密钥的选项,在弹出的界面中选择创建密钥对,创建成功后下载密钥文件,我这里是已经创建好了。

接着选择一个心仪的ssh连接工具连接至服务器中,我这里选用的是Termius。使用root用户加密钥登录后第一件事情就是配置SSH文件防范针对22端口的攻击:在确认你可以通过密钥成功连接后,创建 sudo nano /etc/ssh/sshd_config.d/99-custom-security.conf 文件:

PasswordAuthentication no

作用:彻底关闭密码登录,只允许密钥登录。这是防范暴力破解的最有效手段。

PermitRootLogin no

作用:禁止 root 账户直接通过 SSH 登录。即使攻击者通过某种漏洞拿到了 root 密码或密钥,也无法直接连上服务器。你必须使用普通账户登录后再通过 sudo 提权。请务必确认你已经使用sudo adduser 新用户名 命令创建好了新的用户,并使用sudo usermod -aG sudo 新用户名 命令赋予你新创建的用户管理员权限,先尝试使用你的新用户名尝试登录,确认可以成功登录后再禁止root账户登录。

PermitEmptyPasswords no

作用:确保没有任何账户可以空密码登录。这是 SSH 的默认安全底线,但显式声明更稳妥。

PubkeyAuthentication yes

作用:显式启用公钥认证。

AllowUsers 新用户名

作用:白名单机制。默认情况下,系统里任何有 Bash shell 的用户都可以尝试 SSH 登录。加上这行参数后,只有你指定的这个用户可以连接。如果有多个用户,用空格隔开。但是请事前确认你已经创建了对应的用户!

LoginGraceTime 30

作用:限制登录等待时间。默认是 120 秒。如果一个连接在 30 秒内没有成功完成认证,服务器就会强制断开。这能有效清理僵尸扫描进程。

MaxAuthTries 3

作用:限制每次连接的最大尝试次数。默认通常是 6 次。改成 3 次后,如果对方连续输错(哪怕是提供错误的密钥),连接会立刻被掐断,迫使攻击者重新建立 TCP 连接,增加其破解成本。

AllowAgentForwarding no

作用:关闭 SSH 代理转发。防止你的私钥凭据在服务器被攻陷时遭到劫持。

在重启服务之前,务必检查配置语法是否正确:使用sudo sshd -t 命令后如果没有输出任何内容,说明语法正确。在重启 SSH 服务并退出当前终端之前,请务必新开一个终端窗口,尝试使用密钥登录你的服务器。确保新的连接能成功建立,再关闭旧的窗口。这样即使配置失误,你还在旧会话里,可以随时改回来。

这样,服务器最基础的安全措施就做好了。