From 090ab28970ebbcd4d15663b5dcd403838bafae2f Mon Sep 17 00:00:00 2001 From: CallMeR <9463297+callmer@user.noreply.gitee.com> Date: Sun, 31 Dec 2023 22:07:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E7=90=86=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 04.PVE创建模板虚拟机.md | 2 +- 07.PVE制作TS服务器.md | 125 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 126 insertions(+), 1 deletion(-) diff --git a/04.PVE创建模板虚拟机.md b/04.PVE创建模板虚拟机.md index e90aef5..bb83e2b 100644 --- a/04.PVE创建模板虚拟机.md +++ b/04.PVE创建模板虚拟机.md @@ -2,7 +2,7 @@ 将虚拟机制作成模板,可在后续新建虚拟机时快速从模板中创建,减少系统安装配置时间。 -该虚拟机模板主要作为内网 DNS 服务器使用,并会安装 Adguard Home 。 +该虚拟机模板主要用作内网 DNS 服务器,由 `Adguard Home` 或 `SmartDNS` 提供 DNS 解析服务。 本文将使用 Debian 的云镜像 `debian-12-genericcloud-amd64.qcow2` 作为模板虚拟机的镜像。 diff --git a/07.PVE制作TS服务器.md b/07.PVE制作TS服务器.md index e69de29..7db87fc 100644 --- a/07.PVE制作TS服务器.md +++ b/07.PVE制作TS服务器.md @@ -0,0 +1,125 @@ +## 0.前期准备 + +某些业务场景下需要构建安全可靠的网络隧道,来打通异地内网环境或从外部访问内网的私有资源。 + +本文将使用 Debian 云镜像以及 `Tailscale` 来制作内网组网服务器。 + +对于虚拟机创建部分,请参考 [04.PVE创建模板虚拟机](./04.PVE创建模板虚拟机.md) 。 + +## 1.配置系统 + +由于 TS 服务器具备路由功能,所以在配置方法和系统参数方面与内网 DNS 服务器有一些区别。 + +### 1.1.配置 SSH + +与配置内网 DNS 服务器时一样,首先需要调整系统的 SSH 登录权限参数。 + +在虚拟机的命令行界面,使用 `vim` 编辑器编辑 `sshd` 服务的配置文件,执行以下命令。 + +```bash +## 编辑 ssh 配置文件 +$ sudo vim /etc/ssh/sshd_config.d/server_sshd.conf +``` + +在配置文件中添加以下配置项,并保存。 + +```bash +## SSH 配置项 + +PasswordAuthentication yes +PermitEmptyPasswords no +UseDNS no + +``` + +修改完成后,需要重启 SSH 服务。 + +```bash +## 重启 sshd +$ sudo systemctl restart ssh.service +``` + +### 1.2.配置软件源 + +使用 `vim` 编辑器编辑 `debian.sources` 配置文件,执行以下命令。 + +```bash +## 编辑 debian.sources 配置文件 +$ sudo vim /etc/apt/sources.list.d/debian.sources +``` + +删除里面全部内容,添加以下配置项,并保存。 + +```bash +## 系统软件源配置项 + +Types: deb +URIs: https://mirrors.ustc.edu.cn/debian +Suites: bookworm bookworm-updates +Components: main contrib non-free non-free-firmware +Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg + +Types: deb +URIs: https://mirrors.ustc.edu.cn/debian-security +Suites: bookworm-security +Components: main contrib non-free non-free-firmware +Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg + +``` + +为了防止 `Cloud-Init` 服务意外修改软件源配置,需要添加文件保护,执行以下命令。 + +```bash +## 增加文件保护 +$ sudo chattr +i /etc/apt/sources.list.d/debian.sources + +## 检查文件保护 +$ lsattr /etc/apt/sources.list.d/debian.sources + +#### 示例输出 +----i---------e------- /etc/apt/sources.list.d/debian.sources +``` + +进一步添加 TS 签名密钥以及软件源,执行以下命令。 + +```bash +## 添加 TS 签名密钥 +$ curl -fsSL https://pkgs.tailscale.com/stable/debian/bookworm.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg > /dev/null + +## 添加 TS 软件源 +$ curl -fsSL https://pkgs.tailscale.com/stable/debian/bookworm.tailscale-keyring.list | sudo tee /etc/apt/sources.list.d/tailscale.list +``` + +### 1.3.安装软件 + +软件源设置完成后,需要更新系统,执行以下命令。 + +```bash +## 清理不必要的包 +$ sudo apt clean && sudo apt autoclean && sudo apt autoremove --purge + +## 更新软件源 +$ sudo apt update + +## 更新系统 +$ sudo apt dist-upgrade +``` + +接下来安装系统必要软件,安装 `iperf3` 后,系统将询问是否将其作为系统服务开机自启,选择 `no` 即可。 + +```bash +## 安装系统软件 +$ sudo apt install qemu-guest-agent zsh git htop tmux cron nftables sshguard neovim + +## 安装系统自动更新工具 +$ sudo apt install unattended-upgrades powermgmt-base python3-gi + +## 安装网络工具 +$ sudo apt install iperf iperf3 iftop lsof knot-dnsutils dnsmasq conntrack + +## 安装 Tailscale +$ sudo apt install tailscale + +## 写入磁盘 +$ sudo sync +``` \ No newline at end of file