[{"title":"VPS.Town 2025 年首发客户升级抽奖 活动详解","content":"一、抽奖流程分步说明\n\n步骤 1：参与资格获取\n\n所有首发订单均分配专属抽奖号\n\n订单号格式：900xxx（11 位主单号）\n\n多台购买用户联系 @YesongIT_WX 生成子单号：\n例：900123-1, 900123-2...\n\n步骤 2：开奖流程\n\n🕗 开奖时间：3 月 4 日 20:00 (UTC+8)\n\n📢 结果公示：在官方客户群内公告 (https://t.me/VPSTown)\n\n⏱ 资格确认：中奖者需在 5 分钟内提交工单确认资格，逾期无效\n\n步骤 3：权益兑现\n\n🧧 红包发放：通过工单系统发送支付宝口令红包\n手气王：免费升级、终身免费续费资格\n\n其他中奖者：¥80/年（实际价格 ≤ 承诺价）、终身同价续费资格\n\n\n🔄 权益转让：确认后随时都可以转让权益给其他人，参见 转让机制\n\n二、核心规则说明\n\n1. 优惠规则\n\n类型\t首年价格\t续费价格\t优惠有效期\n手气王\t免费\t免费\t永久\n普通中奖者\t≤¥80\t与首年同价\t永久\n\n2. 时间节点\n\nflowchart TD\n    subgraph \"准备阶段\"\n    A[抽奖号分配] -->|截止至 2025-03-04 19:59| B[准备完成]\n    end\n\n    subgraph \"开奖环节\"\n    B --> C[正式开奖]\n    C -->|20:00| D[结果公布]\n    end\n\n    subgraph \"确认阶段\"\n    D --> E[资格确认期]\n    E -->|20:00-20:05| F[资格确认期]\n    end\n\n    subgraph \"执行阶段\"\n    F --> H[发工单升级配置]\n    H --> I[活动完成，已确认的优惠资格仍然可以随时转让]\n    end\n\n三、Q&A 常见问题解答\n\n❓ 中奖资格确认\n\nQ：超时未确认会怎样？\nA：视为自动放弃，资格将重新分配\n\nQ：确认后不想要怎么办？\nA：可随时转让，参见 转让机制\n\n❓ 价格相关\n\nQ：¥80 是最终价格吗？\n\nA：此为最高限价，实际价格可能更低，以开奖公告为准\n\nQ：续费会涨价吗？\n\nA：手气王终身免费续费，普通中奖者续费与首年同价\n\n❓ 转让机制\n\nQ：如何转让 (Push) 优惠资格？\n\nA：需双方共同提交 Push 工单 （转出方 + 转入方 都需要发送工单）\n\nQ：转让后原订单号会变更吗？\n\nA：需联系 @YesongIT_WX 重新绑定新订单号\n\n四、特别提醒\n\n谨防虚假中奖信息，所有通知仅通过 官方社群账号 发送\n\n“口令红包” 中奖后请在 24 小时内领取\n\n“手气王” 中奖后请在 72 小时内提交工单升级配置\n\n活动最终解释权归主办方 (VPS.Town) 所有","routePath":"/event/2025-upgrade-for-customer","lang":"zh","toc":[{"id":"一抽奖流程分步说明","text":"一、抽奖流程分步说明","depth":2,"charIndex":0},{"id":"步骤-1参与资格获取","text":"步骤 1：参与资格获取","depth":3,"charIndex":12},{"id":"步骤-2开奖流程","text":"步骤 2：开奖流程","depth":3,"charIndex":118},{"id":"步骤-3权益兑现","text":"步骤 3：权益兑现","depth":3,"charIndex":235},{"id":"二核心规则说明","text":"二、核心规则说明","depth":2,"charIndex":358},{"id":"1-优惠规则","text":"1. 优惠规则","depth":3,"charIndex":368},{"id":"2-时间节点","text":"2. 时间节点","depth":3,"charIndex":430},{"id":"三qa-常见问题解答","text":"三、Q&A 常见问题解答","depth":2,"charIndex":765},{"id":"-中奖资格确认","text":"❓ 中奖资格确认","depth":3,"charIndex":779},{"id":"-价格相关","text":"❓ 价格相关","depth":3,"charIndex":849},{"id":"push","text":"❓ 转让机制","depth":3,"charIndex":936},{"id":"四特别提醒","text":"四、特别提醒","depth":2,"charIndex":1049}],"frontmatter":{"date":"2025-03-01T10:18:00.000Z","description":"VPS.Town 2025 年首发客户升级抽奖 活动详解 (2025-03-04 活动归档)","category":"activities","sidebarTitle":"2025 首发客户升级抽奖"},"version":"","description":"VPS.Town 2025 年首发客户升级抽奖 活动详解 (2025-03-04 活动归档)"},{"title":"活动中心","content":"这里归档 VPS.Town 历次用户活动的规则说明与开奖结果。","routePath":"/event/","lang":"zh","toc":[],"frontmatter":{"date":"2025-02-28T16:00:00.000Z","updated":"2026-09-30 09:00 +8","sidebarTitle":"活动总览","description":"VPS.Town 活动中心：归档历次用户活动、升级抽奖与优惠的规则说明、参与方式和开奖结果。"},"version":"","description":"VPS.Town 活动中心：归档历次用户活动、升级抽奖与优惠的规则说明、参与方式和开奖结果。"},{"title":"在 VPS.Town 上使用 Docker 部署 MinIO 个人图床完全指南","content":"本文由用户 听风 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 现金 50 元 奖励。\n\n前言\n\nMinIO 是一种开源的大型、高性能、分布式对象存储服务，可以作为个人网盘、图床的通用基座。需要注意的是，MinIO 虽然有着非常好的优化，但如果只是作为个人图床使用，我们更推荐 Lsky 这类的轻量图床应用。\n\n本教程适用于 Debian 12 系统，其他 Linux 发行版可能需要调整部分命令。\n\n准备工作\n\n购买 VPS\n\n最多可提供高达 8TB 大容量存储 的选项，随时随地为您的图床安个新家；\n\n同时提供 SSD & HDD 混合方案，读写速度更快、上传图片更稳定；\n\n完善的 7/12 售后保障，支持随时灵活升级配置、支持 7 天内有理由退款；\n\n可在香港抗下 DMCA 版权投诉，分享图床更安全；\n\n服务器位于香港，距离大陆近，对于移动用户更加友好\n\n无 AFF 购买链接：点我一键直达\n\n安装 Docker\n\n如果已安装 Docker，则可以跳过这一步，您可以使用 docker -v 命令检查是否已安装。\n\nDebian 12 系统可直接复制以下命令安装 docker、docker-compose，其它系统请参见 Docker 官方文档。\n\nfor pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done\n\nsudo apt-get update\nsudo apt-get install ca-certificates curl -y\nsudo install -m 0755 -d /etc/apt/keyrings\nsudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc\nsudo chmod a+r /etc/apt/keyrings/docker.asc\n\necho \\\n  \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \\\n  $(. /etc/os-release && echo \"$VERSION_CODENAME\") stable\" | \\\n  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null\nsudo apt-get update\n\nsudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y\n\nDocker 安装 MinIO\n\n首先创建并进入你的安装目录，编辑 docker-compose.yaml，这里我的目录是 /root/minio\n\nmkdir -p /root/minio\ncd /root/minio\nvim docker-compose.yaml\n\n将以下内容输入后，按下 esc :x 保存，输入 docker compose up -d 启动\n\nservices:\n  minio:\n    container_name: minio\n    image: quay.io/minio/minio\n    restart: always\n    volumes:\n      - ./data:/data\n    environment:\n      - TZ=Asia/Shanghai\n      - MINIO_BROWSER_REDIRECT_URL=https://minio.yourdomain/minio/ui # 请在这里输入你的域名\n      - MINIO_SERVER_URL=https://minio.yourdomain # 请在这里输入你的域名\n      - MINIO_ROOT_USER=user # 请在这里输入你的用户名\n      - MINIO_ROOT_PASSWORD=password # 请在这里输入你的密码\n    ports:\n      - \"9001:9000\"\n      - \"9091:9090\"\n    command: server /data --console-address \":9090\"\n\n请务必修改默认的用户名和密码，使用强密码增强安全性。同时确保将 yourdomain 替换为你实际使用的域名。\n\n配置反向代理和 Cloudflare 加速\n\n不出意外的话，你已经可以通过 ip:端口号 的方式访问 MinIO 的管理面板了，但考虑到存储服务的公开性，我强烈建议开启反向代理并启用 Cloudflare 加速，这里我使用 nginx proxy manager 配置反向代理，npm 的具体安装方式请参照官方文档。\n\n配置 nginx 你首先需要一个域名，以 Cloudflare 为例，添加如下的 DNS 解析，注意开启小黄云。\n\nCloudflare 的\"小黄云\"是指开启了 Cloudflare 代理服务，它能为你的服务提供额外的安全防护和性能优化。\n\n由于 Cloudflare 代理会修改请求头，导致 MinIO 的鉴权出现问题，并且缓存对象存储违反了 Cloudflare 的用户协议，我们需要关闭该子域名的缓存。\n\n在 缓存 - Cache Rules 下创建一条新的规则如下\n\n现在，我们进入 npm 的管理面板进行配置，请尽量按照我的配置方式，避免不必要的折腾。\n\n由于 MinIO 同 nginx 的适配非常烂，如果要关闭小黄云可能需要另外的 nginx 配置。所以建议 开启小黄云+绕过缓存。\n\n点设置按钮，填入以下信息：\n\nlocation /minio/ui/ {\n      rewrite ^/minio/ui/(.*) /$1 break;\n      proxy_set_header Host $http_host;\n      proxy_set_header X-Real-IP $remote_addr;\n      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n      proxy_set_header X-Forwarded-Proto $scheme;\n      proxy_set_header X-NginX-Proxy true;\n\n      # This is necessary to pass the correct IP to be hashed\n      real_ip_header X-Real-IP;\n\n      proxy_connect_timeout 300;\n\n      # To support websockets in MinIO versions released after January 2023\n      proxy_http_version 1.1;\n      proxy_buffering off;\n      proxy_set_header Upgrade $http_upgrade;\n      proxy_set_header Connection \"upgrade\";\n      # Some environments may encounter CORS errors (Kubernetes + Nginx Ingress)\n      # Uncomment the following line to set the Origin request to an empty string\n      #  proxy_set_header Origin '';\n\n      chunked_transfer_encoding off;\n\n      proxy_pass http://172.17.0.1:9091;\n   }\n\n务必开启 SSL。\n\n配置 MinIO 存储桶\n\n现在你应该可以访问 https://minio.yourdomain/minio/ui，输入你在 docker-compose.yaml 中填写的用户名和密码登录到 MinIO 的后台。\n\n点击 Create a Bucket 创建一个新的存储桶。\n\n这里以 img 为例，下面三个选项一般无需勾选。\n\n创建好桶后第一步是配置权限，首先将匿名用户的对根路径的权限设为 read only。\n\n刷新页面后，手动调整关闭匿名用户的 s3:ListBucket 权限，避免被刷目录，删除红框中标记的行，及上一行结尾的逗号，并保存。\n\n关闭 s3:ListBucket 权限是为了防止他人浏览你的存储桶中的所有文件，这是一个重要的安全措施。\n\n现在，你可以点击右上角的文件夹图标，进入 img 存储桶的根目录，上传一张照片，并测试他的预览和加载功能是否正常。\n\n同时，开启一个浏览器的匿名窗口，使用以下格式的直链测试外部访问，请注意将域名和路径替换为你自己的。\n\n如果能够正常打开，恭喜你，你的图床已经可用了。\n\nPicGo 连接图床上传图片\n\nPicGo 是一个非常实用的 Markdown 图片上传软件，为了能够连接你搭建的 MinIO 图床，你需要为存储桶配置密钥，密钥在创建后只会显示一次，请妥善保存。\n\n同时，你还要为 PicGo 安装一个插件。\n\n接下来配置这个插件。注意将端口设为 443 并勾选 useSSL\n\nbucket 是你存储桶的名称，基础目录 可任意填写，自定义域名 建议手动填写，否则图片链接会添加 443 端口，不太美观，归档 建议开启。\n\n在 上传区 将默认图床修改为 MinIO图床，拖动并上传文件测试。\n\n测试图床\n\n图片可以正常加载，至此为止，搭建完成。\n\n除了作为图床使用外，MinIO 还可以用作：\n\n个人网盘系统\n\n网站静态资源存储\n\n应用程序的对象存储后端\n\n备份存储解决方案\n\n你可以根据自己的需求进一步探索 MinIO 的高级功能。","routePath":"/guide/build-miniio-image-hosting-service-with-vps-town","lang":"zh","toc":[{"id":"前言","text":"前言","depth":2,"charIndex":110},{"id":"准备工作","text":"准备工作","depth":2,"charIndex":266},{"id":"购买-vps","text":"购买 VPS","depth":3,"charIndex":272},{"id":"安装-docker","text":"安装 Docker","depth":3,"charIndex":467},{"id":"docker-安装-minio","text":"Docker 安装 MinIO","depth":2,"charIndex":1353},{"id":"配置反向代理和-cloudflare-加速","text":"配置反向代理和 Cloudflare 加速","depth":2,"charIndex":2110},{"id":"配置-minio-存储桶","text":"配置 MinIO 存储桶","depth":2,"charIndex":3596},{"id":"picgo-连接图床上传图片","text":"PicGo 连接图床上传图片","depth":2,"charIndex":4063},{"id":"测试图床","text":"测试图床","depth":2,"charIndex":4327}],"frontmatter":{"date":"2025-04-13 20:00 +8","updated":"2025-04-14 08:00 +8","version":"v0.0.1","description":"本文详细介绍了如何使用 Docker 在 VPS.Town 服务器上部署 MinIO 对象存储服务，并通过 Nginx 反向代理和 Cloudflare 加速，打造一个高性能的个人图床。文章还包含完整的安装配置步骤和 PicGo 客户端连接指南。","category":"object-storage","sidebarTitle":"MinIO 个人图床","cardIcon":"Image","cardDescription":"利用 MinIO 在 VPS.Town 服务器上构建自己的图片托管服务","author":"听风","banner":"/assets/images/build-miniio-image-hosting-service-with-vps-town/image-20250413205953094.png","keywords":["MinIO","Docker","对象存储","图床","Cloudflare"]},"version":"","description":"本文详细介绍了如何使用 Docker 在 VPS.Town 服务器上部署 MinIO 对象存储服务，并通过 Nginx 反向代理和 Cloudflare 加速，打造一个高性能的个人图床。文章还包含完整的安装配置步骤和 PicGo 客户端连接指南。"},{"title":"如何在 VPS.Town 服务器上安装飞牛 OS","content":"本文由社区用户 (@grys2012) 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 现金 200 元 奖励。\n\n准备工作\n\n本教程基于 Debian 11 系统，将引导您如何在 VPS.Town 服务器实例上安装 飞牛 (fnOS) 系统。\n\n第一步：连接到您的 VPS 服务器\n\n最多可提供高达 8TB 大容量存储 的选项，非常适合存放大量项目代码与文档；\n\n同时也提供 SSD & HDD 混合方案，读写速度更快、成本更低；\n\n性价比高，适合个人开发者、小团队进行长期托管部署；\n\n抗 DMCA 版权投诉，可用于一些敏感项目；\n\n⚠️ 其中 1TB 存储大盘鸡续费仅需 260/年或 28.5/月，硬盘一次性买断最低仅需 ¥80/TiB\n\n服务器位于香港，距离大陆近，延迟低，速度快\n\n无 AFF 购买链接：点我一键直达\n\n使用 SSH 工具连接到您的 VPS.Town 服务器实例，确保您切换到 root 用户，以便执行后续操作。\n\n第二步：下载安装脚本\n\n我们将使用 bin456789 开发的 DD 重装脚本。该脚本简化了系统重装过程，操作更加便捷。\n\n脚本来源\n\nGitHub 项目地址：https://github.com/bin456789/reinstall\n\n如有疑虑，可以先查看项目源代码\n\n下载脚本\n\n在终端中执行以下命令：\n\ncurl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh || wget -O reinstall.sh $_\n\n第三步：运行安装脚本并设置参数\n\n执行安装命令\n\n下载完成后，运行以下命令启动安装流程：\n\nbash reinstall.sh fnos\n\n设置关键参数\n\n在提示界面中，您需要设置：\n\n登录密码：请设置一个安全性高的密码\n\n系统盘大小：根据您的需求设置，最小默认为 8G\n\n请根据您的实际硬盘容量合理分配。例如，在 40G 系统盘的情况下，可以将 FNOS 系统盘设置为 20G。\n\n第四步：等待安装完成并重启系统\n\n确认参数后，脚本将自动执行安装流程。安装过程需要一些时间，请耐心等待。\n\n安装进度监控\n\n系统会显示实时安装进度，请勿中断连接。\n\n重启系统\n\n当看到完成提示后，输入以下命令重启系统以完成安装：\n\nreboot\n\n完成安装后的界面：\n\n第五步：访问 FNOS 管理后台\n\n登录方式\n\n系统重启后，您可以通过浏览器访问 FNOS 管理界面。\n\n访问地址格式：http://您服务器IP:5666\n\n例如，如果您的服务器 IP 是 123.123.123.123，则访问地址为：\nhttp://123.123.123.123:5666\n\n安装完成！\n\n恭喜！您已成功安装 FNOS 系统，祝您使用愉快！","routePath":"/guide/fnos","lang":"zh","toc":[{"id":"准备工作","text":"准备工作","depth":2,"charIndex":122},{"id":"第一步连接到您的-vps-服务器","text":"第一步：连接到您的 VPS 服务器","depth":2,"charIndex":188},{"id":"第二步下载安装脚本","text":"第二步：下载安装脚本","depth":2,"charIndex":486},{"id":"脚本来源","text":"脚本来源","depth":3,"charIndex":548},{"id":"下载脚本","text":"下载脚本","depth":3,"charIndex":623},{"id":"第三步运行安装脚本并设置参数","text":"第三步：运行安装脚本并设置参数","depth":2,"charIndex":750},{"id":"执行安装命令","text":"执行安装命令","depth":3,"charIndex":767},{"id":"设置关键参数","text":"设置关键参数","depth":3,"charIndex":820},{"id":"第四步等待安装完成并重启系统","text":"第四步：等待安装完成并重启系统","depth":2,"charIndex":942},{"id":"安装进度监控","text":"安装进度监控","depth":3,"charIndex":996},{"id":"重启系统","text":"重启系统","depth":3,"charIndex":1025},{"id":"第五步访问-fnos-管理后台","text":"第五步：访问 FNOS 管理后台","depth":2,"charIndex":1077},{"id":"登录方式","text":"登录方式","depth":3,"charIndex":1095},{"id":"安装完成","text":"安装完成！","depth":2,"charIndex":1226}],"frontmatter":{"date":"2025-03-03T12:00:00.000Z","updated":"2025-04-01 08:00 +8","description":"本教程基于 Debian 11 系统，将引导您如何在 VPS.Town 服务器实例上安装 飞牛 (fnOS) 系统。","category":"system-security","sidebarTitle":"安装飞牛 fnOS","cardIcon":"HardDrive","cardDescription":"在 VPS.Town 服务器上安装并配置飞牛 fnOS 系统","author":"grys2012"},"version":"","description":"本教程基于 Debian 11 系统，将引导您如何在 VPS.Town 服务器实例上安装 飞牛 (fnOS) 系统。"},{"title":"如何在 VPS.Town 上安装一套可以自动更新的番剧影音系统","content":"服务器配置阶段\n\n第一步 部署安装 Docker 与 Docker-compose\n\ncurl -fsSL https://get.docker.com | bash -s docker\ncurl -L \"https://github.com/docker/compose/releases/download/v2.35.0/docker-compose-$(uname -s)-$(uname -m)\" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose\n\n文章使用编写时 Docker-compose 最新版本，如后续部署请查看版本发行地址： https://github.com/docker/compose/releases\n\n第二步 检查磁盘目录\n\n确认存储盘挂载目录 (默认为 /home)\n\n第三步 创建数据目录\n\ncd /home\n  mkdir anime\n  cd anime\n  mkdir autoBangumi qbittorrent emby\n\n第四步 将代码复制并粘贴至 anime 目录下，命名为 docker-compose.yml\n\nversion: \"3.8\"\n\nservices:\n  autobangumi:\n    image: ghcr.io/estrellaxd/auto_bangumi:latest\n    container_name: AutoBangumi\n    restart: unless-stopped\n    ports:\n      - \"27892:7892\"\n    environment:\n      TZ: Asia/Shanghai\n      PUID: \"${PUID:-1000}\"\n      PGID: \"${PGID:-1000}\"\n      UMASK: \"022\"\n    volumes:\n      - ./autobangumi/config:/app/config\n      - ./autobangumi/data:/app/data\n    networks:\n      - media\n    dns:\n      - 8.8.8.8\n\n  qbittorrent:\n    image: lscr.io/linuxserver/qbittorrent:5.0.4\n    container_name: qbittorrent\n    restart: unless-stopped\n    ports:\n      - \"28989:28989\"\n      - \"26881:26881\"\n      - \"26881:26881/udp\"\n    environment:\n      PUID: 1000\n      PGID: 1000\n      TZ: Asia/Shanghai\n      WEBUI_PORT: 28989\n      TORRENTING_PORT: 26881\n    volumes:\n      - ./qbittorrent/appdata:/config\n      - ./qbittorrent/downloads:/downloads\n    networks:\n      - media\n\n  embyserver:\n    image: emby/embyserver:4.9.0.43\n    container_name: embyserver\n    restart: unless-stopped\n    ports:\n      - \"28096:8096\"\n    volumes:\n      - ./emby/config:/config\n      - ./qbittorrent/downloads:/mnt/share1\n    networks:\n      - media\n\nnetworks:\n  media:\n    driver: bridge\n\n端口分别为：\n\nAutoBangumi：27892\n\nqBittorrent：28989\n\nemby：28096\n\n第五步 启动容器\n\ndocker-compose up -d\n\n恭喜你，三个服务就已经部署完成了接下来需要打开浏览器进行配置\n\nWeb 配置阶段\n\n第一步 下载器服务配置\n\n首先，我们需要查看 qBittorrent 的日志来获取临时密码\n\ndocker logs qbittorrent\n\n\n打开浏览器访问 http://IP:28989\n账号：admin\n密码为获取到的临时密码\n\n修改语言和密码配置\n成功登录进界面后默认为英语，我们需要修改他为常用语言并修改临时密码，首先查看左上角顶栏菜单 Tools 菜单下的 Options...\n\n打开设置界面第一页点选下拉框，将语言选择为常用语言\n\n选择后点击下方 Save 保存语言配置\n\n保存完成后，再次进入“选项”菜单，选择横向菜单栏中的 WebUI 进行用户名与密码修改\n\n建议将用户名与密码都修改为自定义配置\n\n第二步 AutoBangumi 配置\n\n首先，打开浏览器访问 http://IP:27892\n用户名：admin\n密码：adminadmin\n\n修改用户名与密码\n登录成功后，点选右上角方形图标选择账户设置\n\n弹出修改账户窗口，建议用户名与密码都修改为自定义配置设置完成后点选更新\n\n\n配置下载器信息\n查看左侧边栏，选择齿轮图标进入设置界面\n\n进入设置界面后，点击下载设置展开选项卡\n\n分别填写下载器地址、用户名、密码\n\n将以上信息修改为实际下载器的配置，完成后点击右下角应用\n\n第三步 订阅番剧\n\n首先，使用浏览器打开网址：https://mikanani.me/，如果你在国内且没有科学可以访问：https://mikanime.tv/\n进入网站后，如果没有账户请先查看右上角选择注册\n\n进入注册界面，填入相关信息并点击底部注册按钮\n\n注册完成后登录即可，本文不过多赘述\n登录后可以向下翻阅新番列表，对希望订阅的番剧点击展开菜单后订阅对应字幕组和字幕\n\n订阅后在顶部会显示订阅番剧的信息，点击右下角的 RSS 订阅 左侧图标按钮可以进入链接\n\n可以右键复制也可以打开新页面后复制链接地址\n\n第四步 设置番剧自动推送下载\n\n首先，打开 AutoBangumi 页面地址为：http://IP:27892/\n点击右上角顶栏加号图标，添加 RSS 信息将上一步骤获取的订阅链接填入第一栏并打开聚合 RSS 开关点击添加\n\n\n查看订阅状态，点击侧边栏 RSS 图标\n\n可以查看当前的 RSS 订阅，也可以设置启动与停止状态\n\n恭喜你到这里订阅下载服务就已经配置完成，订阅刷新大概需要 10 分钟左右稍等片刻就可以看到在 qBittorrent 中的下载状态\n\n待下载部分完成后再进入下一个步骤\n\n第五步 Emby 影音库配置\n\n首先，打开浏览器访问：http://IP:28096\n成功进入页面后按照向导进行配置，第一个是选择显示语言请选择您的常用语言并点击 Next\n\n第二个页面设置用户名与密码，建议复杂一些完成后点击 Next\n\n第三个界面为媒体库设置，这里先跳过直接点击 Next 按钮\n\n第四个界面为是否开启远程连接，这里默认开启可以直接点击 Next 按钮\n\n最后一个界面，同意协议后点击 Next 按钮\n\n到这里前期配置就完成了，点击 Finish 按钮结束配置\n\n结束配置后 Emby 会跳转至登录页面，首先点击手动登录\n\n跳转页面后，输入设定的用户名与密码并点击登录\n\n登录成功后，点击右上角齿轮图标进入设置\n\n进入设置后，点击左侧边栏中媒体库选项\n\n点击新增媒体库\n\n弹出菜单后，第一个内容类型选择电视节目第二个名称可自定义填写完成后点击下方添加按钮\n\n进入路径菜单后，如您使用的是默认配置则选择图中路径即可\n\n进入目录后继续点击 Bangumi 文件夹\n\n进入目录后点击确定按钮\n\n确认后回到媒体库菜单，下方选项可以参考我的配置也可以自行按照经验设定\n\n\n\n\n\n下方为默认配置，完成后点击确定\n\n等待自动刮削完成\n\n完成后点击左侧菜单栏选择首页，查看刮削后的媒体信息\n\n可以看到大部分内容已经刮削完毕，部分错误可以手动刮削进行处理\n\n🎉 结语\n\n至此，我们已经完成了 AutoBangumi + qBittorrent + Emby 的联动配置，实现了番剧自动订阅 → 下载 → 播放 的完整自动化流程。\n\n你可以进一步优化：\n\n配置 Nginx/Caddy 做反向代理 + HTTPS\n\n使用 DDNS 配置外部访问\n\n配合 Telegram 实现推送通知\n\n使用 BT 或 1Panel 面板简化容器管理","routePath":"/guide/how-to-install-autobangumi-vps-town","lang":"zh","toc":[{"id":"服务器配置阶段","text":"服务器配置阶段","depth":2,"charIndex":0},{"id":"第一步-部署安装-docker-与-docker-compose","text":"第一步 部署安装 Docker 与 Docker-compose","depth":3,"charIndex":9},{"id":"第二步-检查磁盘目录","text":"第二步 检查磁盘目录","depth":3,"charIndex":367},{"id":"第三步-创建数据目录","text":"第三步 创建数据目录","depth":3,"charIndex":402},{"id":"第四步-将代码复制并粘贴至-anime-目录下命名为-docker-composeyml","text":"第四步 将代码复制并粘贴至 anime 目录下，命名为 docker-compose.yml","depth":3,"charIndex":486},{"id":"第五步-启动容器","text":"第五步 启动容器","depth":3,"charIndex":1788},{"id":"web-配置阶段","text":"Web 配置阶段","depth":2,"charIndex":1852},{"id":"第一步-下载器服务配置","text":"第一步 下载器服务配置","depth":3,"charIndex":1862},{"id":"第二步-autobangumi-配置","text":"第二步 AutoBangumi 配置","depth":3,"charIndex":2173},{"id":"第三步-订阅番剧","text":"第三步 订阅番剧","depth":3,"charIndex":2412},{"id":"第四步-设置番剧自动推送下载","text":"第四步 设置番剧自动推送下载","depth":3,"charIndex":2669},{"id":"第五步-emby-影音库配置","text":"第五步 Emby 影音库配置","depth":3,"charIndex":2918},{"id":"-结语","text":"🎉 结语","depth":2,"charIndex":3498}],"frontmatter":{"date":"2025-04-12 22:33 +8","updated":"2025-04-19 02:05 +8","version":"v0.0.3","description":"本文基于 Debian 12 使用 AutoBangumi 配合 Mikanani 网站订阅相关番剧 RSS 并推送至 Qbittorrent自动进行下载，完成后对番剧进行重命名以便 Emby 服务识别刮削信息来实现一套完整的番剧自动更新影音系统","category":"download-media","sidebarTitle":"AutoBangumi 自动追番","cardIcon":"Film","cardDescription":"安装 AutoBangumi 搭配 qBittorrent 与 Emby 实现自动更新的番剧影音系统","keywords":["AutoBangumi","qBittorrent","Emby","Docker"]},"version":"","description":"本文基于 Debian 12 使用 AutoBangumi 配合 Mikanani 网站订阅相关番剧 RSS 并推送至 Qbittorrent自动进行下载，完成后对番剧进行重命名以便 Emby 服务识别刮削信息来实现一套完整的番剧自动更新影音系统"},{"title":"Cloudreve V4 私有云网盘搭建与优化全攻略","content":"📦 项目简介\n\nCloudreve 是一款开源网盘系统，支持多用户、多存储策略（本地、S3、Ali OSS、OneDrive 等），适合搭建私有云盘或文件分享服务。\n\n✅ 特性：\n\n多用户、多存储支持\n\n分享系统、团队协作、离线下载\n\nDocker / 从机分布式部署\n\n可接入 下载独立 CDN + 多个自定义域名\n\n🧰 环境准备\n\n推荐部署环境：VPS.Town A2 系列\n\n注：这里用捐赠版进行演示说明\n\n系统：Debian 12 或 Ubuntu 22.04\n\nCPU：1 核以上\n\n内存：1 GB 以上\n\n硬盘：系统盘 SSD，推荐带 HHD 的独立数据盘 A2 系列\n\n网络：1 IPV4\n\n必备工具：\n\nSSH 终端（FinalShell、XShell）\n\n能上网的电脑\n\n会仔细阅读理解的大脑\n\n📥 下载安装 Cloudreve\n\n前往官方 Release 页面下载 Cloudreve 程序：\n\n👉 Cloudreve Releases\n\n选择与你系统架构相符的版本（这里选择 linux_amd64），使用 FinalShell 等工具上传至服务器 /root 目录。\n\n为什么选择 linux_amd64 ？\n\nlinux_amd64 表示：\n系统平台：Linux\nCPU 架构：amd64，也叫 x86_64，常见于大多数主流云服务器、VPS 和普通电脑\n只要你用的是 Linux 操作系统 + x86/64 架构的 CPU，就选 linux_amd64\n\n📦 安装命令示例：\n\ncd /root\nchmod +x cloudreve\n\n这代表了赋予 Cloudreve 可执行权限，如果无法打开 有可能就是这步出问题了。\n\n📸 安装文件示意：\n\n🚀 首次运行与激活\n\n./cloudreve\n# 捐赠版则需要运行下面这个，需要授权的：\n./cloudreve --license-key \"你的授权密钥\"\n\n新版本在打开时需要进行 --license-key 授权，v3 版本的则不需要。\n运行后按 Ctrl + C 停止程序，进入配置阶段。\n\n首次运行需要初始化数据库、配置文件等\n（如果直接退出了，则说明有地方没有配置对）\n\n🔁 配置守护进程 systemd\n\n配置好进程守护才能保证进程的运行，至关重要。\n新建服务文件：\n\napt update -y\napt install vim -y\nsudo vim /etc/systemd/system/cloudreve.service\n\n填入的内容如下：\n\n[Unit]\nDescription=Cloudreve\nAfter=network.target\n\n[Service]\nWorkingDirectory=/root\nExecStart=/root/cloudreve\nRestart=on-failure\nRestartSec=5\nKillMode=mixed\nEnvironment=\"CR_LICENSE_KEY=你的授权密钥\"\nStandardOutput=file:/var/log/cloudreve.log\nStandardError=journal\n\n[Install]\nWantedBy=multi-user.target\n\n通过 Systemd 启动 Cloudreve\n\nsudo systemctl daemon-reload\nsudo systemctl enable cloudreve\nsudo systemctl start cloudreve\n\n日后管理 Cloudreve：\n\n以后都从这里运行和关闭程序，非常方便\n\n停止 Cloudreve\n\nsudo systemctl stop cloudreve\n\n启动 Cloudreve\n\nsudo systemctl start cloudreve\n\n重启 Cloudreve\n\nsudo systemctl restart cloudreve\n\n查看 Cloudreve 状态\n\nsudo systemctl status cloudreve\n\n⚙️ 配置 conf.ini 详解\n\n请按照需要修改：\n\n[System]\n; 运行模式，可选值为 master/slave 无需修改，默认即可\nMode = master\n; HTTP 监听端口，默认为 5212\n; 如果没有其他服务，可以选择修改成80端口+cdn\nListen = :5212\n; 是否开启 Debug 模式，默认为 false 无需修改，默认即可\nDebug = false\n; 呈递客户端 IP 时使用的 Header，默认为 X-Forwarded-For 无需修改，默认即可\nProxyHeader = X-Forwarded-For\n; 进程安全退出的最长缓冲时间，默认为 0，不限制 无需修改，默认即可\nGracePeriod = 0\n; 日志级别，可选值为 debug/info/warning/error，默认为 info\n; 可选修改成error 这样日志会少很多\nLogLevel = info\n\n; SSL 相关\n; 如果配置反向代理或者加cdn 则无需添加ssl配置！\n[SSL]\n; SSL 监听端口，默认为 443\nListen = :443\n; 证书路径，默认为空\nCertPath =\n; 私钥路径，默认为空\nKeyPath =\n\n; 启用 Unix Socket 监听\n[Unix]\n; Unix Socket 监听路径，默认为空\nListen = /run/cloudreve/cloudreve.sock\n; 设置产生的 socket 文件的权限，默认为空\nPerm = 0666\n\n; 数据库相关，如果你只想使用内置的 SQLite 数据库，这一部分直接删去即可\n[Database]\n; 数据库类型，目前支持 sqlite/mysql/postgres，默认为 sqlite\nType = sqlite\n; 数据库端口，默认为 3306\nPort = 3306\n; 用户名，默认为空\nUser =\n; 密码，默认为空\nPassword =\n; 数据库地址，默认为空\nHost = 127.0.0.1\n; 数据库名称，默认为空\nName = cloudreve\n; 连接字符集，默认为 utf8mb4\nCharset = utf8mb4\n; SQLite 数据库文件路径，默认为 data/cloudreve.db\nDBFile = cloudreve.db\n; 使用 Unix Socket 连接到数据库, 默认为 false，如需开启，请在 Host 中指定 Unix Socket 路径\nUnixSocket = false\n\n; 从机模式下的配置\n[Slave]\n; 通信密钥，默认为空\nSecret =\n; 回调请求超时时间 (s)，默认为 20\nCallbackTimeout = 20\n; 签名有效期 (s)，默认为 600\nSignatureTTL = 600\n\n; 跨域配置\n[CORS]\nAllowOrigins = *\nAllowMethods = OPTIONS,GET,POST\nAllowHeaders = *\nAllowCredentials = false\n\n; Redis 相关\n[Redis]\n; 连接类型，默认为 tcp\nNetwork = tcp\n; 服务器地址，默认为空，不启用\nServer = 127.0.0.1:6379\n; 密码，默认为空\nPassword =\n; 数据库，默认为 0\nDB = 0\n; 用户名，默认为空\nUser =\n\n; 从机配置应用配置覆盖\n[OptionOverwrite]\n; 可直接使用 `设置名称 = 值` 的格式覆盖\nqueue_slave_worker_num = 50\n\n优化建议\n\n开启 Redis 缓存\n\n独立数据库部署\n\n启用 CDN\n\n开启 HTTP/2 + GZIP\n\n日志等级改为 error\n\n上传目录挂载至独立数据盘\n\n🌐 1Panel 图形化反向代理 + SSL\n\n安装 1Panel：\n\ncurl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh | bash\n\n控制台界面：\n\n设置反代：\n\n配置 HTTPS：\n\n📁 添加存储策略\n\n后台 → 存储策略 → 添加\n\n🐳 使用 Docker 安装（可选）\n\n安装 docker\n\ncurl -sSL https://get.docker.com/ | sh\n\ndocker run -d --name cloudreve -p 5212:5212 \\\n  -v /root/cloudreve:/cloudreve \\\n  -e CR_LICENSE_KEY=你的密钥 \\\n  cloudreve.azurecr.io/cloudreve/pro:latest\n\n剩下的内容请参考：前文的使用 1panel 反向代理\n\n🛰️ 部署从机节点 & 离线下载\n\n从机节点：\n\nCloudreve 除了主节点，还可以部署多个从机节点（Slave），用于分担主节点压力、提升扩展性。\n\n📦 解压缩\n解压缩非常占用 CPU，通过从机，将上传的压缩包（.zip/.rar/.7z）通过从机解压到指定目录。\n\n🗜️ 创建压缩文件\n用户可在 Web 面板批量选择文件，生成压缩包。（耗费流量和 CPU）\n\n🚀 离线下载\n将磁力链接、BT 种子、HTTP 下载链接推送至从机节点，由从机执行下载任务，再同步到主节点存储。（耗费大量资源）\n\n分担主节点 CPU 和 IO 压力\n\n多个从机可同时解压、打包、下载，提升并发性能\n\n远程离线下载，不占用主节点带宽\n\n📌 部署说明\n\n安装 Cloudreve 至其他服务器 （参考上文安装流程）\n\n在后台里面 - 新建节点 - 自动单独生成从机 conf.ini\n\n粘贴到从机的conf.ini 文件内\n\n启动从机节点服务\n\n部署命令示例：\n\n./cloudreve --slave --license-key \"你的授权密钥\"\n\nAria2 配置：\n\nCloudreve 内的配置内容\n\nVPS 上的配置内容\n\n📦 安装 Aria2\n\n执行以下命令安装：\n\nwget -N git.io/aria2.sh && chmod +x aria2.sh && ./aria2.sh\n\n执行过程中，输入 1 确认安装。\n\n安装完成后，终端会输出 Aria2 相关配置信息及默认下载路径。\n\n⚙️ 修改 Aria2 配置文件\n\n执行命令打开配置文件：\n\nsudo vim /root/.aria2c/aria2.conf\n\n建议修改以下参数：\n\n将最大同时下载任务数调大\n将单服务器最大连接数调大\n将下载目录改为独立数据盘，防止主盘爆满\n\n###📄 配置修改参考：\n\ndir=/home/aria2/downloads\nmax-concurrent-downloads=500\nmax-connection-per-server=320\nsplit=640\n\n⚠️ 注意：\n\n修改完配置后，务必重启 Aria2 服务，否则配置不生效。\n\n./aria2.sh\n\nqBittorrent 安装设置：\n\n安装 qBittorrent 4.3.9\n\nwget https://raw.githubusercontent.com/networkdu/qb439/refs/heads/main/install.sh && chmod +x install.sh && ./install.sh\n\n修改下载路径到存储盘\n\n进入网盘后台配置 qb 离线下载\n\n测试一下即可使用\n\n❓ 常见问题 FAQ\n\nQ: 上传失败？\nA: 检查权限、磁盘空间、nginx 上传限制\n\nQ: 登录后台失败？\nA: 检查端口监听、防火墙和授权密钥\n\nQ: 如何启用 HTTPS？\nA: 推荐 1Panel 自动申请证书\n\nQ: 🚀 Docker 部署 vs 直接部署对比\n\n特性/维度\tDocker 部署\t直接部署（本地二进制）\n📦 安装复杂度\t简单，一条命令搞定，镜像自带环境\t稍复杂，需自己下载程序、授权、配置 systemd\n⚙️ 环境隔离性\t完全隔离，程序与主机环境解耦，互不影响\t直接运行在主机环境，依赖主机本地环境\n🔄 升级维护方便性\t简单换镜像，无缝更新\t手动替换程序，改 systemd，重启\n🐳 依赖管理\t镜像内自带依赖，不依赖宿主机安装额外组件\t依赖本地环境，MySQL/Redis/Aria2 需自己部署\n📁 数据持久化\t需要挂载卷（volume），否则容器重启数据丢失\t默认保存在本地目录，持久化简单\n🚀 性能\t稍有容器虚拟化开销（一般忽略不计）\t原生性能，直接运行\n📚 配置文件管理\t建议挂载配置文件目录，方便更新和备份\t本地直接编辑 /root/conf.ini 即可\n📦 多节点部署\tDocker Compose / Swarm / Kubernetes 集群化更方便\t需手动维护多机 systemd 和环境\n📄 日志管理\t容器日志走 docker logs，或挂载日志目录\t写入本地文件或 systemd 日志\n📱 运维习惯\t偏 DevOps / 云原生，现代运维偏好\t传统 VPS、服务器部署方式\n🛑 出错恢复\t重启容器即可恢复，镜像固定\t手动排查、修改配置、重启 systemd\n\n最多可提供高达 8TB 大容量存储 的选项，非常适合存放大量项目代码与文档；\n\n同时也提供 SSD & HDD 混合方案，读写速度更快、成本更低；\n\n性价比高，适合个人开发者、小团队进行长期托管部署；\n\n抗 DMCA 版权投诉，可用于一些敏感项目；\n\n⚠️ 其中 1TB 存储大盘鸡续费仅需 260/年或 28.5/月，硬盘一次性买断最低仅需 ¥80/TiB\n\n服务器位于香港，距离大陆近，延迟低，速度快\n\n无 AFF 购买链接：点我一键直达","routePath":"/guide/how-to-install-cloudreve-v4-vps-town","lang":"zh","toc":[{"id":"-项目简介","text":"📦 项目简介","depth":2,"charIndex":0},{"id":"-环境准备","text":"🧰 环境准备","depth":2,"charIndex":161},{"id":"-下载安装-cloudreve","text":"📥 下载安装 Cloudreve","depth":2,"charIndex":359},{"id":"-安装命令示例","text":"📦 安装命令示例：","depth":3,"charIndex":646},{"id":"-安装文件示意","text":"📸 安装文件示意：","depth":3,"charIndex":731},{"id":"-首次运行与激活","text":"🚀 首次运行与激活","depth":2,"charIndex":743},{"id":"-配置守护进程-systemd","text":"🔁 配置守护进程 systemd","depth":2,"charIndex":936},{"id":"日后管理-cloudreve","text":"日后管理 Cloudreve：","depth":2,"charIndex":1493},{"id":"停止-cloudreve","text":"停止 Cloudreve","depth":3,"charIndex":1530},{"id":"启动-cloudreve","text":"启动 Cloudreve","depth":3,"charIndex":1575},{"id":"重启-cloudreve","text":"重启 Cloudreve","depth":3,"charIndex":1621},{"id":"查看-cloudreve-状态","text":"查看 Cloudreve 状态","depth":3,"charIndex":1669},{"id":"️-配置-confini-详解","text":"⚙️ 配置 conf.ini 详解","depth":2,"charIndex":1719},{"id":"优化建议","text":"优化建议","depth":2,"charIndex":3279},{"id":"-1panel-图形化反向代理--ssl","text":"🌐 1Panel 图形化反向代理 + SSL","depth":2,"charIndex":3361},{"id":"-添加存储策略","text":"📁 添加存储策略","depth":2,"charIndex":3503},{"id":"-使用-docker-安装可选","text":"🐳 使用 Docker 安装（可选）","depth":2,"charIndex":3530},{"id":"️-部署从机节点--离线下载","text":"🛰️ 部署从机节点 & 离线下载","depth":2,"charIndex":3782},{"id":"-部署说明","text":"📌 部署说明","depth":2,"charIndex":4096},{"id":"aria2-配置","text":"Aria2 配置：","depth":2,"charIndex":4254},{"id":"-安装-aria2","text":"📦 安装 Aria2","depth":3,"charIndex":4295},{"id":"️-修改-aria2-配置文件","text":"⚙️ 修改 Aria2 配置文件","depth":3,"charIndex":4431},{"id":"️-注意","text":"⚠️ 注意：","depth":3,"charIndex":4666},{"id":"qbittorrent-安装设置","text":"qBittorrent 安装设置：","depth":2,"charIndex":4717},{"id":"安装-qbittorrent-439","text":"安装 qBittorrent 4.3.9","depth":3,"charIndex":4736},{"id":"-常见问题-faq","text":"❓ 常见问题 FAQ","depth":2,"charIndex":4920}],"frontmatter":{"date":"2025-04-12 15:00 +8","updated":"2025-04-29 18:10 +8","version":"v0.0.1","description":"全面图文教程，手把手教你在 Linux 服务器上搭建 Cloudreve 私有云网盘，附带 Docker、反向代理、从机节点和离线下载配置方法。","category":"cloud-drive","sidebarTitle":"Cloudreve V4 私有云网盘","cardIcon":"Cloud","cardDescription":"在 VPS.Town 服务器上部署 Cloudreve V4 网盘系统","banner":"/assets/images/how-to-install-cloudreve-v4-vps-town/add-storage.jpg","keywords":["Cloudreve","私有云","网盘搭建","Docker部署","反向代理"]},"version":"","description":"全面图文教程，手把手教你在 Linux 服务器上搭建 Cloudreve 私有云网盘，附带 Docker、反向代理、从机节点和离线下载配置方法。"},{"title":"如何在 VPS.Town 服务器上安装和配置 Cloudreve 个人网盘","content":"本文由用户 (grys2012) 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 现金 35 元 奖励。\n\n引言\n\n本教程基于 Debian 12 系统，将引导您如何在 VPS.Town 服务器上安装和配置 Cloudreve 个人网盘。\n\nQ: 为什么要部署 Cloudreve？\nA: Cloudreve 是我目前使用认为比较方便以及排版好看的网盘\n\n先来看看官方是怎么宣传的：Cloudreve 可以让您快速搭建起公私兼备的网盘系统。Cloudreve 在底层支持不同的云存储平台，用户在实际使用时 无须关心物理存储方式。你可以使用 Cloudreve 搭建个人用网盘、文件分享系统，亦或是针对大小团体的公有云系统。\n\n下面，让我们开始安装吧\n\n第一步：连接到您的 VPS 服务器\n\n最多可提供高达 8TB 大容量存储 的选项，非常适合存放大量项目代码与文档；\n\n同时也提供 SSD & HDD 混合方案，读写速度更快、成本更低；\n\n性价比高，适合个人开发者、小团队进行长期托管部署；\n\n抗 DMCA 版权投诉，可用于一些敏感项目；\n\n⚠️ 其中 1TB 存储大盘鸡续费仅需 260/年或 28.5/月，硬盘一次性买断最低仅需 ¥80/TiB\n\n服务器位于香港，距离大陆近，延迟低，速度快\n\n无 AFF 购买链接：点我一键直达\n\n使用 SSH 工具连接到您的 VPS.Town 服务器实例，确保您切换到 root 用户，以便执行后续操作。\n\n第二步：安装 1Panel 面板\n\n或可自行选择基底面板如宝塔，对 Nginx 熟悉的也可以跳过这一步\n\n以下命令适用于 Debian 12 系统，其他系统安装 1Panel 可 参考此链接\n\ncurl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh\n\n可选择中文安装，按照步骤提示，设置属于自己的安装目录、端口号、账号密码等信息\n\n\n安装后会输出后台信息\n\n登录即可\n\n在左侧菜单栏（网站-网站处）安装 openresty\n\n第三步：设置域名信息（若无域名也可略过这步，不影响后续步骤）\n\n在该处选择填写您的 acme 账户以及 DNS 账户\n如下\n\n\n注意：Acme 账户可填写任意邮箱，我以A123321EEE@gmail.com举例\n\n填写后保存即可\n\nDNS 账户需要根据您的域名服务商，打开对应控制页面，我以 CF 举例，打开如下网址并登录\n\nhttps://www.cloudflare.com/\n\n右上角打开配置文件\n\nAPI 令牌\n\n创建令牌\n\n使用模板\n\n选择你的对应域名，选择继续\n\n\n创建令牌\n\n获取生成的令牌后妥善保存好\n\n复制刚刚生成的 API 令牌，填入 DNS 账户处(邮箱为 CF 账户邮箱)\n\n到此处，已完成域名信息的填写\n\n第四步：安装 cloudreve，这是我目前使用起来得心应手的网盘，适合自用以及给他人分享\n\n进入 1panel 应用商店，安装 cloudreve\n\n记住您的端口，且开放外部端口访问并安装\n\n等待安装完毕\n\n安装完毕后，打开日志，查看账号密码\n\n\n访问您的 IP 加设置的端口号，输入账号密码后登录后台\n\n过程中可以先设置好域名和 HTTPS\n访问域名服务商后台，将您的域名和 IP 绑定上，这里不演示了，下面进行后续步骤\n\n\n\n\n\n\n\n保存即可\n\n访问您的域名\n\n登录后打开后台管理面板\n\n会提示不一致，点击更改即可\n\n在该处可以设置空间大小，以及用户组和用户信息等高阶玩法，可以自行研究\n\n第五步：享受成果\n\n可以拖拽上传文件，也可以利用 QB、aria2 等下载磁力链接，毕竟 VPS.Town 抗版权投诉，请自由发挥\n\n还可以分享给朋友\n\n这个网盘是我目前使用认为比较方便以及排版好看的网盘，推荐给大家","routePath":"/guide/how-to-install-cloudreve-vps-town","lang":"zh","toc":[{"id":"引言","text":"引言","depth":2,"charIndex":118},{"id":"第一步连接到您的-vps-服务器","text":"**第一步：连接到您的 VPS 服务器**","depth":2,"charIndex":390},{"id":"第二步安装-1panel-面板","text":"**第二步：安装 1Panel 面板**","depth":2,"charIndex":688},{"id":"第三步设置域名信息若无域名也可略过这步不影响后续步骤","text":"**第三步：设置域名信息（若无域名也可略过这步，不影响后续步骤）**","depth":2,"charIndex":985},{"id":"第四步安装-cloudreve这是我目前使用起来得心应手的网盘适合自用以及给他人分享","text":"**第四步：安装 cloudreve，这是我目前使用起来得心应手的网盘，适合自用以及给他人分享**","depth":2,"charIndex":1302},{"id":"第五步享受成果","text":"**第五步：享受成果**","depth":2,"charIndex":1600}],"frontmatter":{"date":"2025-04-11T13:30:00.000Z","updated":"2025-04-12 08:00 +8","description":"本教程详细介绍了如何在 VPS.Town 的 Debian 12 服务器上安装和配置 Cloudreve 个人网盘","category":"cloud-drive","sidebarTitle":"Cloudreve V3 个人网盘","cardIcon":"Cloud","cardDescription":"在 VPS.Town 服务器上部署 Cloudreve 网盘系统","author":"grys2012","keywords":["Cloudreve","Docker","Debian","安装教程"]},"version":"","description":"本教程详细介绍了如何在 VPS.Town 的 Debian 12 服务器上安装和配置 Cloudreve 个人网盘"},{"title":"新人专用：兰空图床安装配置手册","content":"本文由用户 xiaoqingnian- 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 -- 奖励。\n\n看到有人在某坛问兰空图床的问题，意识到虽然有官方文档和社区加持，但可能仍然有一些细节存在坑点，导致安装不成功。最近入了 VPS.Town 的 A2 大盘鸡，刚好要再装一次，便分享一份安装指南，回馈社区。\n\n本指南适用于在 VPS.Town 服务器(Debian 系统) 上使用 Docker 安装兰空图床，并通过宿主机上的 Nginx 进行访问。整个过程分为 5 个简单步骤，即使是没有接触过的新人同学也可以很快上手，轻松完成。\n\n准备工作\n\n需要的环境：\n\nDebian 系统（确保你能正确使用 SSH / VNC 登入）\n\nDocke 已安装\n\nNginx 已安装在宿主机\n\n准备一个已经完成好 DNS 解析的域名 (例如：img.domain.com)\n\n确认 Docker 是否正常：\n\n# 在终端输入以下命令\nDocker version\n# 如果显示版本号，说明Docker已安装\n\n未安装的话，可参考以下命令快速安装\n\nDocker 安装\n\n更新系统包列表\n\nsudo apt update\nsudo apt upgrade -y\n\n安装必要的依赖\n\nsudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release\n\n添加 Docker 官方 GPG 密钥\n\ncurl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg\n\n添加 Docker 仓库\n\necho \"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable\" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null\n\n安装 Docker Engine\n\nsudo apt install -y docker-ce docker-ce-cli containerd.io\n\n验证\n\ndocker version\n\n确认 Nginx 是否正常：\n\n# 在终端输入以下命令\nnginx -v\n# 如果显示版本号，说明Nginx已安装\n\n如未安装，可 Refer nginx 安装手册\n\n第一步：创建项目目录\n\n如果你没有修改挂载目录的话 ，那么你可以直接照着做就可以。建议把 Docker 数据放数据盘，不占用系统盘容量，当然如果你进行了扩容且够用的话当我没说。\n\n先查看挂载目录\n\ndf -h\n\n可以看到数据盘是在 /home 路径\n\n然后我们来创建项目目录\n\n# 创建项目目录\nmkdir -p /home/Docker/lsky-pro\ncd /home/Docker/lsky-pro\n\n# 创建数据目录\nmkdir -p ./mysql  # MySQL数据存储\nmkdir -p ./lsky   # Lsky数据存储\n\n第二步：创建 Docker Compose 配置文件\n\n# 在项目目录中创建Docker-compose.yml文件\nnano Docker-compose.yml\n\n复制以下内容到编辑器中：\n\nversion: \"3\"\n\nservices:\n  mysql:\n    image: mysql:8.0\n    container_name: lsky_mysql\n    restart: always\n    environment:\n      MYSQL_ROOT_PASSWORD: mysql_password # 请修改为强密码\n      MYSQL_DATABASE: lsky # 数据库名称\n      MYSQL_USER: lsky # 数据库用户名\n      MYSQL_PASSWORD: lsky_password # 请修改为强密码\n    volumes:\n      - ./mysql:/var/lib/mysql\n    networks:\n      - lsky_network\n    healthcheck:\n      test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\", \"-u\", \"root\", \"-p$$MYSQL_ROOT_PASSWORD\"]\n      interval: 5s\n      timeout: 5s\n      retries: 5\n\n  lsky:\n    image: halcyonazure/lsky-pro-Docker:latest\n    container_name: lskypro\n    restart: always\n    ports:\n      - \"127.0.0.1:8089:8089\" # 只监听本地接口，增加安全性\n    volumes:\n      - ./lsky:/var/www/html/storage\n    depends_on:\n      mysql:\n        condition: service_healthy\n    networks:\n      - lsky_network\n\nnetworks:\n  lsky_network:\n    driver: bridge\n\n请将示例中的 mysql_password 和 lsky_password 修改为你自己的强密码\n\n按 Ctrl+O 保存文件，然后按 Enter 确认，最后按 Ctrl+X 退出编辑器。\n\n第三步：启动服务\n\n# 在/home/Docker/lsky-pro目录中运行\ncd /home/Docker/lsky-pro\nDocker compose up -d\n\n这条命令会启动 MySQL 和兰空图床两个容器，-d 表示在后台运行。\n\n检查服务是否正常运行：\n\nDocker ps\n\n你应该看到两个容器都处于 Up 状态，说明启动成功。\n\n第四步：配置 Nginx 反向代理\n\n# 创建Nginx配置文件\nnano /etc/nginx/conf.d/lsky.conf\n\n复制以下内容到编辑器中（包含注释）：\n\nserver {\n    listen 80;                          # 监听80端口\n    server_name img.example.com;        # [修改] 将这里改为你的域名\n\n    # 日志文件位置\n    access_log /var/log/nginx/lsky.access.log;\n    error_log /var/log/nginx/lsky.error.log;\n\n    location / {\n        proxy_pass http://127.0.0.1:8089;      # 转发请求到兰空图床服务\n\n        # 设置HTTP请求头\n        proxy_set_header Host $host;\n        proxy_set_header X-Real-IP $remote_addr;\n        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n        proxy_set_header X-Forwarded-Proto $scheme;\n\n        # 上传文件大小限制和超时设置\n        client_max_body_size 100m;             # 允许上传的最大文件大小\n        proxy_connect_timeout 120;             # 连接超时时间\n        proxy_send_timeout 120;                # 发送超时时间\n        proxy_read_timeout 120;                # 读取超时时间\n    }\n}\n\n请将 img.example.com 替换为你自己的域名\n\n按 Ctrl+O 保存文件，然后按 Enter 确认，最后按 Ctrl+X 退出编辑器。\n然后重新加载 Nginx 配置：\n\n# 检查Nginx配置是否有错误\nnginx -t\n\n# 重新加载Nginx配置\nnginx -s reload\n\n第五步：完成兰空图床初始设置\n\n1. 打开浏览器，访问你的域名\n\n例如：http://img.example.com（替换为你自己的域名）\n以上配置正确的话，会进入到兰空图床安装程序，请点击下一步\n展示如下：\n\n2. 数据库配置 & 管理员配置页面\n\n填写以下信息：\n\n配置项\t填写内容\t注意事项\n数据库地址\tlsky_mysql\t这里填写容器名称，不要填写 127.0.0.1\n数据库端口\t3306\t保持默认\n数据库名称\tlsky\t与Docker-compose.yml中设置一致\n数据库用户名\tlsky\t与Docker-compose.yml中设置一致\n数据库用户密码\tlsky_password\t与Docker-compose.yml中设置一致\n\n数据库地址必须填写 lsky_mysql (容器名称)，而不是 localhost 或 127.0.0.1\n\n确保密码与 Docker-compose.yml 中设置的一致\n\n点击【立即安装】，等待安装完成。\n\n3. 安装完成\n\n安装成功后，系统会自动跳转到登录页面。使用刚才设置的管理员账号和密码登录系统。\n\n恭喜你\n\n现在你已经成功安装了兰空图床！你可以开始使用它来管理和分享你的图片了。\n\n但仍然有一些安全策略需要进行，如为你的网站添加 https ，控制并发请求数，设置合理的访问控制和防火墙策略等。另外还有一些兰空图床的具体玩法，如设置用户组，设置不同的存储策略（ e.g oss 存储,sftp ），邮件配置等等，这里也都不逐一展开了。\n\n祝你玩的愉快， Have Fun!\n\n常见问题解决\n\n安装过程中断或出错\n\n如果安装过程中断或出错，可以重置数据库后重新开始：\n\n# 停止所有服务\ncd /home/Docker/lsky-pro\nDocker compose down\n\n# 删除MySQL数据目录 再重新创建\nrm -rf ./mysql && mkdir ./mysql\n\n# 重新启动服务\nDocker compose up -d\n\n然后重新访问你的域名，再次进行安装。\n\n上传图片失败\n\n如果上传图片失败，可能是权限问题，执行：\n\n# 修复上传目录权限\nDocker exec -it lsky-pro chown -R www-data:www-data /var/www/html/storage/app/uploads","routePath":"/guide/how-to-install-lsky-vps-town","lang":"zh","toc":[{"id":"准备工作","text":"准备工作","depth":2,"charIndex":332},{"id":"第一步创建项目目录","text":"第一步：创建项目目录","depth":2,"charIndex":1254},{"id":"第二步创建-docker-compose-配置文件","text":"第二步：创建 Docker Compose 配置文件","depth":2,"charIndex":1528},{"id":"第三步启动服务","text":"第三步：启动服务","depth":2,"charIndex":2618},{"id":"第四步配置-nginx-反向代理","text":"第四步：配置 Nginx 反向代理","depth":2,"charIndex":2794},{"id":"第五步完成兰空图床初始设置","text":"第五步：完成兰空图床初始设置","depth":2,"charIndex":3823},{"id":"1-打开浏览器访问你的域名","text":"1. 打开浏览器，访问你的域名","depth":3,"charIndex":3839},{"id":"2-数据库配置--管理员配置页面","text":"2. 数据库配置 & 管理员配置页面","depth":3,"charIndex":3929},{"id":"3-安装完成","text":"3. 安装完成","depth":3,"charIndex":4256},{"id":"恭喜你","text":"恭喜你","depth":2,"charIndex":4306},{"id":"常见问题解决","text":"常见问题解决","depth":2,"charIndex":4495},{"id":"安装过程中断或出错","text":"安装过程中断或出错","depth":3,"charIndex":4503},{"id":"上传图片失败","text":"上传图片失败","depth":3,"charIndex":4700}],"frontmatter":{"date":"2025-04-13 14:34 +8","updated":"2025-04-28 16:00 +8","version":"v0.0.1","description":"本文介绍了在 VPS.Town VPS (Debian 系统)上使用 Docker 安装兰空图床，并通过 Nginx 反代访问的完整步骤，适合 Docker 新手快速上手。","category":"object-storage","sidebarTitle":"兰空图床 (Lsky)","cardIcon":"Image","cardDescription":"在 VPS.Town 服务器上部署 Lsky 图床服务","author":"xiaoqingnian-","banner":"/assets/images/c187b4412ff5/how-to-install-lsky-banner.png","keywords":["兰空图床","Docker项目"]},"version":"","description":"本文介绍了在 VPS.Town VPS (Debian 系统)上使用 Docker 安装兰空图床，并通过 Nginx 反代访问的完整步骤，适合 Docker 新手快速上手。"},{"title":"在 VPS.Town 安装 Nginx 完全指南","content":"本文由用户 xiaoqingnian- 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 -- 奖励。\n\n1. Nginx 简介\n\nNginx (发音为 \"engine-x\") 是一个高性能的开源 Web 服务器和反向代理服务器。它因其高效、稳定、低内存消耗和高并发连接处理能力而闻名。\n\n主要用途：\n\nWeb 服务器：提供静态内容，如 HTML、CSS、JavaScript 等\n\n反向代理：将客户端请求转发到后端服务器\n\n负载均衡器：在多个后端服务器之间分配流量\n\n缓存服务器：缓存静态内容，减轻后端压力\n\nAPI 网关：管理 API 请求和响应\n\n2. 安装准备\n\n2.1 系统要求\n\nNginx 可以在多种操作系统上运行，包括： Linux (各种发行版)、FreeBSD、macOS、Windows。\n\n2.2 安装前的准备工作\n\n在安装 Nginx 前，请确保系统已更新并安装必要的依赖包：\n\n# Debian/Ubuntu 系统\nsudo apt update\nsudo apt install -y build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev\n\n# CentOS/RHEL 系统\nsudo yum update\nsudo yum install -y gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel\n\n我更偏爱 Debian 一点，以我的本地环境(Debian 12.0)为例，给出安装截图：\n\n3. 安装方法\n\n3.1 使用包管理器安装 (五星推荐)\n\nDebian/Ubuntu\n\nsudo apt update\nsudo apt install -y nginx\n\nCentOS/RHEL\n\nsudo yum install epel-release\nsudo yum install nginx\n\n安装完记的去设置开机启动，参见Nginx 管理。\n\n3.2 源代码编译安装\n\n源码安装可以个性化选择想要的模块，集成自己想要的第三方模块，还可以针对特定硬件做优化。\n但对于我们普通用户来说可以但没必要。以前玩树莓派的时候编过，现在没有热情了没有再完整编译安装过，这里也不做推荐。只是为了文档完整性，作为补充。\n\n步骤 1:下载源码包\n\n# 创建下载目录\nmkdir -p ~/nginx-build && cd ~/nginx-build\n\n# 下载最新稳定版\nwget http://nginx.org/download/nginx-1.24.0.tar.gz\n\n步骤 2: 解压源码包\n\ntar -zxvf nginx-1.24.0.tar.gz\ncd nginx-1.24.0\n\n步骤 3:配置编译选项\n\n./configure \\\n  --prefix=/usr/local/nginx \\\n  --with-http_ssl_module \\\n  --with-http_v2_module \\\n  --with-http_realip_module \\\n  --with-http_gzip_static_module \\\n  --with-http_stub_status_module\n\n步骤 4: 编译和安装\n\n# 编译\nmake\n\n# 安装\nsudo make install\n\n3.3 验证安装\n\n# 检查 Nginx 版本\n/usr/local/nginx/sbin/nginx -v\n\n# 检查配置文件语法\n/usr/local/nginx/sbin/nginx -t\n\n4.配置 Nginx\n\n4.1 目录结构\n\n安装完成后， Nginx 的主要目录结构如下：\n\n目录/文件\t描述\n/etc/nginx/ 或 /usr/local/nginx/conf/\t配置文件目录\n/etc/nginx/nginx.conf 或 /usr/local/nginx/conf/nginx.conf\t主配置文件\n/etc/nginx/sites-available/\t可用站点配置\n/etc/nginx/sites-enabled/\t已启用站点配置\n/var/log/nginx/ 或 /usr/local/nginx/logs/\t日志文件目录\n/usr/share/nginx/html/ 或 /usr/local/nginx/html/\t默认网站文件目录\n\n4.2 常见配置场景\n\n静态网站配置\n\nnginxserver {\n    listen 80;\n    server_name example.com www.example.com;\n    root /var/www/example.com;\n    index index.html;\n\n    location / {\n        try_files $uri $uri/ =404;\n    }\n}\n\n反向代理配置\n\nnginxserver {\n    listen 80;\n    server_name api.example.com;\n\n    location / {\n        proxy_pass http://localhost:3000;\n        proxy_set_header Host $host;\n        proxy_set_header X-Real-IP $remote_addr;\n        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n        proxy_set_header X-Forwarded-Proto $scheme;\n    }\n}\n\n负载均衡配置\n\nnginxupstream backend {\n    server backend1.example.com weight=3;\n    server backend2.example.com;\n    server backend3.example.com;\n}\n\nserver {\n    listen 80;\n    server_name example.com;\n\n    location / {\n        proxy_pass http://backend;\n    }\n}\n\n5. Nginx 管理\n\n5.1 服务控制\n\n系统服务方式 (systemd)\n\n# 启动 Nginx\nsudo systemctl start nginx\n\n# 停止 Nginx\nsudo systemctl stop nginx\n\n# 重启 Nginx\nsudo systemctl restart nginx\n\n# 重新加载配置\nsudo systemctl reload nginx\n\n# 查看状态\nsudo systemctl status nginx\n\n# 设置开机启动 (建议开启)\nsudo systemctl enable nginx\n\n手动控制\n\n# 启动 Nginx\nsudo nginx\n\n# 停止 Nginx\nsudo nginx -s stop\n\n# 优雅停止（等待请求处理完毕）\nsudo nginx -s quit\n\n# 重新加载配置\nsudo nginx -s reload\n\n# 检查配置文件语法\nsudo nginx -t\n\n6. Extra\n\n还有一些别的配置，如日志管理， Nginx 性能优化、安全配置，这里暂且不谈，有机会在下一篇我们再聊。\n\nRefer\n\n1. Nginx 官方手册\n\n2. Nginx Github 仓库","routePath":"/guide/how-to-install-nginx-vps-town","lang":"zh","toc":[{"id":"1-nginx-简介","text":"1. Nginx 简介","depth":2,"charIndex":116},{"id":"2-安装准备","text":"2. 安装准备","depth":2,"charIndex":340},{"id":"21-系统要求","text":"2.1 系统要求","depth":3,"charIndex":349},{"id":"22-安装前的准备工作","text":"2.2 安装前的准备工作","depth":3,"charIndex":420},{"id":"3-安装方法","text":"3. 安装方法","depth":2,"charIndex":761},{"id":"31-使用包管理器安装-五星推荐","text":"3.1 使用包管理器安装 (**五星推荐**)","depth":3,"charIndex":770},{"id":"32-源代码编译安装","text":"3.2 源代码编译安装","depth":3,"charIndex":942},{"id":"33-验证安装","text":"3.3 验证安装","depth":3,"charIndex":1516},{"id":"4配置-nginx","text":"4.配置 Nginx","depth":2,"charIndex":1615},{"id":"41-目录结构","text":"4.1 目录结构","depth":3,"charIndex":1627},{"id":"42-常见配置场景","text":"4.2 常见配置场景","depth":3,"charIndex":1953},{"id":"5-nginx-管理","text":"5. Nginx 管理","depth":2,"charIndex":2766},{"id":"51-服务控制","text":"5.1 服务控制","depth":3,"charIndex":2779},{"id":"6-extra","text":"6. Extra","depth":2,"charIndex":3198},{"id":"refer","text":"Refer","depth":2,"charIndex":3261}],"frontmatter":{"date":"2025-04-13 12:38 +8","updated":"2025-04-28 16:00 +8","version":"v0.0.1","description":"Nginx 安装指南: 介绍了什么是 Nginx 以及其安装方法、基础配置和服务管理，适合初学者快速掌握核心功能。","category":"web-services","sidebarTitle":"Nginx 安装与配置","cardIcon":"Globe","cardDescription":"在 VPS.Town 服务器上部署并配置 Nginx","author":"xiaoqingnian-","banner":"/assets/images/c187b4412ff5/how-to-install-nginx-banner.png","keywords":["Nginx","Linux","新人安装指南"]},"version":"","description":"Nginx 安装指南: 介绍了什么是 Nginx 以及其安装方法、基础配置和服务管理，适合初学者快速掌握核心功能。"},{"title":"如何在 VPS.Town 服务器中安装 Syncthing","content":"本文由用户 k08255-lxm 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 -- 奖励。\n\n什么是 Syncthing?\n\nSyncthing 是一个开源、免费、跨平台的点对点 (P2P) 文件同步工具。与传统的云存储服务（如 Dropbox 或 Google Drive）不同，Syncthing 的数据传输是去中心化的，直接在您控制的设备之间进行，不经过任何中央服务器。这为您提供了更高的数据隐私性和控制权。\n\n在 VPS.Town 服务器上使用 Syncthing 可以带来诸多便利：\n\n服务器文件备份： 将服务器上的重要配置文件、网站数据等实时同步到您的本地电脑或其他服务器。\n\n多服务器文件分发： 如果您管理多个 VPS.Town 实例，可以使用 Syncthing 轻松地将文件或更新分发到所有实例。\n\n构建个人同步云： 结合 VPS.Town 服务器的稳定在线特性，您可以将其作为同步网络中的一个可靠节点。\n\n本教程将指导您在基于 Debian 12 的 VPS.Town 服务器上安装和基本配置 Syncthing。\n\n为什么选择 VPS.Town?\n\n最多可提供高达 8TB 大容量存储 的选项，随时随地备份大量数据；\n\n同时提供 SSD & HDD 混合方案，读写速度更快、同步速度更稳定；\n\n完善的售后保障，支持随时增加硬盘、灵活升级配置，还支持 7 天内有理由退款；\n\n1TB 存储大盘鸡续费仅需 260/年或 28.5/月，硬盘一次性买断最低仅需 ¥80/TiB\n\n服务器位于香港，距离大陆近，对于移动用户更加友好\n\n无 AFF 购买链接：点我一键直达\n\n准备工作\n\n本教程明确针对 VPS.Town 的 Debian 12 (Bookworm) 服务器实例 操作。\n\nSyncthing 的配置步骤在其他 Linux 发行版上基本一致，但软件包安装和防火墙配置命令可能不同。\n\n在开始之前，请确保您满足以下条件：\n\n至少拥有一台运行 Debian 12 的服务器实例。\n\n您需要同步的另一台设备（可以是本地电脑 Windows/macOS/Linux，或另一台服务器）。\n\n具备基本的 Linux 命令行操作知识。\n\n拥有服务器的 root 权限或 sudo 权限。\n\n在 VPS.Town 服务器 (Debian 12) 上安装 Syncthing\n\n我们将使用 Syncthing 官方推荐的 APT 仓库进行安装，以确保获取最新版本。该方法在 Debian 12 上运行良好。\n\n安装依赖 (如果需要):\n确保 curl 和 gpg 已安装。通常 Debian 12 默认包含，但执行一下无妨。\n\nsudo apt update\nsudo apt install curl gpg -y\n\n添加 Syncthing 的 PGP 密钥：\n\nsudo curl -s -o /usr/share/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg\n这条命令会下载 Syncthing 的发布密钥并保存到指定位置，用于验证软件包的真实性。\n\n添加 Syncthing 的 APT 仓库：\n推荐使用 stable (稳定版) 频道。\n\necho \"deb [signed-by=/usr/share/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable\" | sudo tee /etc/apt/sources.list.d/syncthing.list\n这条命令将 Syncthing 的稳定版仓库地址写入 APT 的源列表文件中。\n\n更新软件包列表并安装 Syncthing：\n\nsudo apt update\nsudo apt install syncthing -y\n首先更新本地的软件包索引，然后执行安装命令。\n\n验证安装：\n\nsyncthing --version\n如果看到 Syncthing 的版本号输出，则表示安装成功，输出应该类似于这样：\n\nsyncthing v1.29.5 \"Gold Grasshopper\" (go1.24.2 linux-amd64) debian@github.syncthing.net 2025-04-12 12:55:24 UTC [noupgrade]\n\n首次配置与访问 Web UI\n\nSyncthing 提供了一个基于 Web 的图形用户界面 (GUI) 来进行管理。默认情况下，它只监听本地回环地址 (127.0.0.1) 的 8384 端口，需要修改配置才能从外部访问。\n\n首次运行 Syncthing (生成配置)：\n在服务器上执行一次 syncthing 命令(最好是非 root 的普通用户)，它会生成默认的配置文件，然后按 Ctrl+C 停止它。\n\nsyncthing\n\n#下面是我执行以后输出的最后几行\n# [35WMX] 2025/04/13 21:15:25 INFO: Creating new HTTPS certificate\n#[35WMX] 2025/04/13 21:15:25 INFO: Ready to synchronize \"Default Folder\" (default) (sendreceive)\n#[35WMX] 2025/04/13 21:15:25 INFO: Completed initial scan of sendreceive folder \"Default Folder\" (default)\n#[35WMX] 2025/04/13 21:15:25 INFO: GUI and API listening on 127.0.0.1:8384\n#[35WMX] 2025/04/13 21:15:25 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/\n#[35WMX] 2025/04/13 21:15:25 INFO: My name is \"HKG-A2-AF0CIDDAFCR68WMC\"\n#[35WMX] 2025/04/13 21:15:25 WARNING: Syncthing should not run as a privileged or system user. Please consider using a normal user account.\n\n确认并编辑配置文件：\nSyncthing 的配置文件通常位于 /用户名/.local/state/syncthing/config.xml。您可以通过以下命令确认具体路径：\n\nsyncthing --paths\n记下 \"Configuration\" 对应的路径。下面以常见的 /root/.local/state/syncthing/config.xml 为例进行编辑（如果您的路径不同，请替换命令中的路径）：\n\nnano ~/.config/syncthing/config.xml\n\n允许远程访问 Web UI (重要！)：\n找到 <gui> 标签下的 <address> 行，将其内容从 127.0.0.1:8384 修改为 0.0.0.0:8384：\n\n<gui enabled=\"true\" tls=\"false\" debugging=\"false\">\n    <address>0.0.0.0:8384</address> <!-- 修改这里 -->\n    <!-- user 和 password 稍后在 Web UI 中设置 -->\n    <user></user>\n    <password></password>\n    <apikey>...</apikey>\n    <theme>default</theme>\n</gui>\n按 Ctrl+X，然后按 Y 保存，最后按 Enter 确认。\n也可以使用一键命令来进行修改（需替换自己的路径）\n\nsed -i 's|<address>127.0.0.1:8384</address>|<address>0.0.0.0:8384</address>|g' /root/.local/state/syncthing/config.xml\n\n将 Web UI 直接监听在 0.0.0.0 (所有网络接口) 会将其暴露于公网，存在安全风险。强烈建议 采取以下至少一种安全措施：\n\n配置防火墙： 仅允许特定可信 IP 地址访问 8384 端口。\n\n使用 SSH 隧道： (推荐用于临时或个人访问) 这是更安全的方式，无需修改监听地址或开放防火墙。\n\n设置反向代理： (推荐用于长期或多人访问) 使用 Nginx 或 Caddy 等设置反向代理，并配置 HTTPS 加密和访问控制。\n\n启动 Syncthing 服务 (Systemd):\n为了让 Syncthing 在后台持续运行并开机自启，我们使用 systemd。将 <user> 替换为您运行 Syncthing 的用户名（必须是您生成配置文件的那个用户）。\n\nsudo systemctl enable syncthing@<user>.service\nsudo systemctl start syncthing@<user>.service\n例如，如果您的用户名是 vpstownuser：\n\nsudo systemctl enable syncthing@vpstownuser.service\nsudo systemctl start syncthing@vpstownuser.service\n检查服务状态：\n\nsystemctl status syncthing@<user>.service\n如果服务正常运行，您应该看到 Active (running) 的状态。\n\n访问 Web UI 并进行初始设置：\n如果配置了公网访问: 在浏览器中访问 http://<你的服务器 IP>:8384。\n\n如果使用 SSH 隧道 : 在您的 本地电脑 上打开终端，运行以下命令（将 <user> 替换为您服务器的用户名，<你的 VPS.Town 服务器 IP> 替换为实际 IP）：\n\nssh -L 8384:localhost:8384 <user>@<你的 VPS.Town 服务器 IP>\n保持这个 SSH 连接处于活动状态，然后在您的 本地电脑 浏览器中访问 http://localhost:8384。这种方式更安全，无需暴露端口或修改监听地址。\n\n首次访问 Web UI 时，Syncthing 会提示您设置界面访问的用户名和密码。请务必设置一个强密码！\n\n点击提示框里面的 \"Settings\" (设置)，在 \"GUI\" 选项卡中设置 \"GUI Authentication User\" (用户名) 和 \"GUI Authentication Password\" (密码)，然后点击 \"Save\" (保存)。\n浏览器会要求您使用新凭据重新登录。\n\n至此，安装完成\n\n使用\n\n下次填坑，可以参考其官方文档或移步搜索引擎。\n\n总结\n\n通过以上步骤，您已成功在您的 Debian 12 VPS.Town 服务器上安装并配置了 Syncthing，并与您的本地电脑建立了一个安全、自动的文件同步通道。\n\nSyncthing 功能强大，还支持文件版本控制、忽略规则、单向同步等高级功能，您可以进一步探索其官方文档 来满足更复杂的需求。\n\n现在，您可以利用 Syncthing 轻松地备份服务器数据、在多设备间保持文件一致，享受去中心化同步带来的便利和安全性。","routePath":"/guide/how-to-install-syncthing-vps-town","lang":"zh","toc":[{"id":"什么是-syncthing","text":"什么是 Syncthing?","depth":2,"charIndex":113},{"id":"为什么选择-vpstown","text":"为什么选择 VPS.Town?","depth":2,"charIndex":535},{"id":"准备工作","text":"准备工作","depth":2,"charIndex":758},{"id":"在-vpstown-服务器-debian-12-上安装-syncthing","text":"在 VPS.Town 服务器 (Debian 12) 上安装 Syncthing","depth":2,"charIndex":1016},{"id":"首次配置与访问-web-ui","text":"首次配置与访问 Web UI","depth":2,"charIndex":1944},{"id":"使用","text":"使用","depth":2,"charIndex":4736},{"id":"总结","text":"总结","depth":2,"charIndex":4764}],"frontmatter":{"date":"2025-04-13 22:00 +8","updated":"2025-04-16 08:30 +8","version":"v0.0.2","description":"本教程详细介绍了如何在您的 Debian 12 VPS.Town 服务器上安装 Syncthing，以实现安全、去中心化的文件实时同步，方便您在多个设备间管理文件。","category":"cloud-drive","sidebarTitle":"Syncthing 文件同步","cardIcon":"RefreshCcw","cardDescription":"在 VPS.Town 服务器上部署 Syncthing 文件同步工具","author":"k08255-lxm","banner":"/assets/images/how-to-install-syncthing-vps-town/banner.png?v2","keywords":["Syncthing","文件同步","VPS.Town","Debian 12","服务器配置"]},"version":"","description":"本教程详细介绍了如何在您的 Debian 12 VPS.Town 服务器上安装 Syncthing，以实现安全、去中心化的文件实时同步，方便您在多个设备间管理文件。"},{"title":"如何将 GitHub 仓库代码迁移到使用 VPS.Town 搭建的 Gitea 中","content":"本文由用户 (赛博丁真) 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 7 折循环优惠券 奖励。\n\n引言\n\n本教程将引导你如何从 GitHub 等第代码托管平台迁移至 VPS.Town 大盘机搭建的自托管 Gitea\n\nunlock-music 项目曾经因为 DMCA，被 GitHub 官方下架\n\n最近 GitHub 也开始屏蔽来自中国大陆 IP 的访问，不难想象后续还会发生什么事情：删除国人的仓库、组织，甚至封号。\n\n而 VPS.Town 大盘机抗 DMCA，允许托管该类仓库，没有任何后顾之忧。\n\nVPS.Town 大盘机\n\n最多可提供高达 8TB 大容量存储 的选项，非常适合存放大量项目代码与文档；\n\n同时也提供 SSD & HDD 混合方案，读写速度更快、成本更低；\n\n性价比高，适合个人开发者、小团队进行长期托管部署；\n\n抗 DMCA 版权投诉，可用于一些敏感项目；\n\n⚠️ 其中 1TB 存储大盘鸡续费仅需 260/年或 28.5/月，硬盘一次性买断最低仅需 ¥80/TiB\n\n服务器位于香港，距离大陆近，延迟低，速度快\n\n无 AFF 购买链接：点我一键直达\n\n选择右上角+号\n\n迁移外部仓库\n\n可选择 github 等平台\n\npublic repo 无需填写 token，直接迁移即可\n\nprivate repo 请接着往下看\n\nprivate repo 迁移教程\n\ngithub 创建令牌教程\n\n点击右上角头像 →settings\n\n往下拉，找到 developer settings\n\n选择 generate classic token\n\n把 repo 的权限选上\n\n如果需要迁移其他内容则需要给令牌更多的权限\n\n确认后等待迁移即可\n\n迁移成功的范本\n\n迁移完成后的仓库地址为 gitea.886663.xyz/agczsz/unlock-music1（作者自建的实例，不保证长期可以访问），迁移结果可参考上方截图。","routePath":"/guide/how-to-migrate-github-repo-to-gitea-vps-town","lang":"zh","toc":[{"id":"引言","text":"引言","depth":2,"charIndex":115},{"id":"vpstown-大盘机","text":"VPS.Town 大盘机","depth":3,"charIndex":318},{"id":"选择右上角号","text":"选择右上角+号","depth":2,"charIndex":555},{"id":"可选择-github-等平台","text":"可选择 github 等平台","depth":3,"charIndex":572},{"id":"public-repo-无需填写-token直接迁移即可","text":"public repo 无需填写 token，直接迁移即可","depth":3,"charIndex":588},{"id":"private-repo-迁移教程","text":"private repo 迁移教程","depth":2,"charIndex":640},{"id":"github-创建令牌教程","text":"github 创建令牌教程","depth":3,"charIndex":659},{"id":"点击右上角头像-settings","text":"点击右上角头像 →settings","depth":4,"charIndex":674},{"id":"往下拉找到-developer-settings","text":"往下拉，找到 developer settings","depth":4,"charIndex":693},{"id":"选择-generate-classic-token","text":"选择 generate classic token","depth":4,"charIndex":720},{"id":"把-repo-的权限选上","text":"把 repo 的权限选上","depth":4,"charIndex":747},{"id":"确认后等待迁移即可","text":"确认后等待迁移即可","depth":4,"charIndex":784},{"id":"迁移成功的范本","text":"迁移成功的范本","depth":2,"charIndex":795}],"frontmatter":{"date":"2025-04-13 17:00 +8","updated":"2025-04-14 08:00 +8","version":"v0.0.1","description":"本文介绍如何将 GitHub 等代码仓库迁移至部署在 VPS.Town 上的 Gitea 自托管平台。通过图文步骤指导用户进行公开与私有仓库的迁移，特别适合因合规问题需转移仓库的项目，如 unlock-music。","category":"code-version-control","order":2,"sidebarTitle":"GitHub 仓库迁移到 Gitea","cardIcon":"GitFork","cardDescription":"将 GitHub 上的代码仓库迁移到自托管的 Gitea 服务","author":"赛博丁真","banner":"/assets/images/how-to-migrate-github-repo-to-gitea-vps-town/banner.png","keywords":["Gitea","自托管","GitHub迁移"]},"version":"","description":"本文介绍如何将 GitHub 等代码仓库迁移至部署在 VPS.Town 上的 Gitea 自托管平台。通过图文步骤指导用户进行公开与私有仓库的迁移，特别适合因合规问题需转移仓库的项目，如 unlock-music。"},{"title":"如何解决 VPS.Town A3 VDS 上 PVE 8/9 虚拟机无法正常开机的问题","content":"1.问题描述\n\n正常配置好虚拟机，开机在控制台界面上看到如下报错，无法进入登陆界面。\n如果CPU是host模拟模式，关闭KVM硬件虚拟化开机，控制台提示报错：kvm: CPU model 'host' requires KVM or HVF\n将CPU类型改为KVM64模式并不关闭选项内的KVM硬件虚拟化，还是有如下报错。\n\n2.第一种解决办法\n\n将cpu的虚拟化类型改为KVM64并关闭虚拟机选项内的KVM硬件虚拟化\n\n服务器正常开机\n\n3.第二种解决办法\n\n将CPU模拟调整为EPYC-Milan-v2，为什么调整为这个？\n是因为A3 VDS服务器的CPU是EPYC 7c13,代号： \"Milan\" （米兰），EPYC 7003 系列处理器。EPYC-Milan这个模拟模式比较老，EPYC-Milan-v2比较新的 Milan 微码更新，更完善的漏洞修复。\n\n修改为EPYC-Milan-v2，如果不关闭虚拟机选项内的KVM硬件虚拟化，将会有如下报错，所以需要关闭KVM硬件虚拟化。\n\n4.【彩蛋】怎么让PVE虚拟出来的虚拟机更流畅（仅可用于VPS.TOWN A3虚拟化出的虚拟机）\n\n# 以下三种任选\n# 第一种：使用CPU x86_64虚拟化\ncpu: x86-64-v4,flags=+virt-ssbd;+amd-ssbd;+aes\nargs: -cpu kvm64,accel=kvm,kvm=on,vmware-cpuid-freq=on,,+invtsc,+aes,+svm\n\n# 第二种:使用CPU代号的虚拟化（优先推荐）\ncpu: EPYC-Milan-v2,flags=+virt-ssbd;+amd-ssbd;+aes\nargs:  -cpu EPYC-Milan-v2,kvm=on,vmware-cpuid-freq=on,,+invtsc,+aes,+svm\n\n# 第三种:使用CPU host方式进行虚拟化\ncpu: host,flags=+virt-ssbd;+amd-ssbd;+aes\nargs:  -cpu max,kvm=on,vmware-cpuid-freq=on,+invtsc,+aes,+svm\n\n操作步骤\n\n# SSH 连接宿主机\nssh root@xx.xxx.xx.xx\n\n# 切换到虚拟机配置文件目录下\ncd /etc/pve/qemu-server\n\n# 编辑虚拟机配置文件(这里以虚拟机ID为100的虚拟机配置文件作演示)\nvi 100.conf\n\n回到PVE网页端查看虚拟机启动完毕","routePath":"/guide/how-to-resolve-virtual-machine-failure-on-vpstown-a3-vds-pve89-proxmox-ve-89","lang":"zh","toc":[{"id":"1问题描述","text":"1.问题描述","depth":2,"charIndex":0},{"id":"2第一种解决办法","text":"2.第一种解决办法","depth":2,"charIndex":163},{"id":"3第二种解决办法","text":"3.第二种解决办法","depth":2,"charIndex":220},{"id":"4彩蛋怎么让pve虚拟出来的虚拟机更流畅仅可用于vpstown-a3虚拟化出的虚拟机","text":"4.【彩蛋】怎么让PVE虚拟出来的虚拟机更流畅（仅可用于VPS.TOWN A3虚拟化出的虚拟机）","depth":2,"charIndex":447}],"frontmatter":{"date":"2025-10-15 13:00 +8","updated":"2025-10-25 13:09 +8","version":"v1.0","description":"A3 VDS 上 PVE 8/9 虚拟机开启 KVM 硬件虚拟化后无法开机，可将 CPU 改为 KVM64 或 EPYC-Milan-v2 并关闭 KVM 硬件虚拟化解决，文末附提升流畅度的配置。","category":"virtualization","sidebarTitle":"A3 VDS 虚拟机无法开机","cardIcon":"Wrench","cardDescription":"解决 VPS.Town A3 VDS 上 PVE 8/9 虚拟机无法正常开机的问题","banner":"/assets/images/how-to-resolve-virtual-machine-failure-on-vpstown-a3-vds-pve89-proxmox-ve-89/image-20251016220530780.png?v2","keywords":["VPS.Town A3 虚拟机","VPS 虚拟机无法启动","PVE 虚拟化"]},"version":"","description":"A3 VDS 上 PVE 8/9 虚拟机开启 KVM 硬件虚拟化后无法开机，可将 CPU 改为 KVM64 或 EPYC-Milan-v2 并关闭 KVM 硬件虚拟化解决，文末附提升流畅度的配置。"},{"title":"使用 VPS.Town 大盘机搭建 Gitea 自托管代码，不再依赖 GitHub","content":"本文由用户 (赛博丁真) 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 现金 40 元 奖励。\n\n引言\n\n🧩Gitea 是一个轻量级的 Git 代码托管平台，也就是说，它可以用来像 GitHub、GitLab 一样管理代码仓库。\n\n为什么选择 Gitea？🚀\n\n自托管（Self-hosted）🔐\nGitea 支持完全自托管，可以在自己的服务器上安装和运行。这意味着所有的代码和数据都由自己掌控，极大地提升了数据安全性，有效防止敏感代码外泄的风险。\n\n避免平台风险 ❌🌐\n相比于 GitHub 可能因政策原因被阻断访问，或 Gitee 存在的内容审查机制，Gitea 作为自托管平台，不依赖第三方服务，从根本上杜绝了外部平台带来的访问限制与内容审查问题，保障了研发工作的连续性与自由性。\n\n灵活配置 CDN 加速 ⚡️🌍\n使用 Gitea 可以根据自身网络环境，自由选择并配置 CDN 服务，从而优化访问速度和稳定性，特别适合在多地协作或访问环境复杂的情况下使用。\n\n资源占用小，部署简便 🧩📦\nGitea 是用 Go 语言编写的，编译后的单一可执行文件体积小，运行效率高，资源占用少，部署和维护都非常方便，适合中小型团队或个人开发者快速上手。\n\n开源社区活跃，功能不断迭代 🔄🛠️\nGitea 拥有活跃的开源社区，持续进行功能更新与漏洞修复，保障了平台的可用性和稳定性。同时支持丰富的功能如 issue 管理、PR 流程、代码审查、Webhook 等，能够满足大多数开发场景需求。\n\n其中 VPS.Town 的「大盘鸡」方案最适合 Gitea 部署使用\n\n最多可提供高达 8TB 大容量存储 的选项，非常适合存放大量项目代码与文档；\n\n同时也提供 SSD & HDD 混合方案，读写速度更快、成本更低；\n\n性价比高，适合个人开发者、小团队进行长期托管部署；\n\n抗 DMCA 版权投诉，可用于一些敏感项目；\n\n⚠️ 其中 1TB 存储大盘鸡续费仅需 260/年或 28.5/月，硬盘一次性买断最低仅需 ¥80/TiB\n\n无 AFF 购买链接：点我一键直达\n\n🛠️ 安装教程\n\n第一步：连接到您的 VPS 服务器\n\n使用 SSH 工具连接到您的 VPS.Town 服务器实例，确保您切换到 root 用户，以便执行后续操作。\n\n第二步：安装 docker\n\n我们将使用 docker 官方的安装脚本。该脚本简化了 docker 编译安装过程，操作更加便捷。\n\n安装 docker 是为了隔离系统与运行环境，保障 VPS 的安全，同时也能简化配置，节省配置时间\n\ncurl -fsSL https://get.docker.com | bash -s docker\n\n第三步：创建 docker-compose 配置文件\n\n创建 gitea 目录\n\n使用 VPS.TOWN 大盘机时，默认挂载目录为/home，无需对硬盘格式化\n\n最多可提供高达 8TB 大容量存储 的选项，非常适合存放大量项目代码与文档；\n\n同时也提供 SSD & HDD 混合方案，读写速度更快、成本更低；\n\n性价比高，适合个人开发者、小团队进行长期托管部署；\n\n抗 DMCA 版权投诉，可用于一些敏感项目；\n\n⚠️ 其中 1TB 存储大盘鸡续费仅需 260/年或 28.5/月，硬盘一次性买断最低仅需 ¥80/TiB\n\n服务器位于香港，距离大陆近，延迟低，速度快\n\n无 AFF 购买链接：点我一键直达\n\nmkdir  /home/gitea #在数据盘上创建目录存放数据\nmkdir gitea #存放docker-compose文件\ncd ./gitea\nnano ./docker-compose.yaml\n\n填入 docker-compose 的内容\n\n默认配置，使用 sqlite\n\nversion: \"3\"\n\nnetworks:\n  gitea:\n    external: false\n\nservices:\n  server:\n    image: gitea/gitea:1.21.1\n    container_name: gitea\n    environment:\n      - USER_UID=1000\n      - USER_GID=1000\n    restart: always\n    networks:\n      - gitea\n    volumes:\n      - /home/gitea:/data #/home/gitea 可修改为自定义数据目录\n      - /etc/timezone:/etc/timezone:ro\n      - /etc/localtime:/etc/localtime:ro\n    ports:\n      - \"'127.0.0.1:3000':3000\" #若需要修改端口可修改127.0.0.1:3000\n      - \"'127.0.0.1:2222':22\" #容器内ssh端口映射，安全起见设置为本地，有需要可以重新打开\n\n完成后 CTRL+X 推出，保存时选 Y\n\n启动 gitea\n\ndocker compose up -d\n\n配合宝塔面板配置反向代理\n\n宝塔面板适合新手快速配置反向代理，当然，你也可以使用 1panel 等工具进行配置\n\n安装宝塔面板：宝塔面板下载，免费全能的服务器运维软件\n\n首次进入网站设置项会提示安装 nginx，选择版本安装即可\n\n选择网站 → 反向代理 → 添加反代\n\n填入你的域名、目标地址填入本地 ip+gitea 端口\n\n1. 申请 ssl 证书\n\n将域名 IP 解析到 vps\n\n2. 选择网站的 ssl 设置\n\n3. 使用文件验证申请证书\n\n4. 执行安装\n\n打开你的域名，按照官方指引进行设置即可（默认使用 sqlite）\n\n5. 创建账户\n\n创建账户后即可使用，第一个创建的用户即为管理员账户\n\n6. 创建仓库\n\n点击＋号，即可创建并托管你的第一个代码仓库\n\n使用方法同 github\n\n进阶：使用 MySQL 数据库进行安装\n\n将 docker-compose 文件修改为以下内容：\n\n虽然 docker 的网络不暴露在公网，但为了安全起见，强烈建议修改 MySQL 密码\n\nversion: \"3\"\n\nnetworks:\n  gitea:\n    external: false\n\nservices:\n  server:\n    image: gitea/gitea:1.21.1\n    container_name: gitea\n    environment:\n      - USER_UID=1000\n      - USER_GID=1000\n      - GITEA__database__DB_TYPE=mysql #请注意修改用户名和密码\n      - GITEA__database__HOST=db:3306\n      - GITEA__database__NAME=gitea\n      - GITEA__database__USER=gitea\n      - GITEA__database__PASSWD=gitea\n    restart: always\n    networks:\n      - gitea\n    volumes:\n      - /home/gitea:/data\n      - /etc/timezone:/etc/timezone:ro\n      - /etc/localtime:/etc/localtime:ro\n    ports:\n      - \"3000:3000\"\n      - \"222:22\"\n    depends_on:\n      - db\n\n  db:\n    image: mysql:8\n    restart: always\n    environment:\n      - MYSQL_ROOT_PASSWORD=gitea #请注意修改用户名和密码\n      - MYSQL_USER=gitea\n      - MYSQL_PASSWORD=gitea\n      - MYSQL_DATABASE=gitea\n    networks:\n      - gitea\n    volumes:\n      - ./mysql:/var/lib/mysql\n\n安装时选择 mysql，填入相关信息安装即可","routePath":"/guide/how-to-self-hosted-deploy-gitea-vps-town","lang":"zh","toc":[{"id":"引言","text":"引言","depth":2,"charIndex":114},{"id":"为什么选择-gitea","text":"为什么选择 Gitea？🚀","depth":2,"charIndex":182},{"id":"其中-vpstown-的大盘鸡方案最适合-gitea-部署使用","text":"**其中 VPS.Town 的「大盘鸡」方案最适合 Gitea 部署使用**","depth":2,"charIndex":717},{"id":"️-安装教程","text":"🛠️ 安装教程","depth":2,"charIndex":953},{"id":"第一步连接到您的-vps-服务器","text":"**第一步：连接到您的 VPS 服务器**","depth":3,"charIndex":963},{"id":"第二步安装-docker","text":"**第二步：安装 docker**","depth":3,"charIndex":1038},{"id":"第三步创建-docker-compose-配置文件","text":"第三步：创建 docker-compose 配置文件","depth":2,"charIndex":1207},{"id":"创建-gitea-目录","text":"创建 gitea 目录","depth":3,"charIndex":1235},{"id":"填入-docker-compose-的内容","text":"填入 docker-compose 的内容","depth":3,"charIndex":1616},{"id":"默认配置使用-sqlite","text":"默认配置，使用 sqlite","depth":4,"charIndex":1639},{"id":"启动-gitea","text":"启动 gitea","depth":3,"charIndex":2192},{"id":"配合宝塔面板配置反向代理","text":"配合宝塔面板配置反向代理","depth":3,"charIndex":2224},{"id":"选择网站--反向代理--添加反代","text":"选择网站 → 反向代理 → 添加反代","depth":3,"charIndex":2340},{"id":"填入你的域名目标地址填入本地-ipgitea-端口","text":"填入你的域名、目标地址填入本地 ip+gitea 端口","depth":3,"charIndex":2360},{"id":"1-申请-ssl-证书","text":"1. 申请 ssl 证书","depth":3,"charIndex":2389},{"id":"将域名-ip-解析到-vps","text":"将域名 IP 解析到 vps","depth":4,"charIndex":2403},{"id":"2-选择网站的-ssl-设置","text":"2. 选择网站的 ssl 设置","depth":3,"charIndex":2419},{"id":"3-使用文件验证申请证书","text":"3. 使用文件验证申请证书","depth":3,"charIndex":2436},{"id":"4-执行安装","text":"4. 执行安装","depth":3,"charIndex":2451},{"id":"5-创建账户","text":"5. 创建账户","depth":3,"charIndex":2494},{"id":"6-创建仓库","text":"6. 创建仓库","depth":3,"charIndex":2530},{"id":"使用方法同-github","text":"使用方法同 github","depth":3,"charIndex":2562},{"id":"进阶使用-mysql-数据库进行安装","text":"进阶：使用 MySQL 数据库进行安装","depth":2,"charIndex":2576}],"frontmatter":{"date":"2025-04-13 17:00 +8","updated":"2025-04-14 08:00 +8","version":"v0.0.1","description":"本文详细介绍了如何使用 VPS.Town 的大盘机部署 Gitea 代码托管平台的全过程。内容包括安装 Docker、配置 docker-compose 文件、设置反向代理与 SSL 证书，适合开发者去 GitHub 化，实现代码自托管自由。","category":"code-version-control","order":1,"sidebarTitle":"自托管部署 Gitea","cardIcon":"GitBranch","cardDescription":"在 VPS.Town 服务器上搭建自己的 Git 服务","author":"赛博丁真","banner":"/assets/images/how-to-self-hosted-deploy-gitea-vps-town/banner.png","keywords":["Gitea","自托管","Docker","反向代理"]},"version":"","description":"本文详细介绍了如何使用 VPS.Town 的大盘机部署 Gitea 代码托管平台的全过程。内容包括安装 Docker、配置 docker-compose 文件、设置反向代理与 SSL 证书，适合开发者去 GitHub 化，实现代码自托管自由。"},{"title":"vps.town 磁盘扩容新手指南","content":"本文由用户 biebiele 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 200 元余额 奖励。\n\n在进行磁盘扩容操作时，请特别注意以下几点：\n\n数据安全：操作前必须进行完整的数据备份，有准备应急恢复方案。\n\n系统状态：确保系统处于稳定状态，在系统低负载情况下进行操作。\n\n操作过程：严格按照步骤执行，验证每个步骤完成情况。\n\n后续维护：定期检查磁盘状态，监控文件系统使用情况。\n\n请务必先完整阅读后在操作，并确保你具有以下知识：\n\n了解磁盘分区和 LVM 原理\n\n明白数据是无价的\n\n熟悉基本的 Linux 命令操作\n\n了解文件系统的基本概念\n\n系统要求：\n\nLinux 系统（推荐 Ubuntu 20.04 或更高版本）\n\n足够的磁盘空间用于备份\n\nroot 权限或 sudo 权限\n\n术语说明：\n\nLVM (Logical Volume Manager)：逻辑卷管理器，用于管理磁盘存储的高级工具\n\nPV (Physical Volume)：物理卷，LVM 的基本存储单元\n\nVG (Volume Group)：卷组，由多个物理卷组成的存储池\n\nLV (Logical Volume)：逻辑卷，从卷组中划分出的逻辑存储空间\n\n文档结构说明：\n本文分为四个主要部分：\n\n准备工作：介绍必要的系统检查和工具安装\n\n原磁盘本身扩容：适用于已有分区需要扩容的情况\n\n新增磁盘扩容：适用于需要合并多个磁盘的情况\n\n注意事项：总结操作过程中的重要提示\n\n1. 准备工作\n\n# 查看系统中是否安装了 LVM 管理工具\napt list --installed | grep lvm2\n# 如提示未安装，执行下面命令安装\napt install lvm2\n# 检查系统磁盘情况\nfdisk -l | grep /dev/vd | grep -v vda\n\n一般默认除系统盘后，系统第一个磁盘是/dev/vdb、第二个是/dev/vdc\n\n在 Linux 系统中，磁盘设备通常按以下规则命名：\n\n/dev/vda：系统盘（通常是第一个磁盘）\n\n/dev/vdb：第一个数据盘\n\n/dev/vdc：第二个数据盘\n\n以此类推...\n\n在物理服务器上，可能会看到 /dev/sda、/dev/sdb 等命名方式，这是不同的磁盘控制器类型导致的命名差异。\n\n查看当前磁盘情况\n\n使用命令 fdisk -l 或者 lsblk 找到新增的未分区的磁盘。\n\n如果看不到新增的磁盘，可以执行以下命令扫描：\n\nfor file in `ls /sys/class/scsi_host`; \\\ndo echo '- - -' > /sys/class/scsi_host/$file/scan ; \\\ndone\n\n注意事项：\n\n执行扫描命令后，建议等待几秒钟让系统识别新磁盘\n\n如果仍然无法识别，可以尝试重启系统\n\n在云服务器环境中，可能需要先在控制台挂载新磁盘\n\n需求确认：\n\n需要扩容原本的/dev/vdb1 空间以利用/dev/vdb 所有空间，请参考2. 原磁盘本身扩容\n\n需要将/dev/vdc 和/dev/vdb 合并使用，请参考3. 新增磁盘扩容，与原有磁盘合并\n\n2. 原磁盘本身扩容\n\n适用情况:原磁盘已有分区，但申请了新增了磁盘空间\n类似于下图：本身 vdb1 只有 500GB，但对 vdb 磁盘新增了 500G，本次需要对 vdb1 扩容至 1000G\n\n磁盘扩容的基本原理是：\n\n首先取消磁盘挂载，确保数据安全\n\n将分区表转换为 GPT 格式，支持更大容量\n\n调整分区大小，使其占用所有可用空间\n\n扩展文件系统以使用新增的空间\n\n重新挂载并验证扩容结果\n\n2.1 取消原磁盘挂载\n\nvim /etc/fstab\n注释以下行`# /dev/vdb1 /home ext4 defaults 0 0`并`ESC`和`:wq`保存退出\n\nmount -a\numount /home  ## 取消/home挂载\n\n/etc/fstab 文件记录了系统启动时需要自动挂载的文件系统\n\n在修改挂载配置前，请确保了解每个挂载点的用途\n\n建议在修改前备份 /etc/fstab 文件\n\n2.2 转为 GPT 格式\n\n高危操作，请小心执行\n\ngdisk /dev/vdb  # 选择磁盘\nw               # 写入，是否转为GPT格式\nY               # 确定转格式\n# 等待执行完成\n\n2.3 调整分区大小\n\n高危操作，请小心执行\n\n# 检查文件系统\ne2fsck -f /dev/vdb1\n\n# 使用 parted 调整分区\nparted /dev/vdb                      # 操作磁盘\n               print                 # 打印信息\n(parted)       resizepart 1          # 选择分区\nEnd? [500GB]?  100%                  # 扩展到全部空间\n(parted)       quit                  # 退出\n\n# 扩展文件系统\nresize2fs /dev/vdb1\n\n2.4 重新挂载\n\nmount /dev/vdb1 /home\nvim /etc/fstab\n# 注释以下行`/dev/vdb1 /home ext4 defaults 0 0`并`ESC`和`:wq`保存退出\n\n2.5 检查磁盘挂载情况\n\nmount -a\nlsblk\ndf -hT\n\n3. 新增磁盘扩容，与原有磁盘合并\n\n适用情况:已有磁盘/dev/vdb，需要将新磁盘/dev/vdc 合并，即把/dev/vdc 空间和/dev/vdb 合并使用\n\n使用 LVM 进行磁盘扩容的主要优势：\n\n支持在线扩容，无需停机\n\n可以灵活管理多个物理磁盘\n\n支持动态调整分区大小\n\n提供更好的数据管理能力\n\n3.1. 备份原本磁盘数据（/dev/vdb->/dev/vdc）\n\n在进行任何磁盘操作前，数据备份是必不可少的步骤：\n\n确保备份目标磁盘有足够空间\n\n建议在备份前进行数据完整性检查\n\n备份完成后进行验证\n\n保留备份直到确认新系统运行正常\n\n3.1.1 在新硬盘上创建新分区并格式化\n\n高危操作，请小心执行\n\n# 查看新硬盘信息\nfdisk -l /dev/vdc\n\n# 创建新分区\nfdisk /dev/vdc\ng    # 新建一份 GPT 分区表\nn    # 添加新分区\n     # 默认回车 分区号\n     # 默认回车 第一个扇区\n     # 默认回车 大小\nw    # 将分区表写入磁盘并退出\n\n# 格式化分区\nmkfs.ext4 /dev/vdc1\n\n# 验证分区创建\nfdisk -l /dev/vdc1\n\n3.1.2 将旧硬盘内容传输至新硬盘\n\n# 建议先验证源分区和目标分区的大小，需求 vdc 区大于或等于 vdb 区\nfdisk -l /dev/vdb1 /dev/vdc1\n\n# 开始数据迁移\ndd if=/dev/vdb1 of=/dev/vdc1 bs=512M\n# 可以再开一个终端执行此命令查看进度\nwatch -n 10 kill -USR1 $(ps aux | grep \"dd if=/dev/vdb1\"|grep -v grep|awk '{print $2}')\n\n迁移过程中请勿中断操作\n\n建议在迁移前进行数据完整性检查\n\n迁移完成后务必进行验证\n\n如果发现数据不一致，请立即停止操作并联系技术支持\n\n3.2 修改原磁盘为 LVM 卷组（如 /dev/vdb）\n\n3.2.1 删除 /dev/vdb 当前分区\n\n高危操作，请小心执行\n\n# 卸载正在使用的硬盘\numount /dev/vdb1\n# 如果提示设备正忙，可以使用 fuser 命令查看正在操作硬盘的进程，并合理关闭它们\nfuser -cu /dev/vdb1 # 找到进程号\nps -ef|grep 进程号  # 找到对应进程\nkill -9 进程号      # 杀死进程\n# 如当前终端处于 /home 路径，切换到其他路径，如 `cd /`，避免占用\n\n# 删除磁盘分区\nfdisk /dev/vdb\nd    # 删除分区\nw    # 将分区表写入磁盘并退出\n\n3.2.2 将 /dev/vdb 转换为 LVM 卷组\n\n高危操作，请小心执行\n\n# 检查当前磁盘状态\nlsblk\nfdisk -l /dev/vdb\n# 清除磁盘签名，会删除 /dev/vdb 数据\nwipefs -a /dev/vdb\n\n# 创建物理卷 (PV)\npvcreate /dev/vdb\n# 创建卷组 (VG)\nvgcreate vg_data /dev/vdb\n# 创建逻辑卷 (LV)\nlvcreate -n lv_data -l 100%FREE vg_data\n# 格式化逻辑卷 (LV)，**需要等一会儿执行完成**\nmkfs.ext4 /dev/mapper/vg_data-lv_data\n# 挂载逻辑卷 /home\nmount /dev/mapper/vg_data-lv_data /home\n\n# 设置自动挂载\nvim /etc/fstab\n# 按a进入编辑模式，添加下面一行\n/dev/mapper/vg_data-lv_data /home ext4 defaults 0 0\n# esc 后再 :wq 保存\n\n# 手动挂载\nmount -a\n# 检查挂载情况\ndf -h\n\n重启机器后，检查挂载情况\n\n3.3 将新硬盘上的数据传至 LVM 卷组\n\n# 开始数据迁移，**等待执行完成**\ndd if=/dev/vdc1 of=/dev/mapper/vg_data-lv_data bs=512M\n# 可以再开一个终端执行此命令查看进度\nwatch -n 10 kill -USR1 $(ps aux | grep \"dd if=/dev/vdc1\"|grep -v grep|awk '{print $2}')\n\n3.4 将新硬盘加入 LVM 卷组\n\n高危操作，请小心执行\n\n# 删除原有分区\nfdisk /dev/vdc\nd    # 删除分区\nn    # 添加新分区\n     # 默认回车 分区号\n     # 默认回车 第一个扇区\n     # 默认回车 大小\nw    # 将分区表写入磁盘并退出\n\n# 通知操作系统分区表更新\npartprobe /dev/vdc\n\n# 查看 pv 信息\npvs\n# 创建 pv\npvcreate /dev/vdc\n\n# 扩展卷组(VG)空间\nvgextend vg_data /dev/vdc # 往 vg_data 添加\nlvextend -l +100%FREE /dev/mapper/vg_data-lv_data # 100%空间分配\n\n3.5 扩容 LVM 卷组的文件系统\n\n确保文件系统支持在线扩容\n\n扩容过程中不要中断操作\n\n建议在扩容后检查文件系统完整性\n\n# 检查当前文件系统类型\ndf -hT\n# 根据文件系统类型选择扩容命令\n# 如果是 ext4 文件系统\nresize2fs -p /dev/mapper/vg_data-lv_data\n# 如果是 xfs 文件系统\n# xfs_growfs /dev/mapper/vg_data-lv_data\n\n# 检查挂载信息\ndf -hT\n\n4. 注意事项\n\n如果遇到问题，可以尝试以下解决方案：\n\n磁盘无法识别\n检查磁盘是否已正确连接\n\n执行磁盘扫描命令\n\n检查系统日志\n\n\n挂载失败\n检查文件系统是否损坏\n\n验证挂载点权限\n\n检查 fstab 配置\n\n\nLVM 操作失败\n检查 PV、VG、LV 状态\n\n确保有足够的空间\n\n查看系统日志","routePath":"/guide/how-to-setup-lvm-conversion-vps-town","lang":"zh","toc":[{"id":"1-准备工作","text":"1. 准备工作","depth":2,"charIndex":690},{"id":"查看当前磁盘情况","text":"查看当前磁盘情况","depth":3,"charIndex":1035},{"id":"2-原磁盘本身扩容","text":"2. 原磁盘本身扩容","depth":2,"charIndex":1390},{"id":"21-取消原磁盘挂载","text":"2.1 取消原磁盘挂载","depth":3,"charIndex":1591},{"id":"22-转为-gpt-格式","text":"2.2 转为 GPT 格式","depth":3,"charIndex":1798},{"id":"23-调整分区大小","text":"2.3 调整分区大小","depth":3,"charIndex":1913},{"id":"24-重新挂载","text":"2.4 重新挂载","depth":3,"charIndex":2236},{"id":"25-检查磁盘挂载情况","text":"2.5 检查磁盘挂载情况","depth":3,"charIndex":2343},{"id":"3-新增磁盘扩容与原有磁盘合并","text":"3. 新增磁盘扩容，与原有磁盘合并","depth":2,"charIndex":2380},{"id":"31-备份原本磁盘数据devvdb-devvdc","text":"3.1. 备份原本磁盘数据（/dev/vdb->/dev/vdc）","depth":3,"charIndex":2537},{"id":"311-在新硬盘上创建新分区并格式化","text":"3.1.1 在新硬盘上创建新分区并格式化","depth":4,"charIndex":2658},{"id":"312-将旧硬盘内容传输至新硬盘","text":"3.1.2 将旧硬盘内容传输至新硬盘","depth":4,"charIndex":2904},{"id":"32-修改原磁盘为-lvm-卷组如-devvdb","text":"3.2 修改原磁盘为 LVM 卷组（如 /dev/vdb）","depth":3,"charIndex":3217},{"id":"321-删除-devvdb-当前分区","text":"3.2.1 删除 /dev/vdb 当前分区","depth":4,"charIndex":3248},{"id":"322-将-devvdb-转换为-lvm-卷组","text":"3.2.2 将 /dev/vdb 转换为 LVM 卷组","depth":4,"charIndex":3533},{"id":"33-将新硬盘上的数据传至-lvm-卷组","text":"3.3 将新硬盘上的数据传至 LVM 卷组","depth":3,"charIndex":4055},{"id":"34-将新硬盘加入-lvm-卷组","text":"3.4 将新硬盘加入 LVM 卷组","depth":3,"charIndex":4262},{"id":"35-扩容-lvm-卷组的文件系统","text":"3.5 扩容 LVM 卷组的文件系统","depth":3,"charIndex":4603},{"id":"4-注意事项","text":"4. 注意事项","depth":2,"charIndex":4835}],"frontmatter":{"date":"2025-04-19 00:00 +8","updated":"2025-04-19 00:00 +8","version":"v0.0.1","description":"本文详细介绍了如何在不丢失数据的情况下，将普通分区转换为 LVM 分区，并实现磁盘扩容。","category":"system-security","sidebarTitle":"LVM 无损磁盘扩容","cardIcon":"HardDrive","cardDescription":"在 VPS.Town 服务器上使用 LVM 无损扩容磁盘","author":"biebiele","banner":"/assets/images/how-to-setup-lvm-conversion-vps-town/banner.png","keywords":["磁盘扩容","LVM","数据迁移","分区管理"]},"version":"","description":"本文详细介绍了如何在不丢失数据的情况下，将普通分区转换为 LVM 分区，并实现磁盘扩容。"},{"title":"VPS.Town 大盘鸡 + JuiceFS + MiniIO = 无限扩展存储空间","content":"本文由用户 solar 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 100 元无门槛代金券 奖励。\n\n准备工作\n\n最多可提供高达 8TB 大容量存储 的选项，扩容硬盘更轻松；\n\n同时提供 SSD & HDD 混合方案，读写速度更快、JuiceFS 速度更稳定；\n\n完善的售后保障，12*7 在线客服，更支持 7 天有理由退款；\n\n搭配 JuiceFS 使用，可以实现无限扩展存储空间，扩容硬盘更轻松！\n\n无 AFF 购买链接：点我一键直达\n\n服务器\nserver-A: VPS Town 大盘鸡\n\nserver-B: 任意其他 vps (例如，VPS.Town 传家宝)\n\n\n软件工具\nMinIO\n\nJuicefs\n\nRedis\n\ndocker/podman\n\ndocker-compose/podman-compose\n\n硬盘无限扩展分为以下三个步骤，1. 打开冰箱门；2. 硬盘放进冰箱里；3. 关闭冰箱门。\n\n第一步：使用大盘鸡 (server-A) 部署 MinIO\n\n(VPSTown 的数据盘与系统盘分开，刚好适合 MinIO)\n\n假设大盘的分区路径为 /dev/vdb，让我们格式化一下分区，创建标签名为 MINIODRIVE1 的 XFS 文件系统：:\n\nmkfs.xfs /dev/vdb -L MINIODRIVE1\n\n然后创建一个目录 (/minio/data) 挂载上去：\n\nmkdir -p /minio/data\nmount -t xfs -o \"noatime,nodiratime\" /dev/vdb /minio/data\n\n创建 MinIO 的配置文件 /etc/default/minio，内容如下（注意修改用户名和密码： MINIO_ROOT_USER，MINIO_ROOT_PASSWORD）：\n\nMINIO_ROOT_USER=minio-user-name\nMINIO_ROOT_PASSWORD=minio-password-123\n\nMINIO_VOLUMES=\"/data\"\n\nMINIO_OPTS=\"--console-address :9001\"\n\n接下来使用容器启动 MinIO：\n\n假设你已经安装 docker/podman 和 docker-compose\n\nMinio 的 compose.yaml 文件内容如下：\n\nversion: \"3.8\"\nservices:\n  minio_local:\n    image: quay.io/minio/minio\n    container_name: minio_local\n    ports:\n      - 9000:9000 # MinIO API 端口\n      - 9001:9001 # MinIO Web 控制台端口\n    volumes:\n      - /minio/data:/data # 替换为上面挂载了分区的目录\n      - /etc/default/minio:/etc/config.env\n    environment:\n      - MINIO_CONFIG_ENV_FILE=/etc/config.env # 指定配置文件路径\n    command: server --console-address \":9001\" # 启动 MinIO 服务器并指定控制台端口\n    restart: always # 容器自动重启策略\n\n让我们启动 Minio: docker compose -f compose.yaml up -d\n\n打开 http://{机器 ip}:9001 看看是否启动成功，看到如下界面说明成功\n\n输入用户名密码登录 (例如，用户名：minio-user-name, 密码：minio-password-123)，点击左侧 Buckets -> Create bucket 创建新存储桶，例如命名为 juicefs：\n\n然后创建新的 keys 用于后续的 juicefs。\n\n点击左侧 Access Keys创建新的 keys，并记录：\n\n现在 Minio 部署完成了。\n\n第二步：在大盘鸡 (server-A) 上使用部署 Redis\n\n使用容器部署 Redis 十分简单，先找个目录创建 redis 配置文件，例如 /redis/redis.conf，内容如下：\n\n# 关闭保护\nprotected-mode no\n# 绑定监听IP地址\nbind 0.0.0.0\nmaxmemory 1024mb\nappendonly yes\nappendfsync everysec\n\n然后创建容器 compose.yaml 文件，内容如下（注意修改 --requirepass 后面的密码，例如 redis-passwd-123)：\n\nversion: \"3\"\nservices:\n  juicefs-redis:\n    image: redis:latest\n    container_name: juicefs-redis\n    deploy:\n      resources:\n        limits:\n          memory: 2G\n          cpus: \"2\"\n    ports:\n      - 6379:6379\n    volumes:\n      - redis-data:/data\n      - ./redis.conf:/etc/redis.conf\n    restart: always\n    command: redis-server /etc/redis.conf --requirepass redis-passwd-123\n\nvolumes:\n  db-data:\n\n然后启动容器：docker compose up -d\n\n然后使用以下命令验证 redis 是否成功：\n\ndocker exec juicefs-redis redis-cli -a redis-passwd-123 ping\n\n显示 pong 表示 redis 启动成功，现在第二步完成了。\n\n第三步：在小盘鸡 (server-B) 中安装、创建并挂载 Juicefs\n\n执行以下命令安装 juicefs:\n\ncurl -sSL https://d.juicefs.com/install | sh -\n\n创建一个目录用于挂载 juicefs，例如 /shared-jfs\n\nmkdir /shared-jfs\n\n创建名为 shared-jfs 的 juicefs：\n\n假设：\nserver-A ip 为：1.2.3.4，\n\nMinio 创建的存储桶名字为 juicefs\n\nminio 的访问密钥对：\naccess-key: 8lzuaquVzxmnzbl87DsU,\n\nsecret-key: UbkAcsYeeaOMebTNPJrgHme2PLGBWU8yOi1AolRc，\n\n\nredis 密码为：redis-passwd-123,\n\nredis 端口为：6379，\n\njuicefs 文件系统名为 shared-jfs\n\njuicefs format --storage minio --bucket http://1.2.3.4:9000/juicefs --access-key 8lzuaquVzxmnzbl87DsU --secret-key UbkAcsYeeaOMebTNPJrgHme2PLGBWU8yOi1AolRc redis://:redis-passwd-123@1.2.3.4:6379/1 shared-jfs\n\n注：redis 地址中最后的 1 改为其他值可以创建新的 juicefs\n\n成功后会在 MinIO web 控制台的 juicefs 存储桶中看到名为 shared-jfs 的文件夹。\n\n然后挂载 juicefs 文件系统到 /shared-jfs 目录：\n\njuicefs mount -d redis://:redis-passwd-123@1.2.3.4:6379/1 /shared-jfs\n\n-d 表示后台运行\n\n最后让我们运行 juicefs 自带的性能测试看下是否成功 (这里我们关闭了大文件测试，太耗时啦 🤣)：\n\njuicefs bench --big-file-size 0 /shared-jfs\n\n再来看一下存储空间：\n\n教程结束\n\n啊哈，现在 server-B 也有一个超级大的存储空间了。\n\n😁 冰箱门关闭。","routePath":"/guide/how-to-setup-minio-juicefs-vps-town","lang":"zh","toc":[{"id":"准备工作","text":"准备工作","depth":2,"charIndex":117},{"id":"第一步使用大盘鸡-server-a-部署-minio","text":"第一步：使用大盘鸡 (`server-A`) 部署 MinIO","depth":2,"charIndex":474},{"id":"第二步在大盘鸡-server-a-上使用部署-redis","text":"第二步：在大盘鸡 (`server-A`) 上使用部署 Redis","depth":2,"charIndex":1796},{"id":"第三步在小盘鸡-server-b-中安装创建并挂载-juicefs","text":"第三步：在小盘鸡 (`server-B`) 中安装、创建并挂载 Juicefs","depth":2,"charIndex":2624},{"id":"教程结束","text":"教程结束","depth":2,"charIndex":3576}],"frontmatter":{"date":"2025-04-13 22:00 +8","updated":"2025-04-15 11:45 +8","version":"v0.0.1","description":"使用 VPS.Town 大盘鸡 搭配 JuiceFS + MiniIO 技术实现无限扩展存储空间，为您的小存储 VPS 轻松赋能、扩容硬盘更轻松！","category":"object-storage","sidebarTitle":"MinIO + JuiceFS 扩展存储","cardIcon":"Database","cardDescription":"在 VPS.Town 服务器上部署 MinIO 对象存储和 JuiceFS 分布式文件系统","author":"solar","banner":"/assets/images/how-to-setup-minio-juicefs-vps-town/minio-create-bucket.png","keywords":["VPS.Town","JuiceFS","Redis"]},"version":"","description":"使用 VPS.Town 大盘鸡 搭配 JuiceFS + MiniIO 技术实现无限扩展存储空间，为您的小存储 VPS 轻松赋能、扩容硬盘更轻松！"},{"title":"如何在 VPS.Town 服务器上安装并配置青龙面板","content":"本文由用户 biebiele 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 现金 150 元 (共三篇文章) 奖励。\n\n1. 安装 Docker 和 Docker Compose\n\n1.1 更新软件包索引\n\n# 更新软件包索引，下载 Docker 官方 GPG 密钥，并允许所有人读取\nsudo apt-get update\nsudo apt-get install ca-certificates curl\nsudo install -m 0755 -d /etc/apt/keyrings\nsudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc\nsudo chmod a+r /etc/apt/keyrings/docker.asc\n\n1.2 添加 Docker 仓库\n\necho \\\n  \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \\\n  $(. /etc/os-release && echo \"${UBUNTU_CODENAME:-$VERSION_CODENAME}\") stable\" | \\\n  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null\n\n1.3 安装 Docker 和 Docker Compose\n\n# 更新软件包索引\nsudo apt-get update\n\n# 安装docker软件包\nsudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y\n\n# 启动docker服务和开机自启\nsystemctl enable docker\nsystemctl restart docker\n\n# 验证安装\nsystemctl status docker\ndocker compose version\n\n验证显示 docker 启动正常，docker compose 版本号显示正常即可，如下图：\n\n2. 安装青龙面板\n\n2.1 创建路径\n\n# 创建路径\nmkdir -p /opt/qinglong\ncd /opt/qinglong\n\n2.2 创建 docker compose 文件\n\n创建 docker compose 文件，可修改映射目录./data、映射端口 5700\n\nsudo cat > /opt/qinglong/docker-compose.yml <<EOF\nservices:\n  web:\n    image: whyour/qinglong:latest\n    volumes:\n      - ./data:/ql/data\n    ports:\n      - \"5700:5700\"\n    environment:\n      QlBaseUrl: '/'\n    restart: unless-stopped\nEOF\n\n2.3 启动青龙面板\n\n# 启动青龙面板\ndocker compose up -d\n\n2.4 安装完成\n\n如下图状态，即启动正常\n\n3、青龙面板配置\n\n打开浏览器访问: http://ip 地址:5700\n\n首次访问需要设置管理员账号和密码\n\n3.1 通知配置\n\n以配置 telegram 机器人为例\n\n先申请个人机器人\n与 @BotFather 对话，创建机器人\n\n\n输入机器人名称，名称需要以 bot 结尾，然后拿到token\n\n\n创建机器人成功后，需要主动对话一次才可使机器人实际生效\n\n获取个人 userid\n与 @userinfobot 对话，随便输入，拿到个人userid\n\n把上方获取到的机器人 token 和个人 userid 填入上方的通知配置中\n\n3.2 用户名、密码设置\n\n保存后，输入用户名和密码后登陆后台\n\n3.3 青龙后台","routePath":"/guide/how-to-setup-qinglong-vps-town","lang":"zh","toc":[{"id":"1-安装-docker-和-docker-compose","text":"1. 安装 Docker 和 Docker Compose","depth":2,"charIndex":125},{"id":"11-更新软件包索引","text":"1.1 更新软件包索引","depth":3,"charIndex":156},{"id":"12-添加-docker-仓库","text":"1.2 添加 Docker 仓库","depth":3,"charIndex":450},{"id":"13-安装-docker-和-docker-compose","text":"1.3 安装 Docker 和 Docker Compose","depth":3,"charIndex":743},{"id":"2-安装青龙面板","text":"2. 安装青龙面板","depth":2,"charIndex":1097},{"id":"21-创建路径","text":"2.1 创建路径","depth":3,"charIndex":1108},{"id":"22-创建-docker-compose-文件","text":"2.2 创建 docker compose 文件","depth":3,"charIndex":1166},{"id":"23-启动青龙面板","text":"2.3 启动青龙面板","depth":3,"charIndex":1478},{"id":"24-安装完成","text":"2.4 安装完成","depth":3,"charIndex":1521},{"id":"3青龙面板配置","text":"3、青龙面板配置","depth":2,"charIndex":1544},{"id":"31-通知配置","text":"3.1 通知配置","depth":3,"charIndex":1600},{"id":"32-用户名密码设置","text":"3.2 用户名、密码设置","depth":3,"charIndex":1812},{"id":"33-青龙后台","text":"3.3 青龙后台","depth":3,"charIndex":1845}],"frontmatter":{"date":"2025-04-15 00:00 +8","updated":"2025-04-15 10:30 +8","version":"v0.0.1","description":"本文详细介绍了如何在 VPS.Town 服务器上安装并配置青龙面板，包括安装 Docker 和 Docker Compose、创建路径、创建 docker compose 文件、启动青龙面板、配置通知、设置用户名和密码等步骤。","category":"automation-scripts","order":1,"sidebarTitle":"青龙面板安装与配置","cardIcon":"Clock","cardDescription":"在 VPS.Town 服务器上部署青龙面板定时任务管理工具","author":"biebiele","banner":"/assets/images/how-to-setup-qinglong-vps-town/10.png","keywords":["青龙面板","VPS.Town","Docker","Docker Compose"]},"version":"","description":"本文详细介绍了如何在 VPS.Town 服务器上安装并配置青龙面板，包括安装 Docker 和 Docker Compose、创建路径、创建 docker compose 文件、启动青龙面板、配置通知、设置用户名和密码等步骤。"},{"title":"在 Debian 12 上安装并使用 RSStT","content":"更关心您阅读体验的 Telegram RSS 机器人\n\nRSS-to-Telegram-Bot (RSStT) 是一个功能强大的 Telegram 机器人，可以将 RSS 源的更新推送到 Telegram。使用 Docker Compose 是官方最推荐的部署方式，它极大地简化了安装、配置和更新过程，将应用程序及其依赖项打包在隔离的容器中运行，非常适合新手和追求便捷管理的用户。本教程将指导您如何在 Debian 12 服务器上一步步完成 Docker Compose 部署。\n\n本文由用户 k08255-lxm 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 现金 50 元 奖励。\n\n1. 准备工作\n\n与任何安装方式一样，我们首先需要获取一些必要的凭证信息。如果您已在其他教程中获取过，可以跳过此步。\n\nTelegram Bot Token: 用于让我们的程序作为 Bot 连接到 Telegram。\n\n管理员 Telegram User ID: 用于管理 Bot 的权限。\n\nTelegraph API Token(s): 用于将过长的消息发布为 Telegraph 文章 (推荐获取 5 个)。\n\n1.1 获取 Telegram Bot Token\n\n打开 Telegram，搜索并与 @BotFather 开始对话。\n\n发送 /newbot 命令，按提示设置 Bot 的名字 (Name) 和用户名 (Username, 必须以 bot 结尾)。\n\n创建成功后，复制 BotFather 发送的 HTTP API Token。妥善保管。\n\n（重要） 接着，向 BotFather 发送 /setinline 命令，选择你刚创建的 Bot，然后随意回复一条消息（如：输入命令...）以启用内联模式。\n\n将获取到的 Bot Token 复制下来备用。我们称之为 TOKEN。\n\n然后与您的机器人对话，并发送/start命令。\n\n1.2 获取你的 Telegram User ID\n\n打开 Telegram，搜索并与 @userinfobot 开始对话。\n\n发送 /start 或任何消息。\n\n复制它回复的纯数字 User ID。\n\n将获取到的 User ID 复制下来备用。我们称之为 MANAGER。\n\n1.3 获取 Telegraph API Token(s)\n\n访问 Telegraph API 创建页面（此链接会在生成的文章页脚留下 RSStT 的项目标识）。\n自定义无标识链接：\nhttps://api.telegra.ph/createAccount?short_name=YourName\n\n复制页面结果中 access_token 的值。\n\n（重要） 刷新页面以获取新的、不同的 access_token。重复此操作，至少获取 5 个 Token。\n\n将获取到的所有 Telegraph API Token 用逗号连接起来，复制备用。我们称之为 TELEGRAPH_TOKEN。例如：token1,token2,token3,token4,token5。\n\n2. 服务器环境准备：安装 Docker 和 Docker Compose\n\nDocker Compose 需要 Docker Engine 运行环境。我们将安装最新的 Docker 版本。\n\n本教程假设您使用的是一台拥有 sudo 权限用户的 Debian 12 服务器。所有命令默认使用 sudo 提升权限，除非已将用户添加到 docker 组。\n\n2.1 更新系统软件包\n\n首先，确保系统是最新的。\n\nsudo apt update && sudo apt upgrade -y\n\n2.2 安装 Docker\n\n卸载旧版本 (如果存在):\n\nsudo apt remove docker docker-engine docker.io containerd runc -y\n\n安装必要的依赖包:\n\nsudo apt install -y ca-certificates curl gnupg lsb-release\n\n使用一键脚本\n\ncurl -fsSL https://get.docker.com | bash\n\n3. 使用 Docker Compose 安装 RSStT\n\n现在 Docker 环境准备就绪，我们可以开始部署 RSStT 了。\n\n3.1 创建工作目录并下载配置文件\n\n# 创建一个专门的目录存放 RSStT 的配置和数据\nmkdir ~/rsstt_docker\ncd ~/rsstt_docker\n\n# 下载官方提供的 docker-compose.yml 示例文件\nwget https://raw.githubusercontent.com/Rongronggg9/RSS-to-Telegram-Bot/dev/docker-compose.yml.sample -O docker-compose.yml\n\n3.2 配置 docker-compose.yml 文件\n\ndocker-compose.yml 文件定义了运行 RSStT 所需的服务（即容器）及其配置。我们需要编辑它来填入之前准备好的凭证信息。\n\n# 使用 nano 编辑器编辑文件 (也可以使用 vim 或其他编辑器)\nnano docker-compose.yml\n\n找到 services: -> rsstt: -> environment: 部分。这里定义了 RSStT 运行所需的环境变量。你需要修改以下几行：\n\nservices:\n  rsstt:\n    # ... (其他配置保持不变)\n    environment:\n      # --- Required ---\n      # Telegram Bot Token (从 @BotFather 获取)\n      - TOKEN=781243512:AAGSDGHSRTGHJTRDSFGDSSD # <--- 修改这里\n\n      # Bot 管理员的 Telegram User ID (从 @userinfobot 获取)\n      - MANAGER=123456789 # <--- 修改这里\n\n      # Telegraph API Tokens (一行一个，至少一个，推荐5个)\n      TELEGRAPH_TOKEN=<你的Telegraph_API_Token1>\n        1599373e3dbf55515XXXXX8658d28297fa3\n        f2a8f5c5db81c740bcXxxxX52287ec413\n        361935c66b7XXX7ce645af19\n        0702249218XXXXXc2ab7fcd981b9db820d80098c03ce6\n        130f258173dXXXX10ef89adf51477535822a94fca708f578d62\n\n      # 数据库类型 (Docker Compose 默认使用 sqlite, 数据存储在 volume 中)\n      # 如果你想使用外部 PostgreSQL 数据库，需要取消注释并修改下面两行\n      # - DB_TYPE=postgre\n      # - DATABASE_URL=postgresql://user:password@host:port/database\n\n      # --- Optional ---\n      # Telegram API 的代理 (例如: socks5://192.168.1.100:1080, 注意这里的 IP 通常是宿主机 IP 或代理服务容器 IP)\n      # - PROXY=socks5://192.168.1.100:1080\n      # RSS 源的代理\n      # - RSS_PROXY=http://192.168.1.100:1081\n\n      # 启用 HTML 表格转图片 (需要容器内字体支持，官方镜像已包含)\n      # - TABLE_TO_IMAGE=1\n\n重要修改点：\n\n将 <你的机器人TOKEN> 替换为你的真实 Bot Token。\n\n将 <你的Telegram用户ID> 替换为你的真实 User ID。\n\n将 <你的Telegraph_API_Token1> 替换为你之前生成的 Telegraph Token ，一行一个。\n\n如果需要代理，请取消对应 - PROXY= 或 - RSS_PROXY= 行的注释并填入正确的代理地址。注意，如果代理在宿主机上，地址通常是宿主机的局域网 IP 或 172.17.0.1 (Docker 默认网桥 IP)，而不是 127.0.0.1。\n\n默认使用 SQLite 数据库，数据会保存在 Docker Volume (rsstt-data) 中，无需额外配置。\n\n编辑完成后，按 Ctrl + X，然后按 Y，最后按 Enter 保存并退出 nano。\n\n3.3 启动 RSStT 服务\n\n现在，只需要一条命令即可启动 RSStT：\n\n# 确保你在 ~/rsstt_docker 目录下\n# 如果你没有将用户添加到 docker 组，请使用 sudo docker compose up -d\ndocker compose up -d\n\nup: 创建并启动 docker-compose.yml 文件中定义的服务。\n\n-d: Detached mode，表示在后台运行容器。\n\nDocker 会自动下载 RSStT 的镜像 (如果本地没有)，然后创建并启动容器。\n\n3.4 检查服务状态和日志\n\n# 查看正在运行的容器 (应该能看到名为 rsstt_docker-rsstt-1 或类似的容器)\n# 如果你没有将用户添加到 docker 组，请使用 sudo docker ps\ndocker ps\n\n# 查看 RSStT 容器的实时日志\n# 如果你没有将用户添加到 docker 组，请使用 sudo docker compose logs -f\ndocker compose logs -f\n\n如果日志滚动显示，并且没有明显的错误信息 (如 ERROR 级别的日志)，最后看到类似 INFO:telegram.ext.Application:Getting updates 的信息，说明 Bot 已经成功启动。\n\n此时，你可以打开 Telegram，与你的 Bot 对话，发送 /start 或 /help 命令进行测试。\n\n按 Ctrl + C 停止查看实时日志 (服务仍在后台运行)。\n\n4. 管理 RSStT 服务 (Docker Compose)\n\n使用 Docker Compose 管理 RSStT 非常方便：\n\n启动服务 (后台运行): docker compose up -d\n\n停止并移除容器: docker compose down (数据卷 rsstt-data 默认会保留)\n\n停止服务 (不移除容器): docker compose stop\n\n启动已停止的服务: docker compose start\n\n重启服务: docker compose restart\n\n查看所有服务日志: docker compose logs\n\n查看实时日志: docker compose logs -f\n\n拉取最新镜像 (用于更新): docker compose pull\n\n以上所有 docker compose 命令都需要在包含 docker-compose.yml 文件的目录 (~/rsstt_docker) 下执行。\n\n5. 更新 RSStT\n\n更新 RSStT 非常简单：\n\n进入工作目录:\n\ncd ~/rsstt_docker\n\n拉取最新的 Docker 镜像:\n\n# 如果你没有将用户添加到 docker 组，请使用 sudo docker compose pull\ndocker compose pull\n\n停止当前容器并使用新镜像重新创建启动:\n\n# 如果你没有将用户添加到 docker 组，请使用 sudo docker compose up -d\ndocker compose up -d --remove-orphans\n--remove-orphans 会移除旧版本可能遗留的不再需要的容器。\n\n更新完成！数据因为存储在 Docker Volume 中，所以会保留下来。\n\n6. 常见问题与注意事项 (Docker)\n\nBot 没有响应?\n检查容器是否在运行: docker ps (或 sudo docker ps)。\n\n查看容器日志: docker compose logs -f (或 sudo docker compose logs -f)。\n\n确认 docker-compose.yml 文件中的 TOKEN, MANAGER, TELEGRAPH_TOKEN 是否正确填写且没有多余空格。\n\n确认服务器网络是否正常，Docker 容器的网络是否能访问 Telegram API (检查代理设置 PROXY 是否正确)。\n\n确认是否启用了 inline 模式 (/setinline @BotFather)。\n\n\nRSS 抓取失败?\n检查 RSS 源地址是否有效。\n\n确认 Docker 容器的网络是否能访问该 RSS 源 (检查代理设置 RSS_PROXY 是否正确)。\n\n查看容器日志获取详细错误信息。\n\n\n消息过长被截断?\n确认 docker-compose.yml 文件中的 TELEGRAPH_TOKEN 是否配置正确且有效 (确保有多个，用逗号分隔)。\n\n检查容器日志看是否有 Telegraph 相关的错误。\n\n\n数据持久化: docker-compose.yml 文件中定义了名为 rsstt-data 的 Docker Volume。只要你不手动删除这个 Volume (docker volume rm rsstt_docker_rsstt-data)，你的订阅和配置信息就会在容器停止、重启或更新后保留下来。\n\n资源占用: 可以使用 docker stats (或 sudo docker stats) 命令查看 RSStT 容器的实时资源使用情况 (CPU, 内存等)。\n\n7.使用\n\n现在您的 RSStT 机器人已经在 Docker 中成功运行，是时候开始使用它来订阅和管理 RSS 源了。以下是一些基本的操作指令：\n\n7.1 添加订阅\n\n这是核心功能，用于添加新的 RSS 源。\n\n为自己订阅 (Bot 向私聊发送信息):\n订阅单个源: /sub <RSS 订阅 URL>\n将<RSS 订阅 URL>替换为你想要订阅的 url，例如/sub https://rss.nodeseek.com/\n\n批量订阅: /sub <URL1> <URL2> ... (url之间用空格分隔)\n例如：/sub https://rss.nodeseek.com/ https://docs.vps.town/rss/event.xml\n\n\n\n为群组/频道订阅:\n首先，将机器人添加为群组成员或频道管理员(需发布消息权限)。\n\n将机器人加入至群组的步骤：\n\n\n将机器人加入至频道的步骤：\n\n\n\n\n\n方法一 (直接在群组/频道内):\n在群组或频道内直接发送 /sub <RSS 订阅 URL>。\n\n\n\n方法二 (在与 Bot 的私聊中指定目标):\n使用用户名: /sub @频道或群组用户名 <RSS 订阅 URL>\n例如：/sub @MyChannelName https://example.com/feed.xml\n(注意：@ 符号必不可少)\n\n\n使用 Chat ID: /sub <频道或群组ID> <RSS 订阅 URL>\n例如：/sub -1001234567890 https://example.com/feed.xml\n(注意：频道/群组 ID 通常以 -100 开头。您可以通过转发频道/群组消息给 @userinfobot 等方式获取 ID)\n\n7.2 管理订阅\n\n对于在群组或频道中的管理可以参见 7.1：在群组或频道内直接发送命令或在与 Bot 的私聊中指定目标\n\n列出订阅:\n发送 /list 查看您（或当前群组/频道）的所有订阅。\n\n取消订阅:\n发送 /unsub，机器人会列出订阅并提供按钮供您选择取消。\n\n或发送 /unsub <RSS 订阅 URL> 直接指定取消。\n\n\n全部取消订阅:\n发送 /unsub_all 将一次性取消当前聊天（私聊、群组或频道）中的所有 RSS 订阅。请谨慎使用！\n\n停用订阅:\n发送 /deactivate_subs，可以选择暂时停止接收某些源的更新，但保留订阅关系。\n\n启用订阅:\n发送 /activate_subs，可以选择重新启用之前被停用的订阅源。\n\n7.3 导入与导出\n\n方便地迁移和备份您的订阅列表。\n\n导入订阅:\n发送 /import 命令，然后按提示上传一个 OPML 文件 (一种常见的 RSS 订阅列表格式)。机器人会将文件中的订阅源添加到当前聊天。\n\n导出订阅:\n发送 /export，机器人会将当前聊天的所有订阅打包成一个 OPML 文件发送给您，方便备份或迁移到其他阅读器。\n\n7.4 自定义设置\n\n调整订阅和机器人的行为。\n\n单个订阅设置:\n发送 /set，可以选择一个已订阅的源，并对其进行详细设置（如：通知格式、过滤规则、Webpage Preview 等）。这是进行精细化管理的入口。\n\n默认设置:\n发送 /set_default，可以为之后新添加的订阅设置默认的行为（类似 /set 中的选项，但作为默认值）。\n\n选择语言:\n发送 /lang，可以更改机器人界面的显示语言。\n\n7.5 Bot 管理员命令 (仅限 MANAGER 用户 ID)\n\n这些命令仅限在 docker-compose.yml 中配置为 MANAGER 的用户 ID 在与机器人私聊时使用。\n\n测试订阅源:\n发送 /test <RSS 订阅 URL> 来检查机器人是否能成功抓取和解析该源。这对于诊断问题非常有用。\n\n更改 Bot 配置:\n允许 Bot 管理员修改一些全局性的机器人配置参数。\n\n用户信息:\n查看或修改与特定用户相关的信息（通常用于管理）。\n\n7.6 其他命令\n\n查看版本:\n发送 /version 查看当前运行的 RSStT 机器人版本。\n\n7.7 获取帮助 (/help):\n\n发送 /help 显示所有可用命令及其简要说明，您可以自行探索该机器人的更多用法。\n\n8. 结语\n\n恭喜！您已经通过 Docker Compose 在 Debian 12 服务器上成功部署并运行了 RSS-to-Telegram-Bot。这种方式不仅安装过程简洁，后续的维护和更新也十分方便。\n\n现在，您可以开始在 Telegram 上与您的 Bot 互动，添加您想要关注的 RSS 源了。\n\n如果遇到任何问题或想了解更多高级功能，请查阅官方文档：\n\n项目仓库: https://github.com/Rongronggg9/RSS-to-Telegram-Bot\n\n文档导航: docs\n\nFAQ: docs/FAQ.zh.md","routePath":"/guide/how-to-setup-rsstt-debian-12-guide-vps-town","lang":"zh","toc":[{"id":"1-准备工作","text":"1. 准备工作","depth":2,"charIndex":359},{"id":"11-获取-telegram-bot-token","text":"1.1 获取 Telegram Bot Token","depth":3,"charIndex":568},{"id":"12-获取你的-telegram-user-id","text":"1.2 获取你的 Telegram User ID","depth":3,"charIndex":882},{"id":"13-获取-telegraph-api-tokens","text":"1.3 获取 Telegraph API Token(s)","depth":3,"charIndex":1021},{"id":"2-服务器环境准备安装-docker-和-docker-compose","text":"2. 服务器环境准备：安装 Docker 和 Docker Compose","depth":2,"charIndex":1355},{"id":"21-更新系统软件包","text":"2.1 更新系统软件包","depth":3,"charIndex":1532},{"id":"22-安装-docker","text":"2.2 安装 Docker","depth":3,"charIndex":1599},{"id":"3-使用-docker-compose-安装-rsstt","text":"3. 使用 Docker Compose 安装 RSStT","depth":2,"charIndex":1817},{"id":"31-创建工作目录并下载配置文件","text":"3.1 创建工作目录并下载配置文件","depth":3,"charIndex":1884},{"id":"32-配置-docker-composeyml-文件","text":"3.2 配置 docker-compose.yml 文件","depth":3,"charIndex":2128},{"id":"33-启动-rsstt-服务","text":"3.3 启动 RSStT 服务","depth":3,"charIndex":3844},{"id":"34-检查服务状态和日志","text":"3.4 检查服务状态和日志","depth":3,"charIndex":4099},{"id":"4-管理-rsstt-服务-docker-compose","text":"4. 管理 RSStT 服务 (Docker Compose)","depth":2,"charIndex":4514},{"id":"5-更新-rsstt","text":"5. 更新 RSStT","depth":2,"charIndex":4942},{"id":"6-常见问题与注意事项-docker","text":"6. 常见问题与注意事项 (Docker)","depth":2,"charIndex":5279},{"id":"7使用","text":"7.使用","depth":2,"charIndex":6046},{"id":"71-添加订阅","text":"7.1 添加订阅","depth":3,"charIndex":6120},{"id":"72-管理订阅","text":"7.2 管理订阅","depth":3,"charIndex":6785},{"id":"73-导入与导出","text":"7.3 导入与导出","depth":3,"charIndex":7114},{"id":"74-自定义设置","text":"7.4 自定义设置","depth":3,"charIndex":7286},{"id":"75-bot-管理员命令-仅限-manager-用户-id","text":"7.5 Bot 管理员命令 (仅限 MANAGER 用户 ID)","depth":3,"charIndex":7491},{"id":"76-其他命令","text":"7.6 其他命令","depth":3,"charIndex":7718},{"id":"77-获取帮助-help","text":"7.7 获取帮助 (/help):","depth":3,"charIndex":7768},{"id":"8-结语","text":"8. 结语","depth":2,"charIndex":7830}],"frontmatter":{"date":"2025-05-25 13:30 +8","updated":"2025-06-03 19:30 +8","version":"v0.0.1","description":"指导您如何在 Debian 12 服务器上使用 Docker Compose 轻松安装和配置 RSS-to-Telegram-Bot (RSStT)，这是官方推荐且对新手友好的方式。","category":"web-services","sidebarTitle":"RSStT 订阅推送机器人","cardIcon":"Rss","cardDescription":"使用 Docker Compose 部署 RSS-to-Telegram-Bot (RSStT)","author":"k08255-lxm","banner":"/assets/images/how-to-setup-rsstt-debian-12-guide-vps-town/12.png","keywords":["RSS","Telegram Bot","RSStT","Debian 12","Docker"]},"version":"","description":"指导您如何在 Debian 12 服务器上使用 Docker Compose 轻松安装和配置 RSS-to-Telegram-Bot (RSStT)，这是官方推荐且对新手友好的方式。"},{"title":"如何使用 Acme.sh 自动更新 Nginx 网站证书","content":"本文由用户 biebiele 撰写，并已加入 VPS.Town 优秀原创文章激励计划，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 -- 奖励。\n\nAcme.sh 是一个纯粹用 Shell（Unix shell）语言编写的 ACME 协议客户端。可自动帮您申请 SSL 证书并自动更新。\n\n1. acme.sh 安装\n\n# 将 my@example.com 换成您自己的邮箱地址\ncurl https://get.acme.sh | sh -s email=my@example.com\n\n安装完成后，程序安装在/root/.acme.sh/下，且可在任何地方使用acme.sh命令\n\n2. 使用 CloudFlare DNS api 验证\n\n2.1. 添加您的域名到 CloudFlare\n\n账户主页-添加域：按照页面指示添加您的个人域名\n\n\n选择计划：选择下方的free计划，点击继续\n\n\ndns记录：会自动导入已有的 dns 记录，检查没什么问题，点击继续\n\n\n更新名称服务器：根据指引，在您域名之前网站，修改 ns 记录。主要删除原来的 dns 锁定和删除并添加新的 ns 记录\n\n\n验证：修改完成后，检查添加状态是否正常，如不正常，可手动最下方立即检查或手动检查添加过程是否正确\n\n2.2. 创建 API 令牌\n\n点击创建令牌\n\n\n选择使用模版 编辑区域dns\n\n\n权限配置\n\n\n确定创建令牌\n\n\n复制生成的 token 值\n\n2.3. 区域 ID 和账户 ID\n\n2.4. 申请 SSL 域名证书\n\n# API令牌：上述步骤获取的令牌token值\nexport CF_Token=\"Y_jpG9AnfQmuX5Ss9M_qaNab6SQwme3HWXNDzRWs\"\n\n# 以下二选一\n# 单个域名：上述区域ID值\nexport CF_Zone_ID=\"763eac4f1bcebd8b5c95e9fc50d010b4\"\n# 多个域名：上述账户ID值\n# export CF_Account_ID=\"763eac4f1bcebd8b5c95e9fc50d010b4\"\n\n配置以上环境变量后，手动执行申请\n\n# 以下申请ssl通配证书，根据提示操作\nacme.sh --issue --dns dns_cf -d example.com -d '*.example.com'\n\n设置和使用的任何环境变量都将保存在 ~/.acme.sh/account.conf\n\n检查脚本执行日志，是否获取证书正常，提示证书文件保存在何地\n\n后续定期更新，是由计划任务 cron 里的定期检查和自动更新\n\n3. nginx 等程序配置 ssl\n\n在nginx.conf配置文件，添加 ssl 相关配置并重启服务，浏览器检查 https 访问是否正常。以下供参考：\n\nssl_certificate      /opt/ssl_cert.pem;\n        ssl_certificate_key /opt/ssl_key.pem;\n\n        ssl_protocols             TLSv1.2 TLSv1.3;\n        ssl_prefer_server_ciphers on;\n        ssl_ciphers               ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305;\n        ssl_ecdh_curve            secp521r1:secp384r1:secp256r1:x25519;","routePath":"/guide/how-to-use-acme.sh-vps-town","lang":"zh","toc":[{"id":"1-acmesh-安装","text":"1. acme.sh 安装","depth":2,"charIndex":173},{"id":"2-使用-cloudflare-dns-api-验证","text":"2. 使用 CloudFlare DNS api 验证","depth":2,"charIndex":321},{"id":"21-添加您的域名到-cloudflare","text":"2.1. 添加您的域名到 CloudFlare","depth":3,"charIndex":350},{"id":"22-创建-api-令牌","text":"2.2. 创建 API 令牌","depth":3,"charIndex":574},{"id":"23-区域-id-和账户-id","text":"2.3. 区域 ID 和账户 ID","depth":3,"charIndex":647},{"id":"24-申请-ssl-域名证书","text":"2.4. 申请 SSL 域名证书","depth":3,"charIndex":666},{"id":"3-nginx-等程序配置-ssl","text":"3. nginx 等程序配置 ssl","depth":2,"charIndex":1127}],"frontmatter":{"date":"2025-04-15 15:00 +8","updated":"2025-04-15 20:00 +8","version":"v0.0.1","description":"本文详细介绍了如何使用 Acme.sh 工具自动申请和更新 SSL 证书，包括安装配置、CloudFlare DNS API验证、证书申请流程以及 Nginx 服务器配置 SSL 证书的具体步骤。","category":"system-security","sidebarTitle":"acme.sh 自动续签证书","cardIcon":"Shield","cardDescription":"使用 acme.sh 申请并自动续签 SSL 证书","author":"biebiele","banner":"/assets/images/how-to-use-acme.sh-vps-town/7.png","keywords":["acme.sh","ssl"]},"version":"","description":"本文详细介绍了如何使用 Acme.sh 工具自动申请和更新 SSL 证书，包括安装配置、CloudFlare DNS API验证、证书申请流程以及 Nginx 服务器配置 SSL 证书的具体步骤。"},{"title":"在 VPS.Town 上部署 Vaultwarden 密码管理器完全指南","content":"本文由用户 biebiele 撰写，并已加入 VPS.Town 优秀原创文章激励计划，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 -- 奖励。\n\n前言\n\n在当今数字化时代，我们每天都需要使用大量的账号和密码。使用简单或重复的密码会带来严重的安全风险，而记住众多复杂密码又几乎不可能。这就是为什么我们需要一个可靠的密码管理工具。\n\nVaultwarden 是 Bitwarden 的一个非官方实现，它是一个开源的密码管理解决方案，允许您安全地存储和管理您的密码、信用卡信息、身份信息和其他敏感数据。与商业密码管理器不同，Vaultwarden 可以自托管，这意味着您的数据完全由您自己控制，不依赖于第三方服务。\n\n相比其他密码管理工具，Vaultwarden 具有以下优势：\n\n完全开源，代码透明可审计\n\n可以完全控制自己的数据\n\n资源占用低，适合在 VPS 上运行\n\n支持所有主流平台和浏览器\n\nVaultwarden 的主要特点：\n\n开源且免费：完全开源，无需支付订阅费用\n\n自托管：您的数据存储在您自己的服务器上，提高隐私保护\n\n跨平台支持：提供 Windows、macOS、Linux、iOS 和 Android 客户端\n\n浏览器扩展：支持 Chrome、Firefox、Safari 等主流浏览器\n\n强大的加密：使用 AES-256 加密、PBKDF2 和 SHA-256 哈希算法\n\n资源占用低：相比官方 Bitwarden 服务器，Vaultwarden 对系统资源要求更低\n\n功能丰富：支持密码生成、安全笔记、身份信息管理、文件附件等\n\n在开始部署之前，请确保：\n\n您的服务器已经配置了防火墙\n\n使用 HTTPS 访问 Vaultwarden\n\n定期备份您的数据\n\n使用强密码保护您的账户\n\n本教程将指导您如何使用 Docker 在自己的服务器上部署 Vaultwarden，并进行基本配置和使用。\n\n本教程适用于 Ubuntu 22.04 系统，其他 Linux 发行版可能需要调整部分命令。\n\n1. 安装 Docker 和 Docker Compose\n\n# 更新软件包索引，下载 Docker 官方 GPG 密钥，并允许所有人读取\nsudo apt-get update\nsudo apt-get install ca-certificates curl\nsudo install -m 0755 -d /etc/apt/keyrings\nsudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc\nsudo chmod a+r /etc/apt/keyrings/docker.asc\n\n# 将 Docker 仓库添加到 Apt 源列表\necho \\\n  \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \\\n  $(. /etc/os-release && echo \"${UBUNTU_CODENAME:-$VERSION_CODENAME}\") stable\" | \\\n  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null\nsudo apt-get update\n\n# 安装 docker 软件包\nsudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y\n\n# 启动 docker 服务和开机自启\nsystemctl enable docker\nsystemctl restart docker\n\n# 验证安装\nsystemctl status docker\ndocker compose version\n\n如果看到类似以下输出，说明安装成功：\n\n● docker.service - Docker Application Container Engine\n     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)\n     Active: active (running) since ...\n\n2. 安装 vaultwarden\n\n在开始安装之前，请确保：\n\n已经配置好域名并指向您的服务器\n\n已经安装好 nginx 并配置好 SSL 证书\n\n防火墙已开放相应端口\n\n# 创建数据目录\nmkdir -p /opt/vaultwarden\ncd /opt/vaultwarden\n\n# 创建 docker-compose.yml 文件\nsudo cat > /opt/vaultwarden/docker-compose.yml <<EOF\nservices:\n  vaultwarden:\n    image: vaultwarden/server:latest\n    container_name: vaultwarden\n    restart: unless-stopped\n    environment:\n      DOMAIN: \"https://vw.domain.tld/vault\"  ## 修改为您自己的域名\n    volumes:\n      - ./vw-data/:/data/\n    ports:\n      - 10080:80  ## （可选）修改前面的映射端口\nEOF\n\n# 启动服务\ndocker compose up -d\n\n执行docker ps查看程序启动状态\n\n3. 配置反向代理\n\n我们建议使用 Nginx 作为反向代理，并配置 SSL 证书以确保安全。\n\n以 nginx 为例，修改 nginx.conf，添加类似于如下配置：\n\nlocation /vault/ { # 注意这个路径和上面 docker 配置的域名路径名一致\n    proxy_http_version 1.1;\n    proxy_set_header Host $host;\n    proxy_set_header X-Real-IP $remote_addr;\n    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n    proxy_set_header X-Forwarded-Proto $scheme;\n    proxy_pass http://127.0.0.1:10080;\n}\n\n重启 nginx：service nginx restart\n\n使用浏览器访问 https://vw.domain.tld/vault\n\n4. 账户设置和浏览器插件使用\n\n4.1 创建账户\n\n点击\"创建账户\"\n\n\n填写您的账户信息\n\n使用强密码（至少 12 个字符，包含大小写字母、数字和特殊字符）\n\n建议使用密码生成器生成主密码\n\n妥善保管您的主密码，这是恢复账户的唯一方式\n\n创建完成后，登录您的账户\n\n4.2 安装浏览器扩展\n\n安装扩展\n\n\n配置扩展信息，固定到标签栏\n\n\n选择自托管，输入您的域名（如 https://vw.domain.tld/vault），再输入您注册的账户和密码\n\n\n之后登录或注册网站时，会提示您是否要保存密码\n\n5. 安全建议\n\n定期备份您的数据目录（/opt/vaultwarden/vw-data/）\n\n启用双因素认证（2FA）\n\n定期更新 Vaultwarden 到最新版本\n\n监控服务器日志，及时发现异常\n\n使用强密码保护您的账户\n\n6. 故障排除\n\n6.1 常见问题\n\n无法访问 Web 界面\n检查 Docker 容器是否正常运行：docker ps\n\n检查端口是否正确映射：netstat -tulpn | grep 10080\n\n检查 Nginx 配置是否正确\n\n\n无法保存密码\n检查浏览器扩展是否正确配置\n\n确认服务器地址是否正确\n\n检查网络连接是否正常\n\n\n数据同步问题\n检查服务器状态\n\n尝试重新登录账户\n\n检查网络连接\n\n6.2 日志查看\n\n# 查看容器日志\ndocker logs vaultwarden\n\n# 实时查看日志\ndocker logs -f vaultwarden\n\n7. 备份与恢复\n\n7.1 备份数据\n\n# 创建备份目录\nmkdir -p /backup/vaultwarden\n\n# 备份数据\ntar -czf /backup/vaultwarden/backup-$(date +%Y%m%d).tar.gz /opt/vaultwarden/vw-data/\n\n7.2 恢复数据\n\n# 停止服务\ncd /opt/vaultwarden\ndocker compose down\n\n# 恢复数据\ntar -xzf /backup/vaultwarden/backup-YYYYMMDD.tar.gz -C /\n\n# 重启服务\ndocker compose up -d\n\n建议设置自动备份脚本\n\n将备份文件存储在安全的位置\n\n定期测试备份的可用性\n\n8. 更新 Vaultwarden\n\n# 进入项目目录\ncd /opt/vaultwarden\n\n# 拉取最新镜像\ndocker compose pull\n\n# 重启服务\ndocker compose up -d\n\n更新前先备份数据\n\n关注 Vaultwarden 的更新日志\n\n建议定期检查更新","routePath":"/guide/how-to-using-vaultwarden-as-password-manager-vps-town","lang":"zh","toc":[{"id":"前言","text":"前言","depth":2,"charIndex":102},{"id":"vaultwarden-的主要特点","text":"Vaultwarden 的主要特点：","depth":3,"charIndex":427},{"id":"1-安装-docker-和-docker-compose","text":"1. 安装 Docker 和 Docker Compose","depth":2,"charIndex":885},{"id":"2-安装-vaultwarden","text":"2. 安装 vaultwarden","depth":2,"charIndex":1970},{"id":"3-配置反向代理","text":"3. 配置反向代理","depth":2,"charIndex":2530},{"id":"4-账户设置和浏览器插件使用","text":"4. 账户设置和浏览器插件使用","depth":2,"charIndex":2995},{"id":"41-创建账户","text":"4.1 创建账户","depth":3,"charIndex":3012},{"id":"42-安装浏览器扩展","text":"4.2 安装浏览器扩展","depth":3,"charIndex":3130},{"id":"5-安全建议","text":"5. 安全建议","depth":2,"charIndex":3249},{"id":"6-故障排除","text":"6. 故障排除","depth":2,"charIndex":3364},{"id":"61-常见问题","text":"6.1 常见问题","depth":3,"charIndex":3373},{"id":"62-日志查看","text":"6.2 日志查看","depth":3,"charIndex":3565},{"id":"7-备份与恢复","text":"7. 备份与恢复","depth":2,"charIndex":3646},{"id":"71-备份数据","text":"7.1 备份数据","depth":3,"charIndex":3656},{"id":"72-恢复数据","text":"7.2 恢复数据","depth":3,"charIndex":3798},{"id":"8-更新-vaultwarden","text":"8. 更新 Vaultwarden","depth":2,"charIndex":3989}],"frontmatter":{"date":"2025-04-16 23:00 +8","updated":"2025-04-16 23:00 +8","version":"v0.0.1","description":"本教程详细介绍如何使用 Docker 部署 Vaultwarden 密码管理器，包括环境准备、安装配置、反向代理设置、账户管理、浏览器插件使用、安全建议和故障排除等内容，帮助您搭建一个安全可靠的自托管密码管理解决方案。","category":"system-security","sidebarTitle":"Vaultwarden 密码管理器","cardIcon":"Lock","cardDescription":"在 VPS.Town 服务器上部署 Vaultwarden 自托管密码管理服务","author":"biebiele","banner":"/assets/images/how-to-using-vaultwarden-as-password-manager-vps-town/1744817305288.png","keywords":["vaultwarden","docker","密码管理","安全"]},"version":"","description":"本教程详细介绍如何使用 Docker 部署 Vaultwarden 密码管理器，包括环境准备、安装配置、反向代理设置、账户管理、浏览器插件使用、安全建议和故障排除等内容，帮助您搭建一个安全可靠的自托管密码管理解决方案。"},{"title":"VPS.Town 教程中心","content":"欢迎来到 VPS.Town 教程中心！这里收集了各类实用指南，帮助您在 VPS 服务器上部署和管理各种自托管应用。\n\n无论您是初学者还是有经验的用户，都能找到适合自己的教程。","routePath":"/guide/","lang":"zh","toc":[],"frontmatter":{"date":"2025-02-28T16:00:00.000Z","updated":"2026-09-30 09:00 +8","description":"VPS.Town 教程中心收集了各类实用指南，帮助用户在 VPS 服务器上部署和管理各种自托管应用","sidebarTitle":"教程总览"},"version":"","description":"VPS.Town 教程中心收集了各类实用指南，帮助用户在 VPS 服务器上部署和管理各种自托管应用"},{"title":"iPerf3 分布式网络测试工具全攻略：从安装到进阶监控","content":"项目简介\n\niPerf3 分布式网络测试工具 是一款基于 Python 开发的轻量级分布式网络监控套件。它通过 Master（主控） 与 Agent（代理） 的协同配合，实现了跨节点的带宽测试（iPerf3）、延迟监控（Ping）和路由追踪（Traceroute）可视化分析。\n\n核心亮点\n\n功能\t说明\n🚀 一键安装更新\t单条命令完成安装和版本更新，自动检测差异并增量升级\n📊 现代化仪表盘\t商业级 UI 设计，实时监控节点状态、三网延迟、流媒体解锁\n⏰ 定时任务调度\t周期性自动测试，生成带宽趋势图表和流量统计报告\n🛤️ Metro 路由追踪\t地铁线路图风格可视化、AS 路径分析、路由变化智能告警\n📈 Ping 趋势监控\t实时延迟波动监测，Sparkline 迷你图 + 趋势箭头直观展示\n🎬 流媒体检测\tNetflix、Disney+、ChatGPT 等服务解锁状态自动识别\n🤖 Telegram 通知\t路由变化、任务失败、节点离线等事件实时推送\n🔐 IP 白名单保护\t防止 iPerf3 服务被恶意滥用\n\n系统架构\n\n项目采用解耦的分布式架构设计。主控节点负责数据持久化、任务调度与 Web 展示；代理节点则专注于执行网络探测任务并回传结果。\n\nflowchart TB\n    subgraph MasterNode[\"Master Node (主控节点)\"]\n        direction TB\n        API[\"FastAPI Server<br/>REST API + WebSocket\"]\n        DB[(\"PostgreSQL<br/>数据持久化\")]\n        Cache[(\"Redis<br/>缓存层\")]\n        Sched[\"APScheduler<br/>定时任务调度\"]\n        Web[\"Dashboard UI<br/>现代化仪表盘\"]\n\n        API <--> DB\n        API <--> Cache\n        Sched --> API\n        API --> Web\n    end\n\n    subgraph AgentCluster[\"Agent Nodes (测试节点集群)\"]\n        direction LR\n        A1[\"Agent 1<br/>Flask + iPerf3 + MTR\"]\n        A2[\"Agent 2<br/>Flask + iPerf3 + MTR\"]\n        AN[\"Agent N<br/>Flask + iPerf3 + MTR\"]\n    end\n\n    API -- \"HTTP API<br/>(任务下发/状态同步)\" --> A1\n    API -- \"HTTP API<br/>(任务下发/状态同步)\" --> A2\n    API -- \"HTTP API<br/>(任务下发/状态同步)\" --> AN\n\n    A1 <-- \"iPerf3 流量测试<br/>(TCP/UDP)\" --> A2\n    A2 <-- \"iPerf3 流量测试<br/>(TCP/UDP)\" --> AN\n\n组件技术栈\n\n组件\t技术栈\t核心职责\nMaster API\tFastAPI + PostgreSQL + Redis\tREST API、Web 面板、调度器、缓存管理\nAgent\tFlask + iPerf3 + MTR\t执行网络测试、路由追踪、流媒体检测、IP 过滤\nScheduler\tAPScheduler\t定时 iPerf3 测试任务和 Traceroute 监控任务\n\n环境准备\n\n在开始部署前，请确保您的服务器满足以下条件：\n\n系统要求\n\n操作系统：Ubuntu 20.04+、Debian 11+、CentOS 7+ 或其他主流 Linux 发行版\n\n硬件配置：至少 1 核 CPU / 512MB 内存（建议 2 核 / 1GB 以获得更好体验）\n\n基础依赖：已安装 Docker、Docker Compose 和 Git\n\n网络端口\n\n请确保以下端口在防火墙和安全组中已开放：\n\n端口\t协议\t用途\n9000\tTCP\tMaster API 接口\n9100\tTCP\tWeb 仪表盘面板\n8000\tTCP\tAgent API 接口\n62001\tTCP/UDP\tiPerf3 默认测试端口\n\n快速部署\n\n安装主控节点 (Master)\n\n主控节点包含数据库、缓存和管理后台，是整个系统的核心枢纽。\n\n步骤 1：克隆项目仓库\n\ngit clone https://github.com/podcctv/iperf3-test-tools.git\ncd iperf3-test-tools\n\n步骤 2：执行一键安装脚本\n\nbash ./update_iperf3_master.sh\n\n安装过程中，脚本会自动完成以下工作：\n\n拉取并构建 Docker 镜像\n\n初始化 PostgreSQL 数据库\n\n生成随机管理员密码\n\n启动所有服务容器\n\n步骤 3：访问仪表盘\n\n安装完成后，访问以下地址进入管理面板：\n\nhttp://<服务器 IP>:9100/web\n\n首次启动时，系统会在终端输出自动生成的管理员密码，请妥善保存。如果忘记密码，可通过命令重置（见故障排查章节）。\n\n安装代理节点 (Agent)\n\n代理节点只需运行一条脚本即可完成自动注册。\n\ncurl -sSL https://raw.githubusercontent.com/podcctv/iperf3-test-tools/main/install_agent.sh | bash -s -- \\\n  --master-url http://<Master-IP>:9000 \\\n  --node-name \"香港 BGP 节点\"\n\n参数说明：\n\n参数\t说明\n--master-url\t主控节点 API 地址（格式：http://IP:9000）\n--node-name\t节点显示名称（支持中文，建议包含地区信息）\n\n安装完成后，新节点会自动出现在主控仪表盘的节点列表中。\n\n核心功能详解\n\n节点监控仪表盘\n\n仪表盘首页提供全方位的节点状态概览：\n\n节点状态卡片：实时显示在线/离线状态，在线节点有呼吸动效\n\n三网延迟：同时监测电信、联通、移动三大运营商的连接延迟\n\nPing 趋势图：通过 Sparkline 迷你图展示 24 小时延迟波动曲线\n\n流媒体检测徽章：自动识别 Netflix、Disney+、ChatGPT 等服务的解锁状态，并显示区域角标（如 HK / US / SG）\n\n可视化路由追踪 (Metro-line)\n\n该工具将复杂的 Traceroute 数据转化为类似\"地铁线路图\"的可视化界面：\n\nflowchart LR\n    Start((\"源节点<br/>香港\"))\n    H1[\"Hop 1<br/>10.0.0.1<br/>1ms\"]\n    H2[\"Hop 2<br/>AS4134 电信<br/>15ms\"]\n    H3[\"Hop 3<br/>AS9929 精品网<br/>35ms\"]\n    H4[\"Hop 4<br/>AS4809 CN2<br/>48ms\"]\n    End((\"目标节点<br/>上海\"))\n\n    Start --> H1 --> H2 --> H3 --> H4 --> End\n\n    style H2 fill:#90EE90\n    style H3 fill:#FFD700\n    style H4 fill:#90EE90\n\n核心功能：\n\nAS 路径分析：清晰展示数据包经过的自治系统（AS 编号及名称）\n\n延迟胶囊徽章：根据延迟自动着色（绿色 < 50ms / 黄色 < 150ms / 红色 > 150ms）\n\nISP/IX 徽章识别：自动识别 CN2、9929、NTT 等优质线路\n\n智能变化告警：当路由节点发生变化时，系统通过 Telegram 推送高亮对比差异\n\n定时任务调度\n\n您可以设置周期性的 iPerf3 测试任务，系统将自动记录并分析：\n\n上下行带宽：支持 TCP / UDP 双模式测试\n\n并行连接数：可配置同时建立的连接数量\n\n趋势图表：24 小时内的带宽波动曲线\n\n流量统计：展示节点日消耗流量，适合管理有流量配额的 VPS\n\nTelegram 智能通知\n\n配置 Telegram Bot 后，系统可自动推送以下事件：\n\n📡 路由变化告警（附带跳点差异对比）\n\n⚠️ 定时任务执行失败通知\n\n🔴 节点离线告警\n\n配置参考\n\n环境变量\n\n变量名\t说明\t默认值\nDATABASE_URL\tPostgreSQL 连接字符串\tpostgresql://iperf:iperf_pass@db:5432/iperf_db\nREDIS_URL\tRedis 连接字符串\tredis://redis:6379\nDASHBOARD_PASSWORD\t仪表盘管理密码\t首次启动自动生成\nMASTER_API_PORT\tMaster API 端口\t9000\nMASTER_WEB_PORT\tWeb 面板端口\t9100\n\nDocker Compose 示例\n\n# docker-compose.yml\nservices:\n  master-api:\n    build: ./master-api\n    ports:\n      - \"9000:9000\"\n    depends_on:\n      - db\n      - redis\n    environment:\n      - DATABASE_URL=postgresql://iperf:iperf_pass@db:5432/iperf_db\n      - REDIS_URL=redis://redis:6379\n\n  db:\n    image: postgres:15-alpine\n    environment:\n      POSTGRES_USER: iperf\n      POSTGRES_PASSWORD: iperf_pass\n      POSTGRES_DB: iperf_db\n\n  redis:\n    image: redis:7-alpine\n\nAPI 接口一览\n\n核心接口\n\n方法\t路径\t说明\nGET\t/nodes\t获取所有已注册节点\nPOST\t/nodes\t注册新节点\nGET\t/nodes/{id}/ping-history\t获取节点 Ping 历史数据\nPOST\t/tests\t执行即时测试任务\nGET/POST\t/schedules\t定时任务 CRUD 管理\n\n路由追踪接口\n\n方法\t路径\t说明\nPOST\t/api/trace/run\t执行即时 Traceroute\nGET\t/api/trace/schedules\t获取追踪定时任务列表\nGET\t/api/trace/results\t获取历史追踪结果\n\nTelegram 配置接口\n\n方法\t路径\t说明\nGET\t/admin/telegram\t获取当前 Telegram 配置\nPOST\t/admin/telegram\t保存 Telegram Bot 配置\nPOST\t/admin/telegram/test\t发送测试消息验证配置\n\n完整的 API 交互式文档可访问 http://<服务器 IP>:9000/docs 查看（基于 Swagger UI）。\n\n更新与维护\n\n常规版本升级\n\n在 Master 节点执行以下命令进行版本升级：\n\ncd iperf3-test-tools\ngit pull origin main\ndocker compose build --no-cache master-api\ndocker compose up -d\n\nAgent 自动更新\n\nAgent 节点支持 Watchdog 自动更新机制。运行以下脚本开启自动同步：\n\ncurl -sSL https://raw.githubusercontent.com/podcctv/iperf3-test-tools/main/setup-agent-autoupdate.sh | sudo bash\n\n启用后，当 Master 版本升级时，Agent 会自动检测并完成更新。\n\n故障排查\n\n常见问题速查表\n\n问题现象\t可能原因\t解决方法\n容器无法启动\t端口冲突或依赖服务未就绪\t执行 docker logs iperf3-test-tools-master-api-1 查看日志\nAgent 显示离线\t防火墙拦截 8000 端口\t执行 ufw allow 8000/tcp 并验证 curl <Agent-IP>:8000/health\niPerf3 测试失败\t62001 端口未开放\t在安全组中开放 TCP/UDP 62001 端口\n忘记面板密码\t初始密码未保存\t执行密码重置命令（见下方）\n\n密码重置命令\n\ndocker compose exec master-api python -m app.auth --set-password 'YourNewPassword' --force\n\n强制重建容器\n\ndocker compose down\ndocker compose up -d --build --force-recreate\n\n结语\n\niPerf3 分布式网络测试工具通过极简的部署流程和强大的可视化分析能力，为多机房网络性能管理提供了高效的解决方案。无论是日常的带宽监控、路由追踪分析，还是跨节点的网络质量对比，该工具都能满足您的需求。\n\n如有任何问题或建议，欢迎前往 GitHub 仓库 提交 Issue 或参与贡献！\n\n参考链接\n\nGitHub 仓库\n\n在线 API 文档：部署完成后访问 http://your-ip:9000/docs\n\n问题反馈","routePath":"/guide/iperf3-distributed-network-test-tool","lang":"zh","toc":[{"id":"项目简介","text":"项目简介","depth":2,"charIndex":0},{"id":"核心亮点","text":"核心亮点","depth":3,"charIndex":140},{"id":"系统架构","text":"系统架构","depth":2,"charIndex":464},{"id":"组件技术栈","text":"组件技术栈","depth":3,"charIndex":1363},{"id":"环境准备","text":"环境准备","depth":2,"charIndex":1553},{"id":"系统要求","text":"系统要求","depth":3,"charIndex":1583},{"id":"网络端口","text":"网络端口","depth":3,"charIndex":1734},{"id":"快速部署","text":"快速部署","depth":2,"charIndex":1864},{"id":"安装主控节点-master","text":"安装主控节点 (Master)","depth":3,"charIndex":1870},{"id":"安装代理节点-agent","text":"安装代理节点 (Agent)","depth":3,"charIndex":2253},{"id":"核心功能详解","text":"核心功能详解","depth":2,"charIndex":2588},{"id":"节点监控仪表盘","text":"节点监控仪表盘","depth":3,"charIndex":2596},{"id":"可视化路由追踪-metro-line","text":"可视化路由追踪 (Metro-line)","depth":3,"charIndex":2796},{"id":"定时任务调度","text":"定时任务调度","depth":3,"charIndex":3381},{"id":"telegram-智能通知","text":"Telegram 智能通知","depth":3,"charIndex":3521},{"id":"配置参考","text":"配置参考","depth":2,"charIndex":3615},{"id":"环境变量","text":"环境变量","depth":3,"charIndex":3621},{"id":"docker-compose-示例","text":"Docker Compose 示例","depth":3,"charIndex":3858},{"id":"api-接口一览","text":"API 接口一览","depth":2,"charIndex":4322},{"id":"核心接口","text":"核心接口","depth":3,"charIndex":4332},{"id":"路由追踪接口","text":"路由追踪接口","depth":3,"charIndex":4485},{"id":"telegram-配置接口","text":"Telegram 配置接口","depth":3,"charIndex":4607},{"id":"更新与维护","text":"更新与维护","depth":2,"charIndex":4809},{"id":"常规版本升级","text":"常规版本升级","depth":3,"charIndex":4816},{"id":"agent-自动更新","text":"Agent 自动更新","depth":3,"charIndex":4957},{"id":"故障排查","text":"故障排查","depth":2,"charIndex":5163},{"id":"常见问题速查表","text":"常见问题速查表","depth":3,"charIndex":5169},{"id":"密码重置命令","text":"密码重置命令","depth":3,"charIndex":5422},{"id":"强制重建容器","text":"强制重建容器","depth":3,"charIndex":5522},{"id":"结语","text":"结语","depth":2,"charIndex":5597},{"id":"参考链接","text":"参考链接","depth":2,"charIndex":5746}],"frontmatter":{"date":"2026-01-20 10:00 +8","updated":"2026-01-20 10:00 +8","version":"v1.5.0","description":"本文将详解如何部署 iPerf3 分布式网络测试工具。该方案采用 Master/Agent 架构，支持一键安装、现代化仪表盘、三网延迟监控、地铁图风格路由追踪及 Telegram 告警推送，是多节点网络性能管理的高效解决方案。","category":"network-diagnostics","sidebarTitle":"iPerf3 分布式网络测试","cardIcon":"Network","cardDescription":"部署多节点带宽、延迟和路由追踪监控平台","keywords":["iPerf3","分布式网络测试","网络监控","路由追踪","VPS 管理"]},"version":"","description":"本文将详解如何部署 iPerf3 分布式网络测试工具。该方案采用 Master/Agent 架构，支持一键安装、现代化仪表盘、三网延迟监控、地铁图风格路由追踪及 Telegram 告警推送，是多节点网络性能管理的高效解决方案。"},{"title":"PVE 安装切 KVM 虚拟机以及基于 NAT 实现独立双栈 IP","content":"本文由用户 灰机喵喵喵 撰写，并已加入 VPS.Town 优秀原创文章激励计划，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 格式审核，投稿内容真实性由原作者负责。\n\n准备\n\n大鸡一台\n\n一个人\n\n一双手\n\n一键盘\n\n安装 PVE\n\nDD 重装系统\n\n首先，进入 SSH，重装一下系统，这里使用 bin456789/reinstall 的 DD 重装脚本。\n\ncurl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh || wget -O ${_##*/} $_\nbash reinstall.sh debian 12 --password 这里填写你的root密码 --ssh-key \"这里填写你的ssh公钥ID (没有可不填)\"\n\n安装PVE8必须是Debian12，如果要装PVE9，则需要Debian13。\n\n安装基本包\n\napt update\napt install curl sudo wget -y\n\n安装 PVE\n\n使用oneclickvirt的install_pve.sh一键安装 PVE 脚本\n\ncurl -L https://raw.githubusercontent.com/oneclickvirt/pve/main/scripts/install_pve.sh -o install_pve.sh && chmod +x install_pve.sh && bash install_pve.sh\n\n安装直到显示以下对话：\n\nPlease execute reboot to reboot the system and then execute this script again\nPlease wait for at least 20 seconds without automatically rebooting the system before executing this script.\n请执行 reboot 重启系统后再次执行本脚本，再次使用SSH登录后请等待至少20秒未自动重启系统再执行本脚本\n\n如文本所示，这时候只需要reboot重启，然后再次连接等待 20s 后再执行一次脚本\n\nbash install_pve.sh\n\n然后会要求输入新主机名字：\n\nPlease enter a new host name (can only contain English letters and numbers, not pure numbers or special characters, enter the default pve):\n请输入新的主机名(只能包含英文字母和数字,不能是纯数字或特殊字符,回车默认为pve):\n\n不修改默认回车就好。\n然后等待安装完成。\n\n当显示如下信息则已经安装完成：\n\nRunning kernel: pve-manager/8.4.14/b502d23c55afcba1 (running kernel: 6.1.0-41-cloud-amd64)\n\nInstallation complete, please open HTTPS web page https://123.123.123.123:8006/\nThe username and password are the username and password used by the server (e.g. root and root user's password)\nIf the login is correct please do not rush to reboot the system, go to execute the commands of the pre-configured environment and then reboot the system\nIf there is a problem logging in the web side is not up(Referring to the page reporting an error, it keeps loading or is normal), wait 10 seconds and restart the system to see\n\n安装完毕，请打开HTTPS网页 https://123.123.123.123:8006/\n用户名、密码就是服务器所使用的用户名、密码(如root和root用户的密码)\n\n如果登录无误请不要急着重启系统，去执行预配置环境的命令后再重启系统\n如果登录有问题web端没起来(指的是网页报错，一直在加载还是正常的)，等待10秒后重启系统看看\n\n这时候就去访问信息中的链接地址就可以访问到 PVE 后台了，用户名是root，密码则是你ssh的root密码。\n\n配置 PVE 宿主机的网络\n\n[!警告]\n确定能够进入 PVE 之后，再进行此操作。\n\n使用一键脚本进行配置：\n\nbash <(wget -qO- --no-check-certificate https://raw.githubusercontent.com/oneclickvirt/pve/main/scripts/build_nat_network.sh)\n\n然后就会自动创建brige网络接口。\nvmbr0负责 v4 的独立 IP，vmbr1负责复杂 v4/v6 的 NAT，vmbr2负责 v6 的独立 IP\n\n如果宿主机自带的IPV6是/64的，就不会有vmbr2。\n\n因为有一些杜甫是直接给多个IPV6的/64子段（VPS.Town 的 A4 就是），这时候就直接用vmbr0去分即可。\n\n分 KVM 虚拟机\n\n首先，先下镜像，这里直接用 Debian 的官方镜像，传送门\n这里使用debian-12-genericcloud-amd64.qcow2作为小鸡的系统。\n先下载到 PVE 上：\n\nwget https://cdimage.debian.org/cdimage/cloud/bookworm/latest/debian-12-genericcloud-amd64.qcow2\n\n接下来去创建虚拟机，填写虚拟机名称，然后操作系统选择不使用任何介质：\n\n系统默认即可\n\n磁盘 删除掉默认的硬盘，不需要添加硬盘：\n\nCPU根据需要选择，类别如需要高性能可选择host否则默认即可：\n\n内存根据需要给就行：\n\n网络如果有多个独立 IPV4 选择vmbr0，如果使用 NAT，选择vmbr1：\n\n防火墙需要关闭，不然 KVM 虚拟机可能会无法访问公网。如需开启防火墙需要去主机防火墙放行in 来源 IP 内网网段规则。\n\n然后创建即可。\n\n然后进入 PVE 控制台，将镜像导入到该虚拟机中：\n\nqm disk import 100 debian-12-genericcloud-amd64.qcow2 local --format qcow2\n\n100是虚拟机 ID debian-12-genericcloud-amd64.qcow2是镜像 local是本地存储\n\n导入之后，进入虚拟机的硬件，找到未使用的硬盘0，双击或者点编辑，然后添加硬盘，总线/设备可选VirtIO Block：\n\n\n然后再选择硬盘，然后点击磁盘操作-调整大小，输入要增大硬盘的大小：\n\n\n然后再点选项，双击引导顺序，将virtio0硬盘启用，然后拉到第一位：\n\n\n再回到硬件，点击添加，选择Cloudinit 设备，然后添加：\n\n\n然后点击Cloud-Init，然后可以设置用户、密码、SSH公钥、DNS服务器、IP设置\n按需设置，这里还需要讲清楚IP设置，NAT4 需要为虚拟机设置固定的内网 IP：\n\n这里因为我要给虚拟机设置独立 IPV6，就不需要设置 NAT6 了，如果需要设置 NAT6，就给它设置 NAT 的子网段，例如：\n\n然后再回到硬件，添加串行接口：\n\n\n然后选中显示，显卡换成串行终端 0：\n\n\n然后就可以正常开机，享受刚切的小鸡鸡了。\n\n给 KVM 虚拟机添加独立 IPV6\n\n在虚拟机硬件中点击添加网络设备：\n\n桥接选择宿主机的vmbr0或者vmbr2，具体看宿主机的 IPV6 分配情况。\n\n然后回到Cloud-Init中，编辑IP配置(net1)，设置静态的 IPV6：\n\n\n进入虚拟机，使用ip.sb测试 IPV4 和 IPV6 是否正常：\n\ncurl ip.sb -4\ncurl ip.sb -6\n\n开启 ROOT 密码登录\n\n进入虚拟机的控制台，然后输入用户名和密码进行登录\n\n编辑/etc/ssh/sshd_config文件\n\nnano /etc/ssh/sshd_config\n\n找到PermitRootLogin和PasswordAuthentication，去掉注释改成：\n\nPermitRootLogin yes\nPasswordAuthentication yes\n\n然后按Ctrl+X，按 Y 确认然后回车保存，然后再重启 ssh 服务：\n\nsystemctl restart sshd\n\nNAT 端口转发\n\n使用iptables宿主机上的端口转发到虚拟机的端口上\n\niptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 10000 -j DNAT --to-destination 172.16.1.2:22\n\ndport 宿主机端口 to-destination 虚拟机地址端口\n\n永久保存方法：\n编辑/etc/network/interfaces\n在iface vmbr1 inet static后面添加上\n\npost-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 10000 -j DNAT --to-destination 172.16.1.2:22\npost-dodwn iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 10000 -j DNAT --to-destination 172.16.1.2:22\n\n保存即可，然后重启网络：\n\nsystemctl restart networking","routePath":"/guide/proxmox-pve-installation-kvm-vm-setup-nat-and-dualstack-ipv4-ipv6","lang":"zh","toc":[{"id":"准备","text":"准备","depth":2,"charIndex":105},{"id":"安装-pve","text":"安装 PVE","depth":2,"charIndex":130},{"id":"dd-重装系统","text":"DD 重装系统","depth":3,"charIndex":138},{"id":"安装基本包","text":"安装基本包","depth":3,"charIndex":432},{"id":"安装-pve-1","text":"安装 PVE","depth":3,"charIndex":481},{"id":"配置-pve-宿主机的网络","text":"配置 PVE 宿主机的网络","depth":3,"charIndex":2088},{"id":"分-kvm-虚拟机","text":"分 KVM 虚拟机","depth":2,"charIndex":2441},{"id":"给-kvm-虚拟机添加独立-ipv6","text":"给 KVM 虚拟机添加独立 IPV6","depth":2,"charIndex":3415},{"id":"开启-root-密码登录","text":"开启 ROOT 密码登录","depth":2,"charIndex":3601},{"id":"nat-端口转发","text":"NAT 端口转发","depth":2,"charIndex":3854}],"frontmatter":{"date":"2025-12-08 04:45 +8","updated":"2026-01-06 21:13 +8","version":"v0.0.1","description":"从零搭建 PVE 虚拟化环境：用 DD 脚本重装 Debian 12，一键部署 PVE 并配置 NAT 或独立 IP 网络，讲解 KVM 虚拟机创建、Cloud-Init 初始化、独立 IPv6 设置与端口转发。","category":"virtualization","sidebarTitle":"PVE 切 KVM 与 NAT 双栈","cardIcon":"Server","cardDescription":"用 PVE 切分 KVM 虚拟机，并基于 NAT 配置独立双栈 IP","author":"灰机喵喵喵","banner":"/assets/images/proxmox-pve-installation-kvm-vm-setup-nat-and-dualstack-ipv4-ipv6/banner.jpg?v2","keywords":["PVE","NAT","KVM","虚拟化"]},"version":"","description":"从零搭建 PVE 虚拟化环境：用 DD 脚本重装 Debian 12，一键部署 PVE 并配置 NAT 或独立 IP 网络，讲解 KVM 虚拟机创建、Cloud-Init 初始化、独立 IPv6 设置与端口转发。"},{"title":"使用 Squashfs 进行服务器数据备份——从为什么，到怎么做","content":"本文由用户 abc1763613206 撰写，并已加入 VPS.Town 优秀原创文章激励计划，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 格式审核，投稿内容真实性由原作者负责。\n\n数据无价。 在现代服务器运维中，数据备份是每一位用户的必修课。如果服务器上承载着不可复现的珍贵数据，那么即便只有万分之一的可能，您也必须为天灾、人祸、乃至「物理上云」的最坏情况做好准备。\n\n而无论是执行备份还是服务迁移，选择一种高效的归档格式都至关重要。与使用 rsync 等工具处理海量的零散文件相比，单个归档文件在管理和传输上显然更为便捷高效。\n本文将详细介绍如何使用 Squashfs 工具，来实现服务器数据的高效归档与备份。\n\n为什么选择 Squashfs？\n\nSquashfs 可能对于 Linux 高手来说已经并不陌生，但是对于大多数平常在用 Windows 的用户而言，当提到压缩与归档格式的时候，第一反应往往是 zip、7z 或者 zip 这一类常见格式。因此在正式开工之前，请允许我使用比较大的篇幅来介绍一下，我们为什么要选择 Squashfs 格式。\n\n我们首先理清一下我们的需求：\n\n我们想要对服务器的数据进行备份，而且在我们需要的时候原样恢复回去。\n\n我们希望备份文件尽可能小，以节省存储空间和传输时间。\n\n我们希望备份和恢复的过程尽可能简单高效。\n\n虽然对于备份数据而言一般都是冷备份（除非真的发生故障，否则一般都不会去访问），但有时又想从里面拿出一点东西来用。\n\n如果你认为如上需求和你的备份理念相符，那么恭喜你 —— Squashfs 很可能是一个非常适合你的选择。\n\nSquashfs 是一款专为 Linux 设计，随 Linux 而生的只读压缩文件系统。它于 Linux 2.6.29 内核中被正式引入主线，并在 Linux 4.14 之后进一步完善成现在的样子。现在这个格式已经被广泛应用于各种 Linux 发行版的 Live CD、嵌入式系统（如 OpenWrt）以及容器镜像中。\nSquashfs 之所以适合备份，有以下几个原因：\n\n高压缩比：Squashfs 支持 Gzip、LZMA、LZO、LZ4、XZ 和 Zstd 等多种压缩算法，可以根据需求选择合适的压缩方式，从而在压缩率和速度之间取得平衡。除此之外，Squashfs 块级压缩的特性还方便了重复数据的去重，从而进一步提升压缩效果。\n\n只读特性：作为只读文件系统（可以通过 OverlayFS 等方式来实现读写，但是对于备份数据而言超纲了），Squashfs 可以保证备份数据的一致性。而且尤其需要强调的是，Squashfs 能够做到在创建归档文件的同时完整保留文件的元数据（包括权限、时间戳、符号链接等），最大限度保持原样，这对于服务器数据的备份和恢复尤为重要。\n\n随机访问：Squashfs 支持通过 mount 挂载的方式直接随机访问文件，这意味着即使在一个大型的归档文件中，也可以快速定位并提取单个文件，而不需要解压整个归档。\n\n支持广泛：作为随 Linux 内核成长的文件系统，Squashfs 在 Linux 中能够做到不额外安装任何软件即可通过内核挂载读取数据，而在 Windows 等平台上，你也可以通过第三方工具（如 7-Zip 及其衍生）来访问 Squashfs 文件。\n\n接下来我们将 Squashfs 与常见的归档格式进行对比：\n\ntar 和他的动物朋友们：tar 本身属于流式归档，并不具备压缩功能。通常需要配合 gzip、bzip2、xz 等压缩工具使用。但是压缩后的文件格式不支持随机访问，需要解压整个归档才能访问其中的文件。\n\n7z / zip / rar：这三个都是 Windows 上非常流行的压缩格式，但是和 POSIX 系统下的 Linux 生态相比，显得相当水土不服——这些格式都无法完整保留 Linux 文件的元数据（尤其是权限和链接），这对于服务器核心数据的备份来说是不可接受的。此外，可以认为这些格式的随机访问能力和他们的数据去重能力不可兼得：标准 ZIP 格式不支持数据去重，而 7z 和 RAR 格式启用了固实压缩后就失去了随机访问能力。\n\n创建归档\n\n虽然 Squashfs 可以在现代 Linux 内核中直接挂载使用，但是创建 Squashfs 归档文件则需要借助 mksquashfs 工具。这个工具通常包含在 squashfs-tools 软件包中，可以通过包管理器安装：\n\nsudo apt update && sudo apt install squashfs-tools\n\nmksquashfs 的基本用法非常简单，你如果想快速创建一个 Squashfs 归档文件，只需要指定源目录和目标文件名即可：\n\n# 备份 /etc 目录到 etc.squashfs\nmksquashfs /etc etc.squashfs\n\n通过查看 manpage ，我们可以知道：在 Debian 13 中如果不加任何参数，mksquashfs 会使用 gzip 进行 9 级压缩，默认分块大小为 128KB，并且保留所有文件扩展元数据。\n\n在归档完成后，mksquashfs 会输出一大串信息，详细给出包括重复文件数、符号链接与硬连接数、块大小、乃至 uid 和 gid 个数等信息，十分详细：\n\n而对于这里的冷备份需求，我们可以牺牲一点时间来换取更高的压缩比，你可以在如上的 manpage 中找到更多可选参数（注意对于一些老 Linux 版本，通常不支持使用一些比较新的压缩算法）。\n通常而言，对于归档需求，我会建议换成比 gzip 压缩表现更好的 zstd 算法，把压缩比拉到最高的 22，然后把块大小调大到 mksquashfs 支持的最大值 1M（压缩表现更好，但是会牺牲一些随机读取性能），同时显性要求保留元数据，反映在命令上就是这样：\n\nmksquashfs /etc etc.squashfs -xattrs -comp zstd -Xcompression-level 22 -b 1M\n\n特别的，如果你想要排除掉目录里的某些文件或子目录，可以使用 -e 参数指定排除列表。例如，下面的命令会排除 /etc 目录下的 shadow 和 passwd 文件：\n\nmksquashfs /etc etc.squashfs -xattrs -comp zstd -Xcompression-level 22 -b 1M -e shadow passwd\n\n解压与管理归档\n\n创建好的 Squashfs 归档文件可以通过多种方式进行解压和管理。如果你只是想要对归档文件进行管理，最常见的方法是使用 unsquashfs 工具，它同样包含在 squashfs-tools 软件包中。\n\n你同样可以在 manpage 中找到 unsquashfs 的使用说明，如下仅介绍一些常见的用法：\n\n列出归档内容（不解压）\n\n使用 -l (list) 选项：\n\nunsquashfs -l etc.squashfs\n\n它会像 ls -R 命令一样，递归地列出镜像中的所有文件、权限和目录结构。\n\n如果你想像 ls -lR 一样显示文件权限与所有者，请使用 -ll 选项：\n\n你可以在后面追加路径参数，来限制只列出某个子目录下的内容，例如：\n\nunsquashfs -ll etc.squashfs alternatives/\n\n解压归档内容\n\n使用 -d (destination) 选项指定解压目录：\n\nmkdir ./etc_backup\nunsquashfs -d ./etc_backup etc.squashfs\n\n你也可以只解压归档中的某个子目录或文件，例如：\n\nunsquashfs -d ./alternatives_backup etc.squashfs alternatives/\n\n直接挂载\n\n解压并不是 SquashFS 的主要用法。它真正的强大之处在于直接挂载，无需解压即可访问。\n你可以使用 mount 命令将 Squashfs 归档文件挂载到一个目录中：\n\nmkdir /mnt/etc\nsudo mount -o loop etc.squashfs /mnt/etc\n\n现在，你可以像访问普通目录一样访问里面的文件，但所有文件都是只读的：\n\n在你完成访问后，记得卸载挂载点：\n\nsudo umount /mnt/etc\n\n在其他系统上访问\n\n如上所述，你可以使用 7-Zip 等第三方工具在 Windows 上访问 Squashfs 文件。他可能并没有被加入默认文件关联中，所以你需要手动打开 7-Zip，然后通过它的界面打开 Squashfs 文件进行浏览和提取。在此不再赘述。","routePath":"/guide/squashfs-server-backup-guide","lang":"zh","toc":[{"id":"为什么选择-squashfs","text":"为什么选择 Squashfs？","depth":2,"charIndex":331},{"id":"创建归档","text":"创建归档","depth":2,"charIndex":1761},{"id":"解压与管理归档","text":"解压与管理归档","depth":2,"charIndex":2722},{"id":"列出归档内容不解压","text":"列出归档内容（不解压）","depth":3,"charIndex":2886},{"id":"解压归档内容","text":"解压归档内容","depth":3,"charIndex":3100},{"id":"直接挂载","text":"直接挂载","depth":3,"charIndex":3288},{"id":"在其他系统上访问","text":"在其他系统上访问","depth":3,"charIndex":3513}],"frontmatter":{"date":"2025-11-03 23:00 +8","updated":"2025-11-05 19:55 +8","version":"v0.0.1","description":"本文对比 tar、zip 等格式，说明 Squashfs 兼具高压缩比、元数据完整保留与随机访问的优势，并介绍用 mksquashfs 创建归档、用 unsquashfs 列出和解压内容，以及直接挂载访问备份的方法。","category":"system-security","sidebarTitle":"Squashfs 数据备份","cardIcon":"Archive","cardDescription":"使用 Squashfs 高效归档与备份服务器数据","author":"abc1763613206","banner":"/assets/images/squashfs-server-backup-guide/image-20251104010611062.png?v2","keywords":["Squashfs","服务器","备份"]},"version":"","description":"本文对比 tar、zip 等格式，说明 Squashfs 兼具高压缩比、元数据完整保留与随机访问的优势，并介绍用 mksquashfs 创建归档、用 unsquashfs 列出和解压内容，以及直接挂载访问备份的方法。"},{"title":"在 VPS.Town 的 Debian 12 上安装 PVE（Proxmox VE）教程","content":"本文由用户 赛博丁真 撰写，并已加入 VPS.Town 优秀原创文章激励计划，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 格式审核，投稿内容真实性由原作者负责。\n\n前言\n\nProxmox VE（简称 PVE）是一款基于 Debian 的开源虚拟化平台，支持 KVM（完整虚拟化）和 LXC（容器化），并带有友好的 Web 管理界面。把一台 Debian 12 主机转成 PVE 节点的典型做法是：添加 Proxmox 的软件源、安装 PVE 软件包与专用内核、移除冲突的内核并重启。下面按步骤展开，逐条解释每一步的目的与常见问题。\n\n环境与准备（建议先读）\n\n推荐环境：VPS.Town A3 系列（示例），但方法对其他云厂商的 Debian 12 通常也适用。\n\n最低要求（建议更高）：1 核 CPU / 2GB RAM / 可用 IPv4 地址 / SSD 系统盘。\n\n强烈建议：在开始前做好重要数据备份。\n\nwhy pve\n\n1. pve 作为虚拟化平台\n\n🖥️ pve 支持KVM 虚拟机和LXC 容器，可以同时跑完整系统和轻量应用环境。\n\n2. Web 管理界面\n\n🌐 pve 自带超好用的网页管理面板，可一键创建、监控和管理 VM 和容器。\n\n3. 开源 & 免费\n\n🆓 pve 基础功能完全开源免费，用起来放心。\n\n前置准备\n\n使用 dd 脚本对系统进行 dd，使用默认系统会导致安装 pve 后出现网卡丢失机子失联的情况，注意 dd 系统会导致数据丢失，请提前备份数据。\n\nwget --no-check-certificate -qO InstallNET.sh 'https://raw.githubusercontent.com/leitbogioro/Tools/master/Linux_reinstall/InstallNET.sh' && chmod a+x InstallNET.sh\n\nbash InstallNET.sh -debian 12 -port 22 -pwd yourspassword #请将yourspassword改为你自己的root密码\n\n1.修改 vps 主机名\n\nPVE 对主机名和主机名解析比较敏感，建议设置一个短且固定的主机名（如 pve01）。\n\nsudo hostnamectl set-hostname pve01\n\n2.将主机名写入 host\n\nPVE 在启动和一些管理功能中，会检查主机名对应的 IP。如果主机名只解析为回环地址（127.0.0.1），会导致服务间通信或面板登录出现问题。\n\n因此把主机名和真实 IP 映射写进 /etc/hosts 能保证本机解析正确。\n\necho \"154.19.1.0 pve01\" | sudo tee -a /etc/hosts\n#其中154.19.1.0改为你自己vps的ip，注意不能是127.0.0.1\n\n3.检测主机名解析生效\n\n如果返回 127.0.0.1 或 127.0.1.1，说明解析没有正确设置，需要检查 /etc/hosts。\n\nhostname --ip-address\n\n返回结果\n\n注意该结果不能为回环 ip 127.0.0.1\n\n4.添加 pve 仓库以及密钥并更新软件包\n\n# 添加 pve 仓库（针对 bookworm / Debian 12）\necho \"deb [arch=amd64] http://download.proxmox.com/debian/pve bookworm pve-no-subscription\" > /etc/apt/sources.list.d/pve-install-repo.list\n\n# 下载并安装 Proxmox 的 GPG 公钥\nwget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg\n\n# 更新并升级当前包\napt update && apt full-upgrade -y\n\n5.安装 pve 内核并重启\n\nProxmox 使用定制的内核（包含 KVM、ZFS、网络相关的补丁与模块），安装 proxmox-default-kernel 会将系统引导到适配 PVE 的内核上。\n\napt install proxmox-default-kernel -y\n\nsystemctl reboot\n\n6.安装 pve 软件包\n\napt install proxmox-ve postfix open-iscsi chrony -y\n\n安装过程中系统可能提示设置 postfix，默认选择 Internet Site 并填写主机名通常是可行的（按 Tab 选择 OK 并回车）。\n\n7.移除原本的 debian 内核\n\n为了避免 pve 升级时旧内核与 Proxmox 内核冲突或引导时选择错误内核，建议移除原生 Debian 内核包。\n\napt remove linux-image-amd64 'linux-image-6.1*' -y\n\n8.最后再升级并检查 grub2 并重启一次\n\nupdate-grub 会重新生成 GRUB 引导配置，确保默认引导项为 Proxmox 内核。\n\nupdate-grub && reboot\n\n9.然后就可以进入后台了\n\n登录凭据：\n\n用户名：root\n\n密码：你在系统中设置的 root 密码\n\n默认使用 HTTPS（端口 8006），浏览器可能提示自签名证书警告，可先接受例外进入界面。\n\nhttps://your-ip:8006","routePath":"/guide/tutorial-for-installing-pve-proxmox-ve-on-debian-12-in-vps-town","lang":"zh","toc":[{"id":"前言","text":"前言","depth":2,"charIndex":104},{"id":"环境与准备建议先读","text":"环境与准备（建议先读）","depth":2,"charIndex":289},{"id":"why-pve","text":"why pve","depth":2,"charIndex":429},{"id":"前置准备","text":"前置准备","depth":2,"charIndex":590},{"id":"使用-dd-脚本对系统进行-dd使用默认系统会导致安装-pve-后出现网卡丢失机子失联的情况注意-dd-系统会导致数据丢失请提前备份数据","text":"使用 dd 脚本对系统进行 dd，使用默认系统会导致安装 pve 后出现网卡丢失机子失联的情况，注意 dd 系统会导致数据丢失，请提前备份数据。","depth":3,"charIndex":596},{"id":"1修改-vps-主机名","text":"1.修改 vps 主机名","depth":2,"charIndex":923},{"id":"2将主机名写入-host","text":"2.将主机名写入 host","depth":2,"charIndex":1019},{"id":"3检测主机名解析生效","text":"3.检测主机名解析生效","depth":2,"charIndex":1239},{"id":"4添加-pve-仓库以及密钥并更新软件包","text":"4.添加 pve 仓库以及密钥并更新软件包","depth":2,"charIndex":1362},{"id":"5安装-pve-内核并重启","text":"5.安装 pve 内核并重启","depth":2,"charIndex":1762},{"id":"6安装-pve-软件包","text":"6.安装 pve 软件包","depth":2,"charIndex":1921},{"id":"7移除原本的-debian-内核","text":"7.移除原本的 debian 内核","depth":2,"charIndex":2061},{"id":"8最后再升级并检查-grub2-并重启一次","text":"8.最后再升级并检查 grub2 并重启一次","depth":2,"charIndex":2192},{"id":"9然后就可以进入后台了","text":"9.然后就可以进入后台了","depth":2,"charIndex":2289}],"frontmatter":{"date":"2025-09-3 9:30 +8","version":"v0.0.1","description":"本文逐步说明如何在 VPS.Town 的 Debian 12 环境上安装 Proxmox VE（PVE），包含每步的命令、原因与常见故障排查，适合想简便安装PVE的用户。","category":"virtualization","sidebarTitle":"在 Debian 12 上安装 PVE","cardIcon":"Server","cardDescription":"在 Debian 12 上安装 Proxmox VE 并完成基础配置","author":"赛博丁真","banner":"/assets/images/tutorial-for-installing-pve-proxmox-ve-on-debian-12-in-vps-town/banner.jpg","keywords":["Proxmox","Debian 12","VPS.Town","PVE"]},"version":"","description":"本文逐步说明如何在 VPS.Town 的 Debian 12 环境上安装 Proxmox VE（PVE），包含每步的命令、原因与常见故障排查，适合想简便安装PVE的用户。"},{"title":"VPS.Town 服务器新手入门保姆级教程","content":"本文由用户 biebiele 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 现金 25 元 奖励。\n\n1. 网站管理界面\n\n1.1 已开通产品列表\n\n购买产品之后，可在个人中心-已开通产品内看到购买的服务器。如下图：\n\n在已开通产品列表中，您可以：\n\n查看所有已购买的服务器\n\n查看每个服务器的基本信息（如服务器名称、状态等）\n\n通过操作按钮进入具体服务器的管理界面\n\n建议定期检查服务器状态，确保服务正常运行。\n\n1.2 服务器列表界面\n\n点击进入管理界面，其中有 IP 信息、管理，如下图：\n\n在服务器列表界面中，您可以：\n\n查看服务器的 IP 地址信息（点击后可看到具体的 IPv6 地址）\n\n查看服务器的运行状态\n\n进行服务器的基本操作（如重启、关机等）\n\n查看服务器的配置信息\n\n进行服务器重启或关机操作前，请确保已保存所有重要数据。\n\n1.3 服务器详情界面\n\n点击操作按钮，进入具体服务器管理页面，如下图，主要有以下关键信息：\n\n在服务器详情界面中，您可以：\n\n查看服务器的详细配置信息\n\n进行服务器的各项管理操作\n\n查看服务器的使用统计信息\n\n管理服务器的安全组设置\n\n查看服务器的监控信息\n\n2. 远程连接服务器\n\n初始安装时，默认是支持使用用户名、密码的 SSH 连接，以下以 Putty 工具为例：\n\n2.1 下载 Putty\n\n您可以在 官方网站 下载 Putty 的客户端。点此直接下载 Windows 64 位版\n\n2.2 添加新主机并配置信息\n\n2.2.1 配置地址和端口\n\n在 session 页填写服务器IP 地址、端口\n\n2.2.2 连接实例\n\n点击 Open 按钮连接到实例。如果是第一次连接到实例，可能会看到对于密钥的验证信息。点击 Accept 按钮确认连接即可。连接成功后，会提示你输入用户名、密码，校验成功后进入控制台。即可开始 linux 管理。\n\n本文档适用于 Ubuntu 22.04 系统，其他 Linux 发行版可能需要适当调整命令。\n\n3.（可选项）是否网络重装操作系统\n\n这是一个可选步骤，仅在您需要更换默认操作系统时使用。\n\n使用 dd 脚本 重装操作系统。\n\n下载 dd 脚本到本地\n\n# 使用 curl 或 wget 下载 reinstall.sh 脚本\n# -O: 将下载的文件保存为指定名称\ncurl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh || wget -O reinstall.sh $_\n\n选择要重装的操作系统\n\n以下示例为重装为 Ubuntu 22.04 最小化版本：\n\n# 执行重装脚本\n# ubuntu: 目标操作系统\n# 22.04: 版本号\n# --minimal: 最小化安装，只安装基本系统\nbash reinstall.sh ubuntu 22.04 --minimal\n\n执行后，会提示输入重装后的密码，命令执行完成后，输入 reboot 重启操作系统，等待约 5-10 分钟后，使用 SSH 工具重新连接服务器。\n\nbash reinstall.sh anolis      7|8|23\n                  opencloudos 8|9|23\n                  rocky       8|9\n                  redhat      8|9   --img=\"http://xxx.com/xxx.qcow2\"\n                  oracle      8|9\n                  almalinux   8|9\n                  centos      9|10\n                  fedora      40|41\n                  nixos       24.11\n                  debian      9|10|11|12\n                  opensuse    15.6|tumbleweed\n                  alpine      3.18|3.19|3.20|3.21\n                  openeuler   20.03|22.03|24.03|25.03\n                  ubuntu      16.04|18.04|20.04|22.04|24.04|24.10 [--minimal]\n                  kali\n                  arch\n                  gentoo\n                  aosc\n                  fnos\n\n4. 修改密码\n\n请确保使用强密码，并妥善保管。\n\n# 切换到 root 用户\nsudo -i\n\n# 修改 root 用户密码\n# root:<password>: 设置 root 用户的密码\n# chpasswd: 批量修改用户密码的命令\necho root:<password> |sudo chpasswd root\n\n5. 优化 SSH 配置\n\n以下配置将优化 SSH 连接的安全性和性能。\n\n# 配置系统更新后自动重启\nsudo sed -i \"s/^#\\?\\$nrconf{restart}.*/\\$nrconf{restart} = \\'a\\';/g\" /etc/needrestart/needrestart.conf;\n\n# 删除可能冲突的 SSH 配置文件\nrm -rf /etc/ssh/sshd_config.d/*.conf\n\n# 修改 SSH 配置\nsudo sed -i 's/^#\\?PermitRootLogin.*/PermitRootLogin yes/g' /etc/ssh/sshd_config;  # 启用 root 登录\nsudo sed -i 's/^#\\?Port.*/Port 3022/g' /etc/ssh/sshd_config;                     # 修改默认端口为 3022\nsudo sed -i 's/^#\\?PasswordAuthentication.*/PasswordAuthentication yes/g' /etc/ssh/sshd_config;  # 启用密码认证\nsudo sed -i 's/^#\\?UseDNS.*/UseDNS no/g' /etc/ssh/sshd_config;                   # 禁用 DNS 反向解析\nsudo sed -i 's/^#\\?GSSAPIAuthentication.*/GSSAPIAuthentication no/g' /etc/ssh/sshd_config;  # 禁用 GSSAPI 认证\nsudo sed -i 's/^#\\?ClientAliveInterval.*/ClientAliveInterval 60/g' /etc/ssh/sshd_config;    # 设置客户端活动检测间隔\nsudo sed -i 's/^#\\?ClientAliveCountMax.*/ClientAliveCountMax 10/g' /etc/ssh/sshd_config;    # 设置客户端活动检测最大次数\nsudo sed -i 's/^#\\?X11Forwarding.*/X11Forwarding no/g' /etc/ssh/sshd_config;                # 禁用 X11 转发\n\n# 修改 systemd socket 配置\nsudo sed -i 's/^#\\?ListenStream.*/ListenStream=3022/g' /usr/lib/systemd/system/ssh.socket;\n\n# 重启 SSH 服务\nservice sshd restart\nsystemctl daemon-reload\nsystemctl restart ssh.socket\n\n6. 优化内核参数\n\n以下配置将优化网络性能和连接稳定性。\n\ntee -a /etc/sysctl.conf << EOF\nnet.core.default_qdisc=fq\nnet.ipv4.tcp_congestion_control=bbr\nnet.ipv4.tcp_available_congestion_control=cubic bbr\nnet.ipv4.tcp_fastopen=3\nnet.ipv4.tcp_keepalive_time=600\nnet.ipv4.tcp_keepalive_intvl=30\nnet.ipv4.tcp_keepalive_probes=5\nnet.ipv4.tcp_rmem=8192 262144 536870912\nnet.ipv4.tcp_wmem=4096 16384 536870912\nEOF\n\n# 应用配置\nsysctl -p\n\n7. 安装常用软件\n\n# 设置时区\nsudo timedatectl set-timezone Asia/Shanghai\n\n# 更新软件包列表并安装常用工具\napt update\napt install wget net-tools telnet fail2ban cron zip -y\n\n8. 防火墙配置\n\n配置防火墙前请确保已保存当前 SSH 连接，避免配置错误导致无法连接。\n\n# 安装防火墙工具\nsudo apt-get install iptables-persistent\n\n# 配置防火墙持久化，防止重启后失效\nsudo echo -e \"# CLOUD_IMG: This file was created/modified by the Cloud Image build process\\nIPTABLES_RESTORE_NOFLUSH=no\\nIP6TABLES_RESTORE_NOFLUSH=no\" > /etc/default/netfilter-persistent\nsudo iptables-save | awk '{if($1==\"COMMIT\"){delete x}}$1==\"-A\"?!x[$0]++:1' | sudo iptables-restore\nsudo netfilter-persistent save\nsudo netfilter-persistent reload\n\n# 清除现有规则\nsudo iptables -P INPUT DROP\nsudo iptables -P FORWARD DROP\nsudo iptables -P OUTPUT ACCEPT\nsudo iptables -F\nsudo iptables -X\nsudo iptables -Z\n\n# 配置基本规则\nsudo iptables -A INPUT -i lo -j ACCEPT\nsudo iptables -A OUTPUT -o lo -j ACCEPT\nsudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT\n\n# 开放必要端口\nsudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT\nsudo iptables -A INPUT -p udp --dport 22 -j ACCEPT\nsudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT\nsudo iptables -A INPUT -p udp --dport 80 -j ACCEPT\nsudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT\nsudo iptables -A INPUT -p udp --dport 443 -j ACCEPT\nsudo iptables -A INPUT -p tcp --dport 8001:9999 -j ACCEPT\nsudo iptables -A INPUT -p udp --dport 8001:9999 -j ACCEPT\nsudo iptables -A INPUT -p tcp --dport 3022 -j ACCEPT\nsudo iptables -A INPUT -p udp --dport 3022 -j ACCEPT\nsudo iptables -A INPUT -p tcp --dport 5700 -j ACCEPT\nsudo iptables -A INPUT -p udp --dport 5700 -j ACCEPT\nsudo iptables -A INPUT -p tcp --dport 7000 -j ACCEPT\nsudo iptables -A INPUT -p udp --dport 7000 -j ACCEPT\n\n# 允许 ICMP (ping)\nsudo iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT\nsudo iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT\n\n# 配置端口转发\niptables -t nat -A PREROUTING -p udp --dport 8001:9999 -j REDIRECT --to-ports 443\niptables -t nat -L PREROUTING -v -n\n\n# 保存并应用配置\nsudo iptables -L -v -n\nsudo netfilter-persistent save\nservice iptables restart\n\n9. 增加历史执行命令记录\n\n此配置将记录所有执行过的命令，方便后续查看和审计。\n\nsudo bash -c 'cat >> /etc/profile <<EOF\n# 配置历史记录的时间格式\nexport HISTTIMEFORMAT=\"%Y-%m-%d %H:%M:%S \"\n\n# 设置保存历史记录的文件路径\nHISTORY_FILE=\"\\$HOME/command_history.log\"\n\n# 自定义命令日志函数\nlog_command() {\n    local HISTFILE_PATH=\\$HISTFILE\n    local HIST_ENTRY_NUMBER=\\$1\n    local HIST_ENTRY=\"\\$(history \\$HIST_ENTRY_NUMBER | tail -n 1)\"\n    local CURRENT_USER=\\$(whoami)\n    local LOG_ENTRY=\"[USER: \\$CURRENT_USER] \\$HIST_ENTRY\"\n\n    echo \"\\$LOG_ENTRY\" >> \\$HISTORY_FILE\n}\n\n# 在每个命令之后，将命令追加到自定义的日志文件中，同时同步到 HISTFILE\nPROMPT_COMMAND=\"history -a; log_command 1\"\nulimit -SHn 1000000\nEOF'\n\n# 应用配置\nsource /etc/profile\n\n10. 可选配置\n\n10.1 禁用检测更新\n\n此配置适用于不需要自动更新的环境。\n\nsudo bash -c 'cat > /etc/apt/apt.conf.d/10periodic <<EOF\nAPT::Periodic::Update-Package-Lists \"0\";\nAPT::Periodic::Download-Upgradeable-Packages \"0\";\nAPT::Periodic::AutocleanInterval \"0\";\nEOF'\n\nsudo bash -c 'cat > /etc/apt/apt.conf.d/20auto-upgrades <<EOF\nAPT::Periodic::Update-Package-Lists \"0\";\nAPT::Periodic::Unattended-Upgrade \"0\";\nEOF'\n\n10.2 登录提示文字优化\n\n此配置将优化登录时的提示信息显示。\n\nsudo sed -i 's/^#\\?ENABLED=.*/ENABLED=0/g' /etc/default/motd-news;\ntouch /var/lib/ubuntu-advantage/hide-esm-in-motd\ntouch /var/lib/update-notifier/hide-esm-in-motd\nrm -rf /var/lib/update-notifier/updates-available\nchmod -x /etc/update-motd.d/90-updates-available\nsudo rm /var/lib/ubuntu-release-upgrader/release-upgrade-available\nsudo sed -i 's/^#\\?Prompt.*/Prompt=never/g' /etc/update-manager/release-upgrades;\n\n10.3 安装 fail2ban，保护您的服务器\n\napt update\napt install wget net-tools telnet -y\napt install fail2ban -y\n\n配置规则\n\ncat > /etc/fail2ban/jail.local <<EOF\n# 默认规则\n[DEFAULT]\n# 白名单,不受规则限制，以下规则为每60秒错误2次，永久封禁，限制访问所有端口\nignoreip = 127.0.0.1/8 ::1 223.104.0.0/16\nfindtime = 60s\nmaxretry = 2\nbantime = -1\naction = iptables-allports\n\n# sshd拦截规则，注意端口填写，默认为22\n[sshd]\nenabled  = true\nport    = 22\nlogpath = /var/log/auth.log\n\nEOF\n\n重启服务\n\nsystemctl restart fail2ban\nsystemctl enable fail2ban\nsystemctl status fail2ban\n\n常用命令\n\n# 查看fail2ban状态\nfail2ban-client status\n\n# 查看sshd jail状态\nfail2ban-client status sshd\n\n# 解封IP\nfail2ban-client set sshd unbanip IP地址\n\n# 查看被封禁的IP列表\nfail2ban-client banned\n\n配置详解\n\n主配置文件\n\nFail2Ban 的主配置文件是/etc/fail2ban/fail2ban.conf，建议创建副本/etc/fail2ban/fail2ban.local进行修改。\n\n封禁配置\n\nbantime: 封禁时间长度，单位可以是 m(分钟)、d(天)或 s(秒)\n\nfindtime: 计算登录失败的时间窗口\n\nmaxretry: 最大失败尝试次数\n\nignoreip: 白名单 IP，多个 IP 用空格分隔\n\naction: 封禁时采取的动作\naction_: 默认动作，拒绝流量\n\naction_mw: 封禁并发送邮件通知\n\naction_mwl: 封禁并发送邮件通知，包含相关日志\n\naction_xarf: 封禁并发送 XARF 格式邮件\n\n注意事项\n\n如果 SSH 使用密钥登录并禁用密码登录，则不需要 Fail2Ban 保护\n\n修改配置后需要重启 fail2ban 服务才能生效\n\n建议将常用 IP 加入白名单，避免误封\n\n封禁时间设置要合理，避免影响正常用户\n\n常见问题\n\n启动服务报错，提示/var/log/auth.log 文件不存在\n\n# 最小化系统，未启用日志服务，执行以下命令启用\nsudo apt-get update\nsudo apt-get install rsyslog\nsudo systemctl start rsyslog\nsudo systemctl enable rsyslog\nsudo systemctl status rsyslog\n\n防火墙未启用，导致 fail2ban 未实际生效，以下启用防火墙参考\n\nsystemctl restart iptables\nsystemctl enable iptables\nsystemctl status iptables","routePath":"/guide/vps-town-101-guide","lang":"zh","toc":[{"id":"1-网站管理界面","text":"1. 网站管理界面","depth":2,"charIndex":116},{"id":"11-已开通产品列表","text":"1.1 已开通产品列表","depth":3,"charIndex":127},{"id":"12-服务器列表界面","text":"1.2 服务器列表界面","depth":3,"charIndex":273},{"id":"13-服务器详情界面","text":"1.3 服务器详情界面","depth":3,"charIndex":439},{"id":"2-远程连接服务器","text":"2. 远程连接服务器","depth":2,"charIndex":570},{"id":"21-下载-putty","text":"2.1 下载 Putty","depth":3,"charIndex":627},{"id":"22-添加新主机并配置信息","text":"2.2 添加新主机并配置信息","depth":3,"charIndex":687},{"id":"221-配置地址和端口","text":"2.2.1 配置地址和端口","depth":4,"charIndex":703},{"id":"222-连接实例","text":"2.2.2 连接实例","depth":4,"charIndex":744},{"id":"3可选项是否网络重装操作系统","text":"3.（可选项）是否网络重装操作系统","depth":2,"charIndex":912},{"id":"下载-dd-脚本到本地","text":"下载 dd 脚本到本地","depth":3,"charIndex":977},{"id":"选择要重装的操作系统","text":"选择要重装的操作系统","depth":3,"charIndex":1154},{"id":"4-修改密码","text":"4. 修改密码","depth":2,"charIndex":2116},{"id":"5-优化-ssh-配置","text":"5. 优化 SSH 配置","depth":2,"charIndex":2279},{"id":"6-优化内核参数","text":"6. 优化内核参数","depth":2,"charIndex":3526},{"id":"7-安装常用软件","text":"7. 安装常用软件","depth":2,"charIndex":3924},{"id":"8-防火墙配置","text":"8. 防火墙配置","depth":2,"charIndex":4071},{"id":"9-增加历史执行命令记录","text":"9. 增加历史执行命令记录","depth":2,"charIndex":5953},{"id":"10-可选配置","text":"10. 可选配置","depth":2,"charIndex":6589},{"id":"101-禁用检测更新","text":"10.1 禁用检测更新","depth":3,"charIndex":6599},{"id":"102-登录提示文字优化","text":"10.2 登录提示文字优化","depth":3,"charIndex":6971},{"id":"103-安装-fail2ban保护您的服务器","text":"10.3 安装 fail2ban，保护您的服务器","depth":3,"charIndex":7418},{"id":"配置规则","text":"配置规则","depth":4,"charIndex":7517},{"id":"重启服务","text":"重启服务","depth":4,"charIndex":7823},{"id":"常用命令","text":"常用命令","depth":4,"charIndex":7909},{"id":"配置详解","text":"配置详解","depth":4,"charIndex":8082}],"frontmatter":{"date":"2025-04-14 15:00 +8","updated":"2025-04-15 10:20 +8","version":"v0.0.1","description":"VPS.Town 服务器新手入门保姆级教程，涵盖了从购买 VPS.Town 服务器、连接、重置密码、优化配置、安装常用软件、配置 Fail2ban 保护您的服务器等操作。","category":"getting-started","sidebarTitle":"新手入门保姆级教程","cardIcon":"BookOpen","cardDescription":"适合新手的 VPS.Town 服务器使用入门指南","author":"biebiele","banner":"/assets/images/vps-town-101-guide/1.png","keywords":["VPS.Town","新手入门","保姆级指南","重置密码","优化配置","安装常用软件","防火墙配置"]},"version":"","description":"VPS.Town 服务器新手入门保姆级教程，涵盖了从购买 VPS.Town 服务器、连接、重置密码、优化配置、安装常用软件、配置 Fail2ban 保护您的服务器等操作。"},{"title":"如何在 VPS.Town 服务器上安装 qBittorent 和 AList","content":"本文由用户 (赛博丁真) 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 现金 20 元 奖励。\n\n引言\n\n本教程详细介绍了如何在 Debian 12 系统的 VPS.Town 服务器上，通过 Docker 安装和配置 qBittorrent 进行 BT 下载，并结合 AList 实现离线下载文件至网盘的功能。\n\n第一步：连接到您的 VPS 服务器\n\n最多可提供高达 8TB 大容量存储 的选项，非常适合存放大量项目代码与文档；\n\n同时也提供 SSD & HDD 混合方案，读写速度更快、成本更低；\n\n性价比高，适合个人开发者、小团队进行长期托管部署；\n\n抗 DMCA 版权投诉，可用于一些敏感项目；\n\n⚠️ 其中 1TB 存储大盘鸡续费仅需 260/年或 28.5/月，硬盘一次性买断最低仅需 ¥80/TiB\n\n无 AFF 购买链接：点我一键直达\n\n使用 SSH 工具连接到您的 VPS.Town 服务器实例，确保您切换到 root 用户，以便执行后续操作。\n\n第二步：安装 docker\n\n我们将使用 docker 官方的安装脚本。该脚本简化了 docker 编译安装过程，操作更加便捷。\n\n安装 docker 是为了隔离系统与运行环境，同时也能简化配置\n\ncurl -fsSL https://get.docker.com | bash -s docker\n\n第三步：运行 docker 命令\n\n请把 -v /mnt:/Downloads 中的 /mnt 改为硬盘的挂载路径，例如 /data/qbittorrent\n\ndocker run \\\n--name=qbittorrent \\\n-e QB_WEBUI_PORT=8989 \\\n-e QB_EE_BIN=false \\\n-e UID=1000 \\\n-e GID=1000 \\\n-e UMASK=022 \\\n-p 6881:6881 \\\n-p 6881:6881/udp \\\n-p 8989:8989 \\\n-v /docker/johngong:/config \\\n-v /mnt:/Downloads \\\n--restart unless-stopped \\\njohngong/qbittorrent:latest\n\n第四步：查看 webui 密码并登录修改密码\n\n第一次启动会生成密码，查看即可\n\ndocker logs qbittorrent\n\n打开 webui\n\n选择 工具 → 选项\n\n修改密码并拉到最下方保存\n\n第五步，下载种子\n\n选择左侧图标，可以下载磁链，右侧可以上传种子文件进行下载\n\n进阶教程：配合 AList 实现离线下载、上传至网盘\n\n安装 AList 请参见 官方的一键脚本\n\n进入后台设置 → 其他 → qbittorent\n\n将 URL 改为\n\nhttp://admin:[密码]@localhost:8989/\n\n进入要离线到网盘的目录，选择侧边栏的离线下载功能即可","routePath":"/guide/vps-town-install-qbittorrent-alist","lang":"zh","toc":[{"id":"引言","text":"引言","depth":2,"charIndex":114},{"id":"第一步连接到您的-vps-服务器","text":"**第一步：连接到您的 VPS 服务器**","depth":2,"charIndex":222},{"id":"第二步安装-docker","text":"**第二步：安装 docker**","depth":2,"charIndex":497},{"id":"第三步运行-docker-命令","text":"第三步：运行 docker 命令","depth":2,"charIndex":648},{"id":"第四步查看-webui-密码并登录修改密码","text":"第四步：查看 webui 密码并登录修改密码","depth":2,"charIndex":1006},{"id":"打开-webui","text":"打开 webui","depth":3,"charIndex":1072},{"id":"修改密码并拉到最下方保存","text":"修改密码并拉到最下方保存","depth":3,"charIndex":1094},{"id":"第五步下载种子","text":"第五步，下载种子","depth":2,"charIndex":1108},{"id":"进阶教程配合-alist-实现离线下载上传至网盘","text":"进阶教程：配合 AList 实现离线下载、上传至网盘","depth":2,"charIndex":1148},{"id":"进入后台设置--其他--qbittorent","text":"进入后台设置 → 其他 → qbittorent","depth":3,"charIndex":1198}],"frontmatter":{"date":"2025-04-11T11:21:00.000Z","updated":"2025-04-12 08:00 +8","description":"本教程详细介绍了如何在 Debian 12 系统的 VPS.Town 服务器上，通过 Docker 安装和配置 qBittorrent 进行 BT 下载，并结合 AList 实现离线下载文件至网盘的功能。","category":"download-media","sidebarTitle":"qBittorrent + AList 离线下载","cardIcon":"Download","cardDescription":"在 VPS.Town 服务器上部署 qBittorrent 下载工具和 AList 文件管理系统","author":"赛博丁真","keywords":["qBittorrent","Alist","Docker","Debian","安装教程","WebUI"]},"version":"","description":"本教程详细介绍了如何在 Debian 12 系统的 VPS.Town 服务器上，通过 Docker 安装和配置 qBittorrent 进行 BT 下载，并结合 AList 实现离线下载文件至网盘的功能。"},{"title":"如何使用青龙面板定时运行 Bilibili 日常签到脚本","content":"本文由用户 biebiele 撰写，并已加入 VPS.Town 优秀原创文章激励计划，本站享有完整版权，未经允许不得转载。\n\n本文已通过 VPS.Town 社区文章投稿及奖励规则 (试行稿) 审核，并获得 现金 150 元 (共三篇文章) 奖励。\n\n前提条件：已成功完成青龙面板安装，安装教程请参考 如何在 VPS.Town 服务器上安装并配置青龙面板\n\n1. 登录青龙面板并修改配置文件\n\n青龙面板，配置文件页。\n\n修改RepoFileExtensions=\"js mjs py pyc\" 为 RepoFileExtensions=\"js mjs py pyc sh\"\n\n新增export BILI_MODE=\"bilitool\" # bili运行模式，dotnet或bilitool\n\n2、拉取库文件\n\n青龙面板，订阅管理页，点击右上角创建订阅\n\n名称: Bilibili\n类型: 公开仓库\n链接: https://github.com/RayWangQvQ/BiliBiliToolPro.git\n定时类型: crontab\n定时规则: 1 0 * * *\n白名单: bili_task_.+\\.sh\n文件后缀: sh\n\n点击确定后，点击运行拉取库文件\n\n可点击日志，检查拉取过程是否正常\n\n3. 检查定时任务\n\n如果正常，拉库成功后，会自动添加 bilibili 相关的 task 任务。\n\n4. 登录获取 cookie\n\n首次运行会自动安装环境，时间可能长一点，之后就不需要重复安装了。\n\n在青龙定时任务中，点击运行 bili扫码登录 任务，查看运行日志，扫描日志中的二维码进行登录。\n\n登录成功后，会提示手动保存 cookie：\n\n手工设置 cookie\n\n5. 手动执行bili每日任务任务","routePath":"/guide/vps-town-qinglong-bilibili-daily","lang":"zh","toc":[{"id":"1-登录青龙面板并修改配置文件","text":"1. 登录青龙面板并修改配置文件","depth":2,"charIndex":178},{"id":"2拉取库文件","text":"2、拉取库文件","depth":2,"charIndex":345},{"id":"3-检查定时任务","text":"3. 检查定时任务","depth":2,"charIndex":549},{"id":"4-登录获取-cookie","text":"4. 登录获取 cookie","depth":2,"charIndex":600},{"id":"5-手动执行bili每日任务任务","text":"5. 手动执行`bili每日任务`任务","depth":2,"charIndex":735}],"frontmatter":{"date":"2025-04-15 00:00 +8","updated":"2025-04-15 10:20 +8","version":"v0.0.1","description":"本文介绍如何在青龙面板中修改配置文件、订阅 BiliBiliToolPro 仓库拉取签到脚本，并通过扫码登录保存 Cookie，让 Bilibili 每日任务按计划自动运行。","category":"automation-scripts","order":2,"sidebarTitle":"青龙面板运行 B 站签到","cardIcon":"Radio","cardDescription":"使用青龙面板自动执行 Bilibili 每日签到任务","author":"biebiele","banner":"/assets/images/vps-town-qinglong-bilibili-daily/1.png","keywords":["青龙面板","bilibili 日常签到脚本"]},"version":"","description":"本文介绍如何在青龙面板中修改配置文件、订阅 BiliBiliToolPro 仓库拉取签到脚本，并通过扫码登录保存 Cookie，让 Bilibili 每日任务按计划自动运行。"},{"title":"VPS.Town 全产品线维护公告 (#M01)","content":"本次计划维护时间为 2025 年 3 月 14 日 8:00 - 当日 19:00（UTC+8）(预估，具体时间请等待通知)。\n\n本文最后更新时间: 。\n\n切记，请提前做好数据备份，以防万一。\n\n请在维护前 先手动关闭 VPS (shutdown)，以确保数据的完整性。\n\n请在维护前后检查 VPS 的数据完整性，确保没有数据丢失，有任何问题请及时在官网后台开启技术工单。\n\n8:00 停止所有 VPS 产品，将缓存盘数据写入 HDD 阵列；\n\n11:00 更换缓存盘及网卡；\n\n14:00 启动系统后检测数据完整性、调试网卡端口；\n\n预估 19:00 左右恢复所有服务。\n\n尊敬的客户：\n\nVPS.Town 近期将进行一系列重要调整，以提升服务质量和稳定性。现将相关信息通知如下：\n\n一、硬件维护通知 (03-14)\n\n影响范围\n\nHK Global 可用区 A 等 VPS.Town 所有产品线\n\n维护时间\n\n开始时间: 2025 年 3 月 14 日 8:00 (UTC+8) (预估，具体时间请等待通知)\n结束时间: 2025 年 3 月 14 日 19:00 (UTC+8)（预估，可能提前或延后）\n\n维护内容\n\n升级节点网卡为更先进的 Mellanox ConnectX-5\n\n升级 HDD 阵列 SSD 缓存盘至 3.84T\n\n您需要做的\n\n切记，请提前做好数据备份，以防万一。\n\n请在维护前 先手动关闭 VPS (shutdown)，以确保数据的完整性。\n\n请在维护前后检查 VPS 的数据完整性，确保没有数据丢失，有任何问题请及时在官网后台开启技术工单。\n\n补偿方案\n\n补偿对象： 所有受影响的 VPS 用户\n\n补偿时长： 至少 3 天时长 (根据 ToS 承诺，给予三倍维护时间赔偿)\n\n本次维护原则上不会丢失任何数据，但根据 ToS 服务条款，我们依然不提供数据安全保障。\n\n若产生数据丢失，我们将会额外提供不低于 14 日服务时长补偿。\n\n二、产品线暂停销售公告 (03-09)\n\n由于现有产品在高负载和特殊情况下存在一些影响稳定性的问题，VPS.Town 决定即日 (2025-03-09) 起暂停所有产品线的销售，以将更多精力投入到对现有硬件和网络设备的全面维护和优化上。\n\n对于盲定用户\n\n可申请全额退款。\n\n可保留名额，待产品优化后重新开放购买。\n\n选择等待的盲定用户将获得额外时长补偿或其他形式补偿。\n\n我们将尽快完成维护升级，并及时跟进产品开售信息。感谢您的理解与支持！\n\n如有疑问或需要进一步帮助，请随时与我们联系。\n\nVPS.Town 宣发团队 敬上","routePath":"/kb/2025-03-09-maintenance-announcement","lang":"zh","toc":[{"id":"03-14","text":"一、硬件维护通知 (03-14)","depth":2,"charIndex":343},{"id":"影响范围","text":"影响范围","depth":3,"charIndex":361},{"id":"维护时间","text":"维护时间","depth":3,"charIndex":401},{"id":"维护内容","text":"维护内容","depth":3,"charIndex":506},{"id":"您需要做的","text":"您需要做的","depth":3,"charIndex":571},{"id":"补偿方案","text":"补偿方案","depth":3,"charIndex":688},{"id":"2025-03-09","text":"二、产品线暂停销售公告 (03-09)","depth":2,"charIndex":832},{"id":"对于盲定用户","text":"对于盲定用户","depth":3,"charIndex":952}],"frontmatter":{"date":"2025-03-09 23:01 +0800","version":"v1.0.2","level":"danger","description":"VPSTown 将于 2025 年 3 月 14 日 进行 HK Global 节点硬件维护，升级网卡和 SSD 缓存盘。受影响用户将获得至少 3 天服务时长补偿。","category":"announcements","sidebarTitle":"维护公告 #M01 (2025-03-14)"},"version":"","description":"VPSTown 将于 2025 年 3 月 14 日 进行 HK Global 节点硬件维护，升级网卡和 SSD 缓存盘。受影响用户将获得至少 3 天服务时长补偿。"},{"title":"Asset-Like Resources (ALR) 服务条款","content":"本文于  更新 (版本 )\n\n1. 定义与性质\n\nAsset-Like Resources (以下简称 \"ALR\") 是 VPS.Town 提供的一种特殊服务。其特征为：一次性买断付费、服务资源可量化、由底层物理硬件支撑。\n\n客户理解并同意，ALR 仅为一种特定服务资源的使用权，不构成法律意义上的资产、财产或所有权，亦不构成任何形式的投资工具、金融产品或具有投资回报预期的产品。\n\n2. 服务依赖性与绑定规则\n\nALR 是一项附加服务，其必须绑定于一项处于有效状态的非买断型的主服务。\n\nALR 的有效性依附于主服务。当主服务终止、到期或被释放时，对应的 ALR 将进入保留期或被释放。\n\n3. 资源保护机制\n\n3.1. 保留期\n\n为了保障客户的使用连续性，当关联的主服务释放后，VPS.Town 通常会为该 ALR 提供最长 7 天的保留期（但不保证数据完整性）。\n\n在此期间，客户可随时将该 ALR 重新绑定至账户下的其他有效主服务。\n\n3.2. 逾期找回\n\n每位客户在每个自然年内拥有 1 次 通过工单申请找回逾期 ALR 的机会（须在主服务释放后的 30 天内提出申请）。\n\nVPS.Town 将尽力协助找回，但不承诺 100% 成功。若找回失败，VPS.Town 不承担任何由此导致的数据丢失责任。\n\n4. 客户权利与义务\n\n4.1. 绑定责任\n\n客户有责任维护其账户状态和主服务有效性。\n\n超过本条款第 3.1 条规定的保留期（7 天）未将 ALR 绑定于其他主服务所导致的后果由客户自行承担。\n\n4.2. 绑定权利\n\n客户有权将其拥有的 ALR 绑定到其账户所属的符合条件的有效的主服务上。\n\n4.3. 合并与拆分\n\n客户有权将两项或更多 ALR 合并为一项 ALR，也有权将一项 ALR 拆分为两项或更多 ALR，仅限相同类型且满足 VPS.Town 规格标准的 ALR 之间进行合并或拆分。\n\n每个客户每个自然年内仅可进行本条款内描述的操作不超过 2 次。\n\n注意：拆分 ALR 可能会导致数据丢失，VPS.Town 不承担任何由此导致的数据丢失责任。\n\n4.4. 转移规则\n\nALR 仅可通过 VPS.Town 官方提供的产品转移(PUSH)服务在用户之间进行转移，并须遵守 PUSH 服务的相关规则和费用标准（如有）。\n\n未经 VPS.Town 官方渠道进行的 ALR 转移、交易、转借、二次销售均被严格禁止。VPS.Town 不参与用户之间的交易行为，也不对交易行为产生的纠纷承担责任。对于违反本条款的转移，VPS.Town 有权冻结相关 ALR 并终止服务。\n\n5. 使用权与物理所有权声明\n\nALR 仅代表服务资源的使用权，不代表任何形式的物理硬件所有权。\n\nVPS.Town 有权因硬件维护、故障更换或基础设施升级，对底层设备进行更换或迁移，但不会影响客户已购买的容量规格。VPS.Town 可使用等效或更高规格的资源提供服务。\n\n6. 适用条款与法律约束\n\n6.1. 基础条款适用\n\n除本条款特别规定外，ALR 受《VPS.Town 服务条款》（以下简称\"主条款\"）约束，包括但不限于：\n\n第 6 条（内容及可接受使用政策）\n\n第 10 条（资源使用&安全，含 10.5 公平使用政策）\n\n第 14 条（无额外保障及责任限制）\n\n6.2. 退款政策\n\nALR 的退款适用于主条款第 8 条中关于设置费的规定，即 ALR 由于其一次性支付的特性，在退款处理中将被视为设置费或具有同等性质的费用。\n\n6.3. 冲突解决\n\n如本条款与主条款存在冲突，就 ALR 相关事项以本条款为准。\n\n7. 实验性条款\n\nALR 为 VPS.Town 的特殊服务类型，其规则可能根据运营情况进行调整。规则调整不会影响客户已经购买的资源规格，但可能影响未来服务规则。VPS.Town 保留对本服务规则进行调整的权利，调整将在合理时间前公告。\n\n本条款是对主条款第 2 条（用户协议修订）的补充而非替代。\n\n8. 条款同意\n\n客户通过购买、绑定或使用 ALR 服务，即视为已阅读、理解并同意遵守本条款的全部内容。本条款构成主条款不可分割的组成部分。\n\n本文最后更新时间：于  更新 (版本 )","routePath":"/kb/alr-service-terms","lang":"zh","toc":[{"id":"definition","text":"1. 定义与性质","depth":2,"charIndex":15},{"id":"service-dependency","text":"2. 服务依赖性与绑定规则","depth":2,"charIndex":192},{"id":"protection-mechanism","text":"3. 资源保护机制","depth":2,"charIndex":296},{"id":"retention-period","text":"3.1. 保留期","depth":3,"charIndex":307},{"id":"recovery","text":"3.2. 逾期找回","depth":3,"charIndex":422},{"id":"rights-obligations","text":"4. 客户权利与义务","depth":2,"charIndex":557},{"id":"binding-responsibility","text":"4.1. 绑定责任","depth":3,"charIndex":569},{"id":"binding-rights","text":"4.2. 绑定权利","depth":3,"charIndex":656},{"id":"merge-split","text":"4.3. 合并与拆分","depth":3,"charIndex":705},{"id":"transfer","text":"4.4. 转移规则","depth":3,"charIndex":888},{"id":"ownership","text":"5. 使用权与物理所有权声明","depth":2,"charIndex":1095},{"id":"applicable-terms","text":"6. 适用条款与法律约束","depth":2,"charIndex":1232},{"id":"61-基础条款适用","text":"6.1. 基础条款适用","depth":3,"charIndex":1246},{"id":"refund","text":"6.2. 退款政策","depth":3,"charIndex":1382},{"id":"63-冲突解决","text":"6.3. 冲突解决","depth":3,"charIndex":1465},{"id":"experimental","text":"7. 实验性条款","depth":2,"charIndex":1508},{"id":"acceptance","text":"8. 条款同意","depth":2,"charIndex":1659}],"frontmatter":{"date":"2026-03-11 00:00 +8","version":"v1.0.0","description":"VPS.Town Asset-Like Resources (ALR) 服务条款，详细规定 ALR 的服务规则、客户权利与义务、资源保护机制及实验性条款。","category":"policies","order":2,"sidebarTitle":"ALR 服务条款"},"version":"","description":"VPS.Town Asset-Like Resources (ALR) 服务条款，详细规定 ALR 的服务规则、客户权利与义务、资源保护机制及实验性条款。"},{"title":"VPS.Town 社区内容贡献指南","content":"本文于  更新 (版本 )\n\n本文为 VPS.Town 社区文章投稿及奖励规则 的补充说明，请您在投稿前务必仔细阅读。\n\n请格外注意本文的 硬性规范要求 与 建议性行文规范 部分，避免投稿被拒。\n\n投稿流程\n\n1. 选题准备\n\n在开始撰写投稿内容前，建议先确定好文章的主题和方向。VPS.Town 欢迎以下类型的内容：\n\nVPS.Town 产品使用教程与最佳实践\n\n基于 VPS.Town 产品的应用搭建教程\n\nVPS、Linux、Docker、网络等相关的技术经验分享\n\n云服务器应用场景与解决方案\n\nVPS.Town 最新活动创意与反馈\n\n请确保您的内容主题符合 VPS.Town 社区文章投稿及奖励规则 中的相关要求。\n\n2. 内容编写\n\n硬性规范要求\n\n请您在撰写文章时务必遵守以下七点硬性规范要求，否则将不予通过。\n\n使用 MDX ( .mdx ) 格式撰写文章，MDX 完全兼容 Markdown 语法，只是后缀名需要改为 .mdx 。\n\n文章有效字数 (不包含代码，但包含图片和代码中的注释) 应不少于 200 字。\n\n内容应具有原创性、实用性和可操作性，并确保命令、代码片段经过测试，能够正常运行，并注明适用的环境信息。\n\n应 严格遵守文章排版结构，具体请参阅 此章节 。\n\n如文中有图片，请使用相对路径，并打包为 zip 压缩包，不要使用图床、绝对路径等服务。\n\n我们并不排斥任何 AI 辅助写作，但请您的稿件不要出现大量 AI 生成的内容，感谢您的理解。\n\n遇到中英文混排的情况，需要在中文和英文/数字之间添加空格，例如：\n\n这是一段含有中文和English的中英混排文本，并自2025年4月12日发布于VPS.Town文档中心。\n\n应修改为：\n\n这是一段含有中文和 English 的文本，并自 2025 年 4 月 12 日发布于 VPS.Town 文档中心。\n\n建议性行文规范\n\n以下为建议性行文规范，您可以参考以下规范来撰写文章：\n\n文章中应包含完整的操作步骤，避免跳跃性的说明。\n\n关键步骤应适当添加截图、流程图等图片元素，使文章更直观，注意图片中的敏感信息（如 IP）记得进行模糊处理。\n\n文中引用其他文章时应尽可能使用程序的官方文档、权威文档 (如 MDN/W3C/IETF/Web.Dev 等)、或其他优质的 原创文章，应避免引用 CSDN/阿里(腾讯)云开发社区 等 臭名昭著的内容农场。\n\n文中引用其他文章时，请尽可能使用原文链接，并添加 [原文链接] 的注释，这是对原作者的尊重，也是对您自己负责。\n\n文章应包含清晰的标题、小标题和内容结构，每个小标题长度应不超过 20 个字。\n\n应该使用 Prettier 格式化 Markdown 代码，Prettier 使用教程请参见下文 推荐写作环境 章节。\n\n文章大体结构\n\n这个实例中的以 --- 开头和结尾的代码块，是 MDX 的 Frontmatter 信息，放置在文章的最顶部，请您在撰写文章时务必遵守。\n\n而 ::: 是 Rspress 的高阶语法，在这里的作用是自动生成文章目录，也请保留。\n\n请认真阅读此小节，并严格遵守，避免不必要的沟通成本。\n\n每篇文章的 最顶部 需要包含以下 Frontmatter 信息：\n\n---\ndate: 2025-04-12 15:00 +8 # 首次发布时间，格式为 `YYYY-MM-DD HH:MM +8`\nupdated: \"2025-04-12 15:00 +8\" # 最后一次内容更新时间，格式同上，可选\nversion: v0.0.1 # 文章版本号 (建议从 v0.0.1 开始，后续更新投稿时递增)\ndescription: \"这里是文章的简要概述，建议在 50~120 字范围内，用于文章预览。\"\ncategory: web-services # 分类 id，可选值见下文\nsidebarTitle: 安装 Nginx # 侧边栏短标题，建议 16 字以内\ncardIcon: Server # 可选，卡片图标名，可选值见下文\ncardDescription: \"在 VPS.Town 服务器上安装并配置 Nginx。\" # 可选，卡片上的一句话简介\nauthor: 您的昵称 # 投稿作者署名\nbanner: /assets/images/how-to-install-nginx/banner.png # 封面图，站内路径，建议尺寸为 1200x630px\nkeywords:\n  - 关键词 1\n  - 关键词 2\n  - 关键词 3 # 关键词建议为 3~5 个，用于文章分类\n---\n\n# 文章标题\n\n\n\n\n<Toc />\n\n\n## 正文第一个小标题\n\n...所有正文...\n\n各字段的含义如下：\n\n字段\t是否必填\t说明\ndate\t必填\t首次发布时间，格式为 YYYY-MM-DD HH:MM +8\nupdated\t可选\t最后一次内容更新时间，格式同 date\nversion\t必填\t文章版本号，建议从 v0.0.1 开始，后续更新投稿时递增\ndescription\t必填\t文章简要概述，建议 50~120 字，用于文章预览与搜索结果\ncategory\t必填\t分类 id，决定文章出现在哪个分类下，教程可选值见下文\nsidebarTitle\t可选\t侧边栏与上一篇/下一篇显示的短标题，建议 16 字以内，不填时使用正文标题\ncardIcon\t可选\t教程卡片上的图标名，可选值见下文\ncardDescription\t可选\t教程卡片上的一句话简介，不填时使用 description\nauthor\t必填\t投稿作者署名\nbanner\t可选\t封面图，填写站内路径，如 /assets/images/<slug>/banner.png，建议尺寸为 1200x630px\nkeywords\t必填\t关键词，建议 3~5 个\n\n教程的 category 可选值：getting-started、cloud-drive、object-storage、virtualization、web-services、installing、code-version-control、download-media、network-diagnostics、system-security、automation-scripts。\n\ncardIcon 可选值：Archive、BookOpen、CircleHelp、Clock、Cloud、Database、Download、FileText、Film、Gift、GitBranch、GitFork、Globe、HardDrive、Image、Lock、Megaphone、Network、Radio、RefreshCcw、Rss、Scale、Server、Shield、Users、Wrench。\n\n其中 author 与 keywords 是投稿审核的要求，站点构建本身不强制；已有的官方文章可以不写作者。\n\nbanner 中的 <slug> 为文章的英文文件名 (不含 .mdx 后缀)。投稿时仍把封面图放在压缩包的 images/banner.png，发布时我们会将图片放到对应的站内路径。\n\n页面标题取自正文中的一级标题 (# 文章标题)，无需在 Frontmatter 中重复填写。侧边栏、教程卡片以及文末的上一篇/下一篇都会根据上述字段自动生成，您不需要修改任何 _meta.json 或配置文件。\n\n3. 投稿方式\n\n您可以通过以下方式提交您的投稿：\n\n{/* 1. GitHub PR 方式 (推荐)：\n\n- Fork `vps-town/wiki` 仓库。\n- 在 `docs/` 目录下选择或创建合适的分类目录（如 `guide`, `kb` 等）。\n- 创建新的 Markdown 文件，命名规范见下方\"写作规范 - 文件命名与存放\"。\n- 编写您的文章内容和 Frontmatter。\n- **重要**：在 Frontmatter 中填写 `category` 与 `sidebarTitle`，侧边栏与教程卡片会据此自动生成，无需修改 `_meta.json`。\n- 提交 Pull Request 到 `vps-town/wiki` 主仓库。 */}\n\n使用 Telegram Bot 投稿\n点击 Telegram Bot 投稿 按钮，添加机器人。\n\n按照以下格式发送投稿内容：\n您的昵称 (将写进文章开头的作者署名)\n\n您的 VPS.Town 账号邮箱 (用于发放奖励)\n\n您除了 TG 以外的联系方式 (如 QQ / 微信 / 邮箱等)\n\nzip 压缩包 (压缩包结构可参考下文)\n\n压缩包结构\n\n仅供参考：\n\n.\n├── images/\n│   ├── banner.png # 文章封面图片，可选，建议尺寸为 1200x630px\n│   ├── image-1.png\n│   ├── image-2.png\n│   └── image-3.png\n└── how-to-install-nginx.mdx # 文章英文路径，注意后缀使用 .mdx\n\n图片可使用 jpg/png/webp/svg 等格式，建议先前往 https://tinypng.com/ 无损压缩一下图片\n\n4. 审核与发布\n\n投稿提交后，VPS.Town 团队将根据 VPS.Town 社区文章投稿及奖励规则 中的审核标准进行内容审核，审核时间一般为 3-7 个工作日。\n\n审核通过后：\n\n如果是 Telegram Bot 方式，我们会自动发布您的文章。\n\n您的文章将被发布到 VPS.Town 文档中心等渠道。\n\n我们会根据文章质量评估并与您确认奖励方案。\n\n如果审核未通过，团队会给出具体的修改建议，您可以根据建议进行修改后重新提交。\n\n推荐写作环境\n\n编辑器\n\nVisual Studio Code (推荐)\n\nJetBrains Webstorm\n\n插件\n\n由于目前 MDX 生态没有成熟的预览插件，您可以先使用 .md 后缀进行创作，并使用 MPE 插件进行预览，待完稿后再修改后缀为 .mdx 即可。\n\nVSCode 推荐使用以下插件：\n\nMDX (MDX 语法高亮)\n\nPrettier (格式化)\n\nMPE (Markdown Preview Enhanced) (预览使用)\n\nMarkdown Mermaid (Mermaid 扩展)\n\nWebstorm 可自行查找对应插件安装。\n\n写作规范\n\nMarkdown 基本语法\n\n请熟练使用标准的 Markdown 语法：\n\n标题\n\n# 一级标题\n\n## 二级标题\n\n### 三级标题\n\n文本格式\n\n**粗体文本**\n_斜体文本_\n~~删除线文本~~\n\n列表\n\n- 无序列表项 1\n- 无序列表项 2\n  - 嵌套列表项\n\n1. 有序列表项 1\n2. 有序列表项 2\n\n链接和图片\n\n[链接文本](https://example.com)\n![图片描述](图片链接)\n\n代码块\n\n```bash\n# 这是一个 bash 代码块\necho \"Hello World\"\n```\n\n高级语法与组件 (MDX)\n\nVPS.Town 文档中心基于 Rspress，支持 MDX，允许您在 Markdown 中嵌入 React 组件和更丰富的语法。\n\nMermaid 流程图与图表\n\n```mermaid\nflowchart TD\n    A[开始] --> B{判断条件}\n    B -->|条件成立| C[执行操作1]\n    B -->|条件不成立| D[执行操作2]\n    C --> E[结束]\n    D --> E\n```\n\n渲染效果\n\nflowchart TD\n    A[开始] --> B{判断条件}\n    B -->|条件成立| C[执行操作1]\n    B -->|条件不成立| D[执行操作2]\n    C --> E[结束]\n    D --> E\n\n提示容器 (Admonitions)\n\n用于强调信息，非常实用。\n\n这是灰色的简单提示信息。\n\n这是一般的提示信息。\n\n这是一个包含建议或技巧的提示。\n\n请注意这个潜在的问题或重要提醒。\n\n这个操作有风险，请谨慎执行。\n\n这里是默认折叠的内容，点击标题可以展开。\n\n渲染效果\n\n这是灰色的简单提示信息。\n\n这是一般的提示信息。\n\n这是一个包含建议或技巧的提示。\n\n请注意这个潜在的问题或重要提醒。\n\n这个操作有风险，请谨慎执行。\n\n这里是默认折叠的内容，点击标题可以展开。\n\n更多类型和用法请参考 Rspress 文档。\n\n表格\n\n| 列 1   | 列 2   | 列 3   |\n| ------ | ------ | ------ |\n| 内容 1 | 内容 2 | 内容 3 |\n| 内容 4 | 内容 5 | 内容 6 |\n\n图片嵌入\n\n![图片描述](./images/image-01.png)\n\n投稿时推荐使用相对路径，请勿使用图床、绝对路径等服务。\n\n内容建议与范例\n\n1. 图文并茂\n\n建议在文章中适当添加截图、流程图等图片元素，使文章更加直观易懂。添加图片时，请注意：\n\n图片应清晰可辨，尺寸适中、一篇文章内应尽量使用同一尺寸/宽度的图片\n\n关键操作步骤最好配有截图 + 文字说明\n\n敏感信息（如 IP 地址、密码等）应进行模糊处理\n\n2. 可操作性\n\n提供完整的操作步骤，避免跳跃性的说明\n\n对关键步骤进行详细解释\n\n提供实际的使用案例或场景\n\n可能的话，提供多种实现方式的比较\n\n3. 准确性\n\n确保命令、代码片段经过测试，能够正常运行\n\n注明适用的系统版本、软件版本等环境信息，并需要特别标明使用了 VPS.Town 的哪些产品\n\n可以链接到 VPS.Town 的文档中心、产品页面等，但投稿中请勿携带 aff 链接，感谢支持\n\n4. 优秀范例\n\n您可以参考以下已发布的社区贡献文章，了解我们期望的格式和质量：\n\n如何在 VPS.Town 服务器上安装飞牛 OS\n\n如何在 VPS.Town 服务器上安装 qBittorrent + Alist\n\n如何在 VPS.Town 服务器实例上安装 Cloudreve\n\n联系我们\n\n如果您对投稿有任何疑问，欢迎通过以下方式联系我们：\n\n社群：参见 VPS.Town 官方社群\n\n投稿 Bot：Telegram Bot 投稿\n\n期待您为 VPS.Town 文档中心贡献您的知识和经验！","routePath":"/kb/community-contribution-guide","lang":"zh","toc":[{"id":"投稿流程","text":"投稿流程","depth":2,"charIndex":99},{"id":"1-选题准备","text":"1. 选题准备","depth":3,"charIndex":105},{"id":"content-writing","text":"2. 内容编写","depth":3,"charIndex":314},{"id":"硬性规范要求","text":"硬性规范要求","depth":4,"charIndex":323},{"id":"建议性行文规范","text":"建议性行文规范","depth":4,"charIndex":794},{"id":"文章大体结构","text":"文章大体结构","depth":4,"charIndex":1173},{"id":"3-投稿方式","text":"3. 投稿方式","depth":3,"charIndex":3095},{"id":"压缩包结构","text":"压缩包结构","depth":4,"charIndex":3596},{"id":"4-审核与发布","text":"4. 审核与发布","depth":3,"charIndex":3847},{"id":"推荐写作环境","text":"推荐写作环境","depth":2,"charIndex":4065},{"id":"编辑器","text":"编辑器","depth":3,"charIndex":4073},{"id":"插件","text":"插件","depth":3,"charIndex":4123},{"id":"写作规范","text":"写作规范","depth":2,"charIndex":4346},{"id":"markdown-基本语法","text":"Markdown 基本语法","depth":3,"charIndex":4352},{"id":"标题","text":"标题","depth":4,"charIndex":4390},{"id":"文本格式","text":"文本格式","depth":4,"charIndex":4421},{"id":"列表","text":"列表","depth":4,"charIndex":4454},{"id":"链接和图片","text":"链接和图片","depth":4,"charIndex":4512},{"id":"代码块","text":"代码块","depth":4,"charIndex":4562},{"id":"高级语法与组件-mdx","text":"高级语法与组件 (MDX)","depth":3,"charIndex":4615},{"id":"mermaid-流程图与图表","text":"Mermaid 流程图与图表","depth":4,"charIndex":4697},{"id":"提示容器-admonitions","text":"提示容器 (Admonitions)","depth":4,"charIndex":4964},{"id":"表格","text":"表格","depth":4,"charIndex":5226},{"id":"图片嵌入","text":"图片嵌入","depth":4,"charIndex":5332},{"id":"内容建议与范例","text":"内容建议与范例","depth":2,"charIndex":5399},{"id":"1-图文并茂","text":"1. 图文并茂","depth":3,"charIndex":5408},{"id":"2-可操作性","text":"2. 可操作性","depth":3,"charIndex":5543},{"id":"3-准确性","text":"3. 准确性","depth":3,"charIndex":5617},{"id":"4-优秀范例","text":"4. 优秀范例","depth":3,"charIndex":5743},{"id":"联系我们","text":"联系我们","depth":2,"charIndex":5885}],"frontmatter":{"date":"2025-04-13 19:30 +8","updated":"2026-09-30 09:00 +8","version":"v0.1.0","description":"VPS.Town 文档中心社区内容贡献指南，为社区作者提供详细的投稿流程、文件结构、写作规范、奖励规则及最佳实践范例。","category":"community","order":2,"sidebarTitle":"社区内容贡献指南"},"version":"","description":"VPS.Town 文档中心社区内容贡献指南，为社区作者提供详细的投稿流程、文件结构、写作规范、奖励规则及最佳实践范例。"},{"title":"VPS.Town 社区文章投稿及奖励规则 (试行稿)","content":"本规则目前仍为试行稿，VPS.Town 有权根据实际情况进行调整和修改，恕不另行通知。\n\n关于排版和写作规范，请参考 VPS.Town 社区内容贡献指南。\n\n本文于  更新 (版本 )\n\n第一条 总则\n\n为鼓励用户参与 VPS.Town 文档中心的建设、丰富教程资源，特制定本规则。\n\n第二条 投稿内容\n\n投稿内容应为原创的 VPS.Town 相关教程，包括但不限于：\nVPS.Town 产品的使用教程\n\n基于 VPS.Town 产品的应用搭建教程\n\nVPS.Town 最新活动创意\n\n与 VPS、Linux、Docker 相关的技术经验分享\n\n\n投稿内容应具有实用性、可操作性，能够帮助其他用户解决问题或学习新知识。\n\n投稿内容应保证原创性，不得抄袭、剽窃他人作品。\n\n第三条 投稿方式\n\n用户可通过 VPS.Town 官方提供的投稿渠道进行投稿 (具体渠道以官方公布为准, 可参考 官方社群)。\n\n投稿者需提供以下信息：\n投稿者的昵称；\n\n投稿者的 VPS.Town 邮箱；\n\n投稿者联系方式（如 QQ / 微信 / 邮箱等）；\n\n投稿标题；\n\n投稿正文（包括文字、图片、视频等）；\n\n其他相关附件（如有）。\n\n第四条 稿件审核\n\nVPS.Town 团队将对投稿稿件进行审核，审核标准包括但不限于：\n内容的原创性，不可抄袭、剽窃、洗稿他人作品；\n\n内容的实用性、准确性、完整性、可操作性；\n\n内容的排版、格式是否美观得体；\n\n内容不契合 VPS.Town 的主题；\n\n符合 VPS.Town 文档中心制定的行文规范 (仍在完善中)；\n\n内容是否符合 VPS.Town 的价值观。\n\n\nVPS.Town 团队有权对稿件进行修改、编辑或拒稿，拒绝的稿件将不予以奖励。\n\n第五条 奖励机制\n\n经过 VPS.Town 团队内部评估后满足奖励条件的稿件，投稿者可获得以下奖励之一：\n现金奖励： 人民币 20 元至 50 元的现金奖励。\n\n余额奖励： 等值于人民币 30 元至 100 元的 VPS.Town 账户余额。\n\n折扣券： 可选 5 折一次性 / 7 折循环的 VPS.Town 产品折扣券（具体折扣力度及适用范围由 VPS.Town 决定）。\n\n\n具体奖励类型、金额或折扣力度由 VPS.Town 团队根据稿件质量、实用性、影响力、篇幅长度等因素综合评估确定。VPS.Town 将在稿件审核通过后 10 个工作日内通知投稿者具体的奖励方案。\n\n现金奖励将通过投稿者提供的收款方式（如支付宝、微信支付、银行转账等）进行支付；余额奖励将直接充值到投稿者的 VPS.Town 账户；折扣券将以电子券的形式发送至投稿者的 VPS.Town 账户。\n\n如涉及相关法律法规规定的，VPS.Town 将依法履行相关义务（如涉及个人所得税等）。\n\n第六条 版权声明\n\n著作权归属： 投稿者对其投稿作品依法享有著作权。\n\n独家授权： 投稿作品一经被 VPS.Town 收录，即视为投稿者将该作品在全球范围内的信息网络传播权、复制权、改编权、汇编权及与之相关的其他权利独家授予 VPS.Town。但投稿者有权在符合以下条件的前提下，将作品发布于其他具有论坛分享性质的网站（如 NodeSeek、HostLoc 等）：\n(a) 需在作品显著位置注明 “本文为《VPS.Town 原创文章激励计划》投稿作品，未经允许不得转载”；\n\n(b) 包含指向 VPS.Town 文档站对应文章的完整超链接。\n\n除上述情形外，未经 VPS.Town 书面同意，投稿者不得自行或许可第三方以任何形式使用（包括但不限于商业性转载、一稿多投、改编衍生商业作品等）。\n\nVPS.Town 的权利： VPS.Town 有权在自有平台及相关渠道（包括但不限于网站、APP、社交媒体、合作方平台等）对收录作品进行使用、修改、编辑、复制、传播、翻译、制作衍生作品等，且无需另行支付费用。\n\n署名权： VPS.Town 将尊重投稿者的署名权，在合理范围内以适当方式标明作者身份；投稿者自行发布时，须按本条第 2 款要求同步标注 VPS.Town 授权信息。\n\n授权期限： 本条所述授权期限为作品著作权保护期。\n\n第七条 免责声明\n\n投稿者应确保投稿内容不侵犯任何第三方的合法权益，如因投稿内容引发的任何纠纷，由投稿者自行承担全部责任。\n\nVPS.Town 不对投稿内容的准确性、完整性、可靠性做任何保证。\n\n第八条 附则\n\n本规则目前仍为试行稿，VPS.Town 有权根据实际情况进行调整和修改，恕不另行通知。\n\nVPS.Town 保留对本规则的最终解释权和修改权。\n\n因本规则产生的任何争议，双方应友好协商解决。\n\n若有触及到第三方权益的内容，VPS.Town 将在明确收到侵权通知的书面申请后 48 小时内撤稿。","routePath":"/kb/community","lang":"zh","toc":[{"id":"第一条-总则","text":"**第一条 总则**","depth":2,"charIndex":94},{"id":"第二条-投稿内容","text":"**第二条 投稿内容**","depth":2,"charIndex":143},{"id":"第三条-投稿方式","text":"**第三条 投稿方式**","depth":2,"charIndex":336},{"id":"第四条-稿件审核","text":"**第四条 稿件审核**","depth":2,"charIndex":508},{"id":"第五条-奖励机制","text":"**第五条 奖励机制**","depth":2,"charIndex":735},{"id":"第六条-版权声明","text":"**第六条 版权声明**","depth":2,"charIndex":1168},{"id":"第七条-免责声明","text":"**第七条 免责声明**","depth":2,"charIndex":1731},{"id":"第八条-附则","text":"**第八条 附则**","depth":2,"charIndex":1829}],"frontmatter":{"date":"2025-04-03 20:00 +8","version":"v0.0.1","description":"VPS.Town 社区文章投稿及奖励规则 (试行稿)，为鼓励用户参与 VPS.Town 文档中心的建设、丰富教程资源，特制定本规则。","category":"community","order":1,"sidebarTitle":"投稿及奖励规则"},"version":"","description":"VPS.Town 社区文章投稿及奖励规则 (试行稿)，为鼓励用户参与 VPS.Town 文档中心的建设、丰富教程资源，特制定本规则。"},{"title":"VPS.Town 常见问题解答 (FAQ)","content":"费用与定价\n\nVPS.Town 为什么只收一次硬盘安装费？\n\nA：我们希望最大程度地降低运营成本并让利给所有用户。因此，硬盘安装费仅在首次安装时收取，后续您只需支付服务器的基础硬件费用即可。\n\nVPS.Town 以后会涨价吗？\n\nA：现有用户续费价格保证不高于当前报价。优惠力度排序为：首发活动 > 黑五/双 11 > 平时活动。VPS.Town 保证不会让首发老客户的续费价格高于新购价格，但新购价格会根据市场情况调整。\n\nVPS.Town 官网显示三年 8 折，但实际没有？\n\nA：模版问题，已修复。\n\nVPS.Town 现在有哪些活动和优惠？\n\nA: 可以关注 VPS.Town 官方社群 或 活动中心 获取最新的活动和优惠信息。\n\n硬件与性能\n\nVPS.Town 为什么 CPU 性能不是很理想？\n\nA：香港电力价格较高，因此当前的 CPU 性能可能不是最理想的。未来会推出配合香港-大陆优化线路的高性能服务器。\n\nVPS.Town CPU 是否可以长时间跑满？\n\nA：CPU 策略为：如果 CPU 连续 60 分钟超过 95% 使用率，性能将被限制为 70%，持续 60 分钟。\n\nVPS.Town 以后可以添加硬盘吗？\n\nA：新购客户可以选择添加更多硬盘。其他客户可以通过预存余额后提交工单来调整硬盘容量。\n\n服务政策\n\nVPS.Town 抗投诉吗？可以涉 H 吗？\n\nA：我们抗 DMCA 等普通投诉，具体如下：\n\nDMCA (数字千年版权法) 投诉：我们会视情况将投诉内容转发给您，但您可 自行选择 是否删除，我们不过多干涉。\n\n成人内容投诉：我们会视情况将投诉内容转发给您，但您可 自行选择 是否删除，我们不过多干涉。\n\n对外/内 DDoS 攻击、端口扫描、垃圾邮件等严重危害网络安全的行为：我们会视情况进行严肃处理。\n\nVPS.Town 防御多少？黑洞条件是什么？\n\nA：提供 10G 防御，如遇 DDoS 超过阈值后将黑洞 10 分钟。\n\nVPS.Town 的退款政策是什么？\n\nA：有以下三种情况\n\n24 小时内且流量不超过 30G，支持全额原路退款（扣除 5% 网关手续费）。\n\n7 天内且流量不超过 100G，原路退款月付金额的 70%，其他付款方式退款 80%。\n\n30 天内且当月流量剩余 70% 以上，可按天退款至余额。\n\n详情请见 ToS - 退款政策。\n\nVPS.Town 是否可以 PUSH？\n\nA: 可以，免费。\n\n技术相关\n\nVPS.Town 支持什么系统？\n\nA：支持以下系统 (系列)\n\nUbuntu 20.04, 22.04, 24.04\n\nDebian 11, 12\n\nCentOS 7, 8 (Stream), 由于 CentOS 全系均以 EOL (End of Life) 处理，建议使用 Rocky Linux 9\n\nRocky Linux 8, 9\n\nVPS.Town 如何安装飞牛 (FnOS) 系统？\n\nA: 请参见 如何在 VPS.Town 服务器上安装飞牛 OS 文档。\n\nVPS.Town 为什么总有一些莫名其妙的下行流量？\n\nA: 这是 ARP 流量，属于正常现象。ARP (Address Resolution Protocol) 是一种网络协议，用于内网的网络发现和地址解析，属于正常的网络活动。如有疑虑可以使用 tcpdump 命令进行抓包分析，并开启工单反馈给我们。\n\n公司背景\n\n喵云不是跑路的那家吗？\n\nA：VPS.Town 的运营团队是 MiaoVPS（苏州晔淞信息科技有限公司）的喵云，至今已有五年历史 (2020-03-01)，其他商家的行为与我们毫无关联。","routePath":"/kb/faq","lang":"zh","toc":[{"id":"费用与定价","text":"费用与定价","depth":2,"charIndex":0},{"id":"vpstown-为什么只收一次硬盘安装费","text":"VPS.Town 为什么只收一次硬盘安装费？","depth":3,"charIndex":7},{"id":"vpstown-以后会涨价吗","text":"VPS.Town 以后会涨价吗？","depth":3,"charIndex":97},{"id":"vpstown-官网显示三年-8-折但实际没有","text":"VPS.Town 官网显示三年 8 折，但实际没有？","depth":3,"charIndex":213},{"id":"vpstown-现在有哪些活动和优惠","text":"VPS.Town 现在有哪些活动和优惠？","depth":3,"charIndex":254},{"id":"硬件与性能","text":"硬件与性能","depth":2,"charIndex":320},{"id":"vpstown-为什么-cpu-性能不是很理想","text":"VPS.Town 为什么 CPU 性能不是很理想？","depth":3,"charIndex":327},{"id":"vpstown-cpu-是否可以长时间跑满","text":"VPS.Town CPU 是否可以长时间跑满？","depth":3,"charIndex":412},{"id":"vpstown-以后可以添加硬盘吗","text":"VPS.Town 以后可以添加硬盘吗？","depth":3,"charIndex":496},{"id":"服务政策","text":"服务政策","depth":2,"charIndex":561},{"id":"vpstown-抗投诉吗可以涉-h-吗","text":"VPS.Town 抗投诉吗？可以涉 H 吗？","depth":3,"charIndex":567},{"id":"vpstown-防御多少黑洞条件是什么","text":"VPS.Town 防御多少？黑洞条件是什么？","depth":3,"charIndex":770},{"id":"vpstown-的退款政策是什么","text":"VPS.Town 的退款政策是什么？","depth":3,"charIndex":831},{"id":"vpstown-是否可以-push","text":"VPS.Town 是否可以 PUSH？","depth":3,"charIndex":997},{"id":"技术相关","text":"技术相关","depth":2,"charIndex":1029},{"id":"vpstown-支持什么系统","text":"VPS.Town 支持什么系统？","depth":3,"charIndex":1035},{"id":"vpstown-如何安装飞牛-fnos-系统","text":"VPS.Town 如何安装飞牛 (FnOS) 系统？","depth":3,"charIndex":1207},{"id":"vpstown-为什么总有一些莫名其妙的下行流量","text":"VPS.Town 为什么总有一些莫名其妙的下行流量？","depth":3,"charIndex":1272},{"id":"公司背景","text":"公司背景","depth":2,"charIndex":1426},{"id":"喵云不是跑路的那家吗","text":"喵云不是跑路的那家吗？","depth":3,"charIndex":1432}],"frontmatter":{"date":"2025-03-01T12:00:00.000Z","version":"v0.0.0","description":"VPS.Town 常见问题解答，包括费用与定价、硬件与性能、服务政策、技术相关等用户常见问题。","category":"help","sidebarTitle":"常见问题 (FAQ)"},"version":"","description":"VPS.Town 常见问题解答，包括费用与定价、硬件与性能、服务政策、技术相关等用户常见问题。"},{"title":"官方知识库","content":"这里收录 VPS.Town 的服务条款与隐私协议、社区共建规则、常见问题以及历次维护公告。","routePath":"/kb/","lang":"zh","toc":[],"frontmatter":{"date":"2025-02-28T16:00:00.000Z","updated":"2026-09-30 09:00 +8","sidebarTitle":"知识库首页","description":"VPS.Town 官方知识库：服务条款、隐私协议、社区投稿规则、常见问题与维护公告的统一入口。"},"version":"","description":"VPS.Town 官方知识库：服务条款、隐私协议、社区投稿规则、常见问题与维护公告的统一入口。"},{"title":"VPS.Town 全产品线维护公告 (#M02)","content":"本次计划维护时间为 2025 年 3 月 19 日 9:00 - 当日 18:00（UTC+8）(预估，具体时间请等待通知)。\n\n本文最后更新时间:\n\n存储型实例用户必读：\n数据盘将被格式化，所有数据将永久丢失\n\n必须在维护前完成数据备份\n\n\n所有用户须知：\n维护前请手动执行 shutdown 命令关闭 VPS\n\n系统盘数据原则上不受影响，但建议备份重要数据\n\n维护后如遇异常请立即提交技术工单\n\n09:00 系统停机，缓存数据写入存储\n\n11:00 开始硬件升级和 RAID 重构\n\n14:00 系统启动和功能测试\n\n18:00 预计恢复全部服务\n\n维护范围\n\n影响区域：HK Global 可用区 A\n\n影响产品：全部 VPS 产品线（标准型实例和存储型实例）\n\n维护内容\n\n升级网卡设备至 Mellanox ConnectX-5\n\n升级 HDD 阵列 SSD 缓存盘至 3.84T\n\n存储型实例数据盘重构为\"多组 Raid5 + U.2 缓存读写\"方案\n\n补偿方案\n\n1. 基础补偿\n\n补偿对象：所有受影响用户\n\n补偿时长：至少 3 天（按照 ToS 约定的三倍维护时间）\n\n2. 额外补偿\n\n补偿对象：存储型实例用户\n\n补偿时长：额外 10 天（数据迁移补偿）\n\nVPS.Town 运维团队 2025.03.17","routePath":"/kb/m02-maintenance-announcement","lang":"zh","toc":[{"id":"维护范围","text":"维护范围","depth":2,"charIndex":277},{"id":"维护内容","text":"维护内容","depth":2,"charIndex":335},{"id":"补偿方案","text":"补偿方案","depth":2,"charIndex":432},{"id":"1-基础补偿","text":"1. 基础补偿","depth":3,"charIndex":438},{"id":"2-额外补偿","text":"2. 额外补偿","depth":3,"charIndex":492}],"frontmatter":{"date":"2025-03-17 22:40 +0800","version":"v1.0.0","level":"danger","description":"VPSTown 将于 2025 年 3 月 19 日进行 HK Global 节点硬件维护，升级网卡和存储系统。存储型实例数据盘将被格式化，请务必提前备份数据。","category":"announcements","sidebarTitle":"维护公告 #M02 (2025-03-19)"},"version":"","description":"VPSTown 将于 2025 年 3 月 19 日进行 HK Global 节点硬件维护，升级网卡和存储系统。存储型实例数据盘将被格式化，请务必提前备份数据。"},{"title":"VPS.Town 隐私协议","content":"本文于  更新 (版本 )\n\n更新日志：\n\n2025-02-28：第一版\n\n2025-03-09：更新序言、第二节 \"信息收集范围\"，以更符合我们实际收集的信息范围。\n\n隐私声明\n\nVPS.Town 非常重视您的隐私保护。我们承诺在收集、使用、储存和披露您的信息时，遵循合法、正当、必要的原则，并采取合理的措施保护您的信息安全。\n\n为方便您登录、使用相关服务，以及为您提供更个性化的用户体验和服务，您在使用我们的服务时，我们可能会收集和使用您的相关信息。\n\n我们希望通过本隐私声明向您说明，在使用 VPS.Town 及服务（统称“本服务”）时，我们如何收集、使用、储存和披露您的信息，以及我们为您提供的访问、更新、控制和保护这些信息的方式。本隐私声明与您所使用的 VPS.Town 服务息息相关，希望您仔细阅读。\n\n您使用我们的服务，即意味着您已经同意我们按照本隐私声明收集、使用、储存和披露您的相关信息，以及向您提供的控制和保护措施。\n\n1. 声明适用范围\n\n本隐私政策适用于 VPS.Town 所有服务。\n\n第三方通过 VPS.Town 向您提供的服务，例如服务商通过 VPS.Town 向您提供服务时，收集和使用您的信息的，适用您和第三方之间关于个人信息和隐私的约定。\n\n本隐私声明中的“信息”特指第二条所收集的信息，本隐私政策不适用于您存储在 VPS.Town 系统中的数据。\n\n2. 信息收集范围\n\n为完成 VPS.Town 账户的注册、管理、以及符合法律法规的要求，您需要提交真实、合法、有效的信息。这些信息可能包括但不限于您的昵称、电子邮箱等。\n\n为提供持续服务和保证服务质量，在您使用本服务期间，我们将记录并保存您登录和使用本服务的信息。这些信息包括但不限于您的 IP 地址、浏览器类型、使用的语言、访问日期和时间、用户标识符以及网页浏览记录。\n\n如果您需要在线上申请线下交付或进行产品测试，为履行相关协议，您可能需要提供联系人、联系方式、地址等必要信息。\n\n3. 如何收集信息\n\n3.1 我们通过您主动提交，以及在您使用我们的服务过程中产生相应的记录等方式收集您的信息。\n3.2 我们可能会通过 Cookies 和其他相关技术收集和使用您的信息。我们使用 Cookies 的具体用途包括：\n3.2.1 记住您的身份；例如：Cookies 有助于我们辨认您作为我们的注册用户的身份；\n3.2.2 分析您使用我们服务的情况，以便为您提供更加周到的个性化服务，包括专属客服、推荐等服务；\n3.3 您可以通过浏览器设置拒绝或管理 Cookies。但请注意，如果停用 Cookies，您有可能无法享受最佳的服务体验，某些功能的可用性可能会受到影响。\n\n4. 信息使用\n\n为了向您提供更加优质、便捷、安全的服务，在符合相关法律法规的前提下，我们可能将收集的信息用作以下用途：\n4.1 向您提供服务；\n4.2 满足您的个性化需求。例如，语言设定、位置设定、个性化的帮助服务和指示，或对您和其他用户作出其他方面的回应；\n4.3 服务优化和开发。例如，我们会根据 VPS.Town 系统响应您的需求时产生的信息，优化我们的服务；\n4.4 保护 VPS.Town、VPS.Town 用户和 VPS.Town 的合作伙伴。例如，我们会将您的信息用于身份验证、安全防范、投诉处理、纠纷协调、诈骗监测等用途。例如，您在使用安全功能或其他类似服务时，我们会对恶意程序或病毒进行检测，或为您识别诈骗信息；\n4.5 向您提供与您更加相关的服务。例如，向您提供您可能感兴趣的类似功能或服务等；\n4.6 邀请您参与有关我们产品和服务的调查；\n4.7 其他可能需要使用收集的信息的相关场景，如果使用场景与初始场景无合理的关联性，我们会在使用信息前重新征得您的同意；\n\n5. 信息披露\n\n未经您同意，我们不会与任何无关第三方分享您的信息，以下情形除外：\n5.1 我们可能将您的信息与我们的关联公司、第三方服务提供商、承包商及代理分享，仅用作下列用途：\n5.1.1 提供“2. 信息收集范围”中的相应功能或服务所必需，以及出于“4. 信息使用”中的部分所述目的所必需；\n5.1.2 履行我们在《服务条款》或本声明中的义务和行使我们的权利；\n5.2 随着我们业务的持续发展，我们以及我们的关联公司有可能进行合并、收购、资产转让或类似的交易，您的信息有可能作为此类交易的一部分而被转移。我们将遵守相关法律法规的要求，在转移前通知您，确保信息在转移时的机密性，以及变更后继续履行相应责任和义务。\n5.3 我们还可能因以下原因而披露您的信息：\n5.3.1 遵守适用的法律法规等有关规定；\n5.3.2 遵守法院判决、裁定或其他法律程序的规定；\n5.3.3 遵守相关政府机关或其他有权机关的要求；\n5.3.4 我们有理由确信需遵守法律法规等有关规定；\n5.3.5 为执行相关服务协议或本隐私声明、维护社会公共利益、处理投诉/纠纷，保护我们的客户、我们或我们的关联公司、其他用户或雇员的人身和财产安全或合法权益所合理必需的用途；\n5.3.6 经过您合法授权的情形；\n如我们因上述原因而披露您的信息，我们将在遵守法律法规相关规定及本声明的基础上及时告知您。\n\n6. 信息存储\n\nVPS.Town 收集的有关您的信息保存在 VPS.Town 位于中国大陆境外 (如中国香港特别行政区) 的服务器。\n\n通常，我们仅在为您提供服务期间保留您的信息，保留时间不会超过满足相关使用目的所必须的时间。但在下列情况下，且仅出于下列情况相关的目的，我们有可能需要较长时间保留您的信息或部分信息：\n6.1 遵守适用的法律法规等有关规定；\n6.2 遵守法院判决、裁定或其他法律程序的要求；\n6.3 遵守相关政府机关或其他有权机关的要求；\n6.4 我们有理由确信需遵守法律法规等有关规定；\n6.5 为执行相关服务协议或本隐私声明、维护社会公共利益、处理投诉/纠纷，保护我们的客户、我们或我们的关联公司、其他用户或雇员的人身和财产安全或合法权益所合理必需的用途\n\n7. 信息安全\n\n如果您拥有 VPS.Town 其他账号，在特定场景下，您的 VPS.Town 账号的个人信息可能会与您在 VPS.Town 拥有的其他账户信息相关联。例如，您使用 VPS.Town 账号注册 VPS.Town 账号。\n\n我们努力保障信息安全，以防信息的丢失、不当使用、未经授权阅览或披露。\n7.1 我们使用各种安全技术以保障信息的安全。例如，我们将通过服务器多备份、密码加密等安全措施，防止信息泄露、毁损、丢失；\n7.2 我们建立严格的管理制度和流程以保障信息的安全。例如，我们严格限制访问信息的人员范围，要求他们遵守保密义务；\n7.3 我们重视信息安全合规工作，以业界先进的解决方案充分保障您的信息安全；\n\n但请您理解，由于技术的限制以及可能存在的各种恶意手段，在互联网环境下，即便竭尽所能加强安全措施，也不可能始终保证信息百分之百的安全。您需要了解，您接入我们的服务所用的系统和通讯网络，有可能因我们可控范围外的因素而出现问题。\n\n如果发生个人信息泄露等安全事件，我们会启动应急预案，阻止安全事件扩大，按照《国家网络安全事件应急预案》等有关规定及时上报，并以发送邮件、推送通知、公告等形式告知您相关情况，并向您给出安全建议。\n\n为更有效的保障您的信息安全，我们也希望您能够加强自我保护意识。我们仅在 VPS.Town 直接导致您个人信息泄露的范围内承担责任，因此，请您妥善保管您的账号及密码信息，避免您的个人信息泄露。VPS.Town 账户有安全保护功能，但您也需要妥善保护自己的个人信息，除非您判断认为必要的情形下，不向任何第三人提供您的账号密码等个人信息。\n\n8. 访问与控制\n\n您可以在使用我们服务的过程中，访问、修改和删除您的相关信息。您访问、修改和删除信息的方式将取决于您使用的具体服务。\n\n如您发现我们违反法律法规的规定或者双方的约定收集、使用您的信息，您可以要求我们删除。如您发现我们收集、存储的您的信息有错误的，且无法自行更正的，您也可以要求我们更正。\n\n在访问、修改和删除相关信息时，我们可能会要求您进行身份验证，以保障账户安全。请您理解，由于技术所限、基于法律法规要求，您的某些请求可能无法进行响应。\n基于法律法规要求、保障信息安全等正当事由，您的部分信息可能无法访问、修改和删除。\n\n您可以自行选择撤回对某些非基本功能或服务对您信息处理的同意，并通过联系客服的方式选择注销 VPS.Town 账号。","routePath":"/kb/privacy-policy","lang":"zh","toc":[{"id":"隐私声明","text":"隐私声明","depth":2,"charIndex":85},{"id":"1-声明适用范围","text":"1. 声明适用范围","depth":2,"charIndex":420},{"id":"2-信息收集范围","text":"2. 信息收集范围","depth":2,"charIndex":594},{"id":"3-如何收集信息","text":"3. 如何收集信息","depth":2,"charIndex":838},{"id":"4-信息使用","text":"4. 信息使用","depth":2,"charIndex":1130},{"id":"5-信息披露","text":"5. 信息披露","depth":2,"charIndex":1574},{"id":"6-信息存储","text":"6. 信息存储","depth":2,"charIndex":2160},{"id":"7-信息安全","text":"7. 信息安全","depth":2,"charIndex":2500},{"id":"8-访问与控制","text":"8. 访问与控制","depth":2,"charIndex":3193}],"frontmatter":{"date":"2025-03-09 01:41 +8","version":"v9.0.1","description":"本隐私政策适用于 VPS.Town 所有服务，并与您所使用的 VPS.Town 服务息息相关，希望您仔细阅读。","category":"policies","order":3,"sidebarTitle":"隐私协议"},"version":"","description":"本隐私政策适用于 VPS.Town 所有服务，并与您所使用的 VPS.Town 服务息息相关，希望您仔细阅读。"},{"title":"VPS.Town 服务条款 (ToS)","content":"本文于  更新 (版本 )\n\n更新日志：\n\n2025-02-28 初版发布。\n\n2025-04-10 重大修订 (v3.0.1)\n修订第 8.6 条 (退款政策):\n新增 24 小时内全额退款 (细则 8.6.1)。\n\n新增 原路退款政策 选项，请参见 (细则 8.6.3 和 细则 8.6.4)。\n\n新增 退款至账户余额 选项 (剩余时长 ≥50% 时, 按比例全额退至余额, 细则 8.6.5)。\n\n明确 退款通用条款 (细则 8.6.5)，包括网络资源使用量上限 (不超过 20%)、手续费说明、补偿时长不计入退款等情形。\n\n新增 详细的 IP 费用细则 (细则 8.6.6)，规定了 72 小时内免费更换 IP 的条件（账户及服务限制），以及 72 小时后付费更换 IP 的收费规则。\n\n\n补充第 8.7 条 (优惠券和优惠码)：\n使用了标注为“不可退款”的优惠码或参与了此类活动的订单，将 不适用第 8.6 条中的任何退款政策 (细则 8.7(c))。\n\n\n\n2025-07-08 小修订 (v3.0.2)\n新增 附加服务费用 (细则 8.2.1)。\n\n新增 附加服务细则 (细则 8.2.2)。\n\n\n2026-03-11 重大修订 (v3.1.0)\n新增 第 15 条 (附加类资产型服务 ALR)，引用独立的《ALR 服务条款》文档，规定客户通过购买、绑定或使用 ALR 服务即视为同意该条款。\n\n该服务条款是约束由 Suzhou Yesong Information Technology Co., Ltd.(VPS.Town) 提供的所有产品和服务，以下是条款和条件：\n\n当事双方及术语介绍- 本协议所提及的当事人的定义如下：\n\nSuzhou Yesong Information Technology Co., Ltd. 是网站 VPS.Town （下称“VPS.Town”或“本站”）的拥有者及服务提供商。就本协议中，以下提及的网站或服务，包含各类数据传输服务，主机或网站托管服务，均称作“网站”或“服务”。\n\n您，VPS.Town 客户 - 作为我们的客户或网站服务的使用者， 本协议可能使用任意第二人称代替。\n\n请阅读下面的服务条款和条件。通过成功购买 VPS.Town 服务，即表示您同意并遵守本协议的所有条款和条件（协议）。您应该打印或以其他方式保存该协议，作为未来可引用的副本。如果您并非认同所有本协议的条款和条件，即您不同意此服务和条款，请勿购买 VPS.Town 的产品和服务。VPS.Town 仅在您同意此服务条款后，为您提供服务。任何使用 VPS.Town 提供的服务的行为，都认为您知晓并同意以下服务条款。\n\n1. 服务\n\n1.1. 在您选购 VPS.Town 服务之前，您可以看到我们的提供的一系列套餐。您可以从罗列的服务中选择所需套餐。所有您选择的服务，均适用此条款。 在您订购服务后，我们认为您接受此使用条款，VPS.Town 将发送服务订购确认邮件。VPS.Town 保留以任何原因拒绝为您提供任何服务的权利。尽管我们的正常运行时间保证，VPS.Town 也有权在紧急状况中断服务进行定期维护需要。您可以随时订购额外的服务。所有的额外服务在下文被视为“服务”。所提供的所有服务都视情况而定，并适用于本协议的所有条款和条件。\n\n2. 用户协议修订\n\n本协议包含完整的适用于您购买的 VPS.Town 服务条款和使用条件（定义如下）。VPS.Town 可以在任何时间修改本协议的条款，包括费用（定义见下文）同时，VPS.Town 有义务向用户告知条款的更新，包括但不限于电子邮件通知、网站通知和社交媒体的通知。\n\n2.1. 我们可能随时修改本协议。您同意我们保留这样做的权利。您同意我们有单方面这样做的权利。更新的版本将在发布后立即取代任何以前的版本，除非修订版和之前版本一致，之前的版本不再具备法律效力。本协议的任何第三方修改版本均被视为无效。\n\n2.2. 我们同意，如果我们协议有任何改变，我们将在本协议的顶部更改“最后修改日期”。您同意定期重新访问该网页。您同意注意最后修订本协议的日期。如果“上次修改”日期仍从你最后一次查看本协议不变，那么你可以假定该协定已自上次你查看时它已经改变了。如果“上次修改”日期已经改变，那么你可以肯定协议中有关条款已被更改。\n\n2.3. 弃权 – 如果您没有定期查看此协议, 您自行承担忽略此协定更改的责任。您拥有随时查看此修订版本的权利。由于您自己忽略查看的原因，VPS.Town 不负任何责任。\n\n3. 协议和取消政策期限\n\n3.1. 初始期限开始于确认你的订单或服务，并收到合法的资金的时间。这个期限的长度是由您选择的，并且在您订购我们的服务时应注明。本协议不得终止您的初始期间，除了 VPS.Town 发生违约。\n\n3.2. VPS.Town 也可以在任何时间以任何理由或无理由终止本协议 （“无故终止”）。在这种情况下，VPS.Town 会为您提供书面通知。\n\n3.3. 如果 VPS.Town 根据本协议任何条款概述取消本协议，没有根据 3.2 款终止的原因外，VPS.Town 不会退款给您。若您需要终止服务，您有义务在预付费服务生效前取消订阅。在由 VPS.Town 发起的终止情况，所有预付费用将被没收，概不退还。这意味着本协议的终止并不解除支付任何费用。\n\n3.4. 除此之外，VPS.Town 拥有终止此协议中任意部分的权利。当以下情况发生，VPS.Town 可以终止你的服务：\n（a）违反了可接受使用政策所描述的内容；\n（b）侵犯或违反任何第三方的知识产权或隐私权或版权；\n（c）不遵守任何适用的法律、法规或条例；\n（d）已经上传，发布或传播任何 VPS.Town 认为违法或高风险的图像、文本、图形、编码或视频。VPS.Town 拥有自由裁量权，本协议中的任何内容的目的是，VPS.Town 不负有任何责任或义务来监视或审查您的内容，或在任何时候你的用户上传或发布的内容。你仍然对你的内容负责，以及对由此产生的任何责任负责。\n\n4. 账户设置\n\n4.1. 注册账户时，您将被要求填写登录账户（电子邮件）和密码。您完全负责维护您的用户名和密码的保密性以及使用这些凭据的所有活动的机密性。您同意立即通知我们当任何未经授权的访问使用您的帐户或任何其他违反安全的情况。\n\n4.2. 您必须为我们提供一个主要的电子邮件地址，并保证其可用性。所有通知和我们之间的通信将被发送到您提供的电子邮件地址，因此，您需要保持这个地址畅通。请确保我们的域名 VPS.Town 和其他我们所告知的邮件发送地址域名，不包括在由你或你的邮件提供商使用的任何垃圾邮件阻止列表之内。\n\n4.3. 提供任何种类的错误或不准确的联系信息，甚至是虚假/欺诈信息，可能会导致你的帐户被终止。\n\n4.4. 当存在以下情况时，VPS.Town 有权拒绝提供服务并立即终止您对 VPS.Town 账户的访问：\n\n(a) 不符合 VPS.Town 提供服务的条件；\n(b) 曾经在 VPS.Town 相关业务或 VPS.Town 合作伙伴处未能履行合约；\n(c) 曾经在 VPS.Town 相关业务或 VPS.Town 合作伙伴处违反了相关的条款和条件；\n(d) 根据现有数据我们认为您可能会拒绝履行合约或违反我们的条款或条件。\n\n4.5. 你负责您的帐户所有活动及变更。因此，我们强烈建议您妥善设置严格的保密措施来保管您的账户/密码等信息。我们默认你拥有管理自己服务的技术能力。你需要负责任何你帐号更改导致的问题，包括但不限于，造成你的个人数据的损害，VPS.Town 网站和或设备的损害，和任何其他网站的损害。\n\n5. 知识产权\n\n5.1. 在你和 VPS.Town 之间，VPS.Town 声明它不拥有你提供的使用在你的服务和/或的所有权或内容（包括但不限于文字、软件、音乐、声音、视听作品、电影、图片、动画、视频和图形，即“你的内容”）。您使用 VPS.Town 产品和/或服务，以特此授予 VPS.Town 使用你的内容，通过互联网广播传输非独家的、世界范围的、免版税许可、复制、制作衍生作品、展示、表演。\n\n5.2. 本协议不构成许可使用 VPS.Town 服务标志或任何其他贸易徽章。没有 VPS.Town 事先书面同意的使用任意 VPS.Town 服务标志或任何其他贸易标志是严格禁止的。\n\n5.3. 你知道，即使是名义的损害，也可能需要大量的法律费用，旅行费用，成本和其他金额。你同意你将支付所有这些费用和费用。\n\n6. 内容及可接受使用政策\n\n6.1. 您同意遵守 VPS.Town 的可接受使用策略，VPS.Town 在网站上张贴修改后的政策，并保留在任何时间修改可接受使用策略的权力，同时，VPS.Town 有义务向用户告知可接受使用策略的更新，包括但不限于电子邮件通知、网站通知和社交媒体的通知。您同意定期访问 VPS.Town 网站并查看最新的可接受使用策略，在任何可接受使用策略更改日志后继续使用 VPS.Town 服务，则代表您接受新的可接受使用策略并受到它的约束。如果最终用户的行为违反服务条款或者可接受使用策略，VPS.Town 将有权在任何时间中止您对服务的访问。\n\n6.2. VPS.Town 不会主动侦测最终用户在 VPS.Town 服务上所使用的内容，虽然 VPS.Town 可以自行决定，以技术手段监测客户在 VPS.Town 网络上所使用的服务，并在法律、法规或政府组织要求的情况下透露您账户的任何必要信息。VPS.Town 将调查侵犯第三方权利或违反可接受使用策略的投诉。VPS.Town 将试图减少对 VPS.Town 服务的滥用。VPS.Town 将有权与执法机关合作，并保留通知该机关的权力，如果执法机关怀疑您和您的最终用户进行违反的您和服务器所在地区法律、法规和相关政策的活动。本节包含的所有条款，是为了授予第三方权利，但没有第三方有权强制执行本协议的任何条款。\n\n6.3. 您必须同意 VPS.Town 将不承担您和您的最终用户任何违反可接受使用策略和您和服务器所在地区法律、法规和相关政策的行为，这包括数字千年版权法。\n\n6.4. VPS.Town 可自行决定终止您对服务的访问，并终止本协议。这是因为您或您的最终用户、下游客户违反了服务条款和可接受使用策略。\n\n6.5. VPS.Town 对于儿童色情问题非常重视，未成年人使用我们的服务存在潜在的危害，这应当是完全禁止的，然而，其监护人可以授权未成年人有限制地使用 VPS.Town 的服务。任何可能被认为是儿童色情的内容都将被删除并禁止访问，这适用于 VPS.Town 的云主机和托管服务。任何通过 VPS.Town 托管、访问儿童色情的客户都将被立即删除服务并通知当地执法机关。您同意和 VPS.Town 合作阻止儿童色情内容的的访问，任何儿童色情内容，或招揽、引诱或诱使未成年人的性活动或者猥亵行为也是严格禁止的，并将被视为同儿童色情相同问题。VPS.Town 有权对在 VPS.Town 网站上托管、访问儿童色情内容的客户提起诉讼。\n\n6.6. 如果您怀疑 VPS.Town 网络被托管了儿童色情内容，我们鼓励您立即向 VPS.Town 的滥用投诉邮箱 abuse@yesongit.com 或者通过客户中心的工单系统向滥用投诉部门投诉，并包括客户的文件名或 URL（或其他位置点）、受害者（如果知道的话）、出生日期、生产日期以及有关可疑图像（多个）和其他任何信息。或者，您可以使用 CyberTipline 报告可疑的儿童色情制品，涉及不由 VPS.Town 托管的儿童色情内容应该直接向执法部门或者该网站投诉：https://www.asacp.org/index.html?content=report.\n\n6.7.我们尊重各方的知识产权，并已通过了关于基于数字千年版权法案重复版权侵权者终止政策。我们的重复侵权终止政策的副本可应要求提供给我们的客户。\n\n7. 零容忍垃圾邮件政策\n\n7.1. 对于任何垃圾邮件在 VPS.Town 网络上的使用是严格禁止的，如果您和您的最终用户在 VPS.Town 网络上使用 SPAM，我们有权随时终止您的服务。\n\n7.2. VPS.Town 在网站上张贴修改后的政策，并保留在任何时间修改反垃圾邮件政策的权力。您同意定期访问 VPS.Town 网站并查看最新的反垃圾邮件政策，在任何反垃圾邮件政策更改日志后继续使用 VPS.Town 服务，则代表您接受新的反垃圾邮件政策并受到它的约束。如果最终用户的行为违反服务条款或者反垃圾邮件政策，VPS.Town 将有权在任何时间中止您对服务的访问。\n\n8. 支付\n\n8.1. 支付服务\n\n支付服务涵盖了 VPS.Town 的整个服务周期，并遵守本协议，除非您的服务终止，VPS.Town 将会在您的付款周期超时后删除您的服务，这是一个自动过程并且不可逆转。\n\n8.2. 服务费用\n\n除非您和我们特别协商，并经过书面协定，否则您选择的服务的安装费用和循环付款费用，应在在线订购时作为初始费用一并支付，所有设置/安装费用和特殊设置费用不予退还。\n\n服务费用需要提前支付，没有及时支持服务费用时，您的服务可能会暂时或者永久删除。\n\n8.2.1. 附加服务费用\n\n为了满足用户需求，VPS.Town 可能会以附加服务费用的形式提供服务，附加服务费用包括但不限于：\n\n(a) IP 更换费用：\n(i) 如果 IP 地址被 GFW 封禁，您除了需要支付 $1 USD (或等值货币) 的基本服务费用外，还需要支付额外 $3 USD (或等值货币) 的资源处理费用。\n\n(ii) 如果 IP 地址未被 GFW 封禁 (至中国大陆的 ICMP, TCP 连接正常)，您仍需要支付 $1 USD (或等值货币) 的基本服务费用。\n\n8.2.2. 附加服务细则\n\n为了规范附加服务的计算和使用，VPS.Town 制定了附加服务细则，附加服务细则包括但不限于：\n\n(a) 如果满足以下任一条件，您将无法更换 IP 地址：\n(i) IP 地址在您使用期间被 Spamhaus 等 IP 信誉黑名单封锁的；\n\n(ii) IP 地址不满足您个人使用需求 (包括但不限于 GeoIP 数据库定位不符合需求、IP 段不符合个人需求) 的。\n\n8.3. 付款方式\n\n在注册时，您必须选择一个付款方式，VPS.Town 保留与第三方签订协议来处理所有付款请求的权力。这样的第三方可能施加额外的条款和条件来管理支付处理。如果你到期为及时支付所应支付的服务费用，VPS.Town 将保留权力在法律允许的范围内收取一定滞纳金的权力。\n\n8.4. 税款\n\n您同意支付任何由于使用本服务而造成的税款，包括个人所得税、增值税或销售税。VPS.Town 不负责由于您使用本服务并使用银行支票、信用卡、资金不足以及任何您与您的金融机构产生的任何费用。VPS.Town 应该得到全额付款，如果由于税收、汇率差异、银行收费、转账收费等产生额外费用，您需要自行支付。\n\n8.5. 其他代收费\n\n如果发生了涉及到法律诉讼、仲裁、调解等其他情形的，您同意支付从 VPS.Town 产生的任何律师费用、代收手续费和其他费用。同时，VPS.Town 不会退还任何安装费用、特殊设定费用、剩余的预付费费用。\n\n8.6. 退款政策\n\nVPS.Town 会根据您购买的产品类型和支付方式，提供不同的退款政策，具体条款如下：\n\n8.6.1. 24 小时内全额退款\n\n您在购买任何产品后的 24 小时内 可申请 全额退款，可获得相当于订单支付总额（含设置费，如有）100% 的全额退款。\n\n8.6.2. 原路退款 (按月付费产品)\n\n按月付费产品的 原路退款 政策如下：\n\n(a) 对于付款周期为 月付 的产品/服务，客户可在付款之日起 168 小时 (7 天) 内申请退款。\n\n(b) 退款金额将基于 实际使用时长 (不包含故障时间) 进行计算，并 扣除一定比例手续费。\n\n(c) 计算公式：退款金额 = 订单支付金额（含设置费） * （实际使用时长 / 总服务时长） * 90%。\n\n(d) 退款周期内如果产品/服务的 IP 地址被 GFW 封禁，则需要额外扣除 IP 闲置费用，具体规则请参考 第 8.6.6 条。\n\n8.6.3. 原路退款 (非按月付费产品)\n\n非按月付费产品 (如年付、季付、半年付等) 的 原路退款 政策如下：\n\n(a) 对于付款周期为 非月付 的产品/服务，客户可在付款之日起 720 小时 (30 天) 内申请退款。\n\n(b) 退款金额将基于 实际使用时长 (不包含故障时间) 进行计算，并 扣除一定比例手续费。\n\n(c) 计算公式：退款金额 = 订单支付金额（含设置费） * （实际使用时长 / 总服务时长） * 95%。\n\n(d) 退款周期内如果产品/服务的 IP 地址被 GFW 封禁，则需要额外扣除 IP 闲置费用，具体规则请参考 第 8.6.6 条。\n\n(e) 退款金额小于 $5 USD (或等值货币) 时，为了弥补交易处理、资源配置等相关成本，将仅允许退款至账户余额。\n\n(f) 因 IP 地址的 IP 段/GeoIP 数据库定位不符合需求 (不包括被 GFW 封禁) 导致退款的，将仅允许退款至账户余额。\n\n8.6.4. 退款至账户余额\n\n(a) 若产品/服务的 剩余有效时长 大于或等于总服务时长的 50%，您可选择将退款转入您的 VPS.Town 账户余额。\n\n(b) 计算公式：退款金额 = 订单支付金额（含设置费） * （剩余有效时长 / 总服务时长） * 100%。\n\n(c) 此选项无需扣除 上述第 8.6.2 或 8.6.3 条 所述的手续费。\n\n(d) 退款周期内如果产品/服务的 IP 地址被 GFW 封禁，则需要额外扣除 IP 闲置费用，具体规则请参考 第 8.6.6 条。\n\n8.6.5. 退款通用条款\n\n(a) 除非我司另有通知，否则申请任何形式的退款（包括全额退款、比例退款及退款至余额），客户账户下的网络资源使用量（如流量、带宽等）不得超过总分配额度的 20%。若超出此限制，我司保留拒绝退款申请或调整退款金额的权利。\n\n(b) 按 上述第 8.6.2 或 8.6.3 条 规定进行的退款会产生手续费（分别为 10% 和 5%），该费用是为了弥补交易处理、资源配置等相关成本。选择按 上述第 8.6.4 条 退款至余额则免收手续费。\n\n(c) 因系统维护、故障或其他原因由我司补偿给您的 额外服务时长 (实际故障时间除外)，不纳入退款计算范围，不可折算为退款金额。\n\n(d) 以下情况不适用退款：\n - (i) 存在违反可接受使用政策 (本协议第 6 条) 的行为；\n - (ii) 参与 DDoS 攻击或发送垃圾邮件 (本协议第 7 条)；\n - (iii) 使用了特殊的优惠码 (具体请参考本协议 第 8.7 条) ；\n - (iv) 同一客户本季度 (所在月份计) 累计退款次数 ≥2 次 或 当年 (所在年份计) 累计退款次数 ≥3 次。\n\n8.6.6. IP 费用细则\n\n(a) 在产品/服务开通后的 72 小时 (3 天) 内，如果 IP 地址被 GFW 封禁，允许免费更换 IP 地址，限制如下：\n(i) 每账户每月仅限 3 次，如超过 3 次，则需要按照 8.6.6(b)(i) 规则付费更换 IP 地址。\n\n(ii) 每服务仅限 1 次，如超过 1 次，则需要根据情况按照 8.6.6(b) 规则付费更换 IP 地址。\n\n\n(b) 在产品/服务开通后的 72 小时 (3 天) 后，您也可以选择付费更换 IP 地址，具体规则请参见 8.2.1. 附加服务费用。\n\n8.7. 优惠券和优惠码\n\nVPS.Town 可能不定时提供优惠券或优惠码（以下统称“优惠码”），其使用须遵守以下条款：\n\n(a) 适用限制：\n(i) 特定优惠码 可能 (视具体情况而定) 仅适用于客户的首次订购，若您已订购过 VPS.Town 的任何服务，该类优惠码可能无法生效。\n\n(ii) 特定优惠码 可能 (视具体情况而定) 不适用于产品或服务的升级。\n\n(iii) 每个优惠码的具体适用范围、有效期限及其他使用条件，以 VPS.Town 发放时公布的说明或规则为准。\n\n\n(b) 禁止滥用：\n(i) 严禁任何形式的滥用优惠码行为，包括但不限于通过技术手段规避限制、重复注册账户以获取新客户优惠等。\n\n(ii) 对于任何 试图或实际滥用 优惠码的账户，VPS.Town 有权单方面采取措施，包括但不限于 撤销优惠、要求补足差价、暂停服务，甚至 终止账户，并保留追究相应责任的权利。\n\n\n(c) 退款政策关联：\n(i) 若您使用的优惠码或参与的促销活动 已明确标注为“不可退款”（Non-refundable） 或包含类似限制性说明，则根据 本协议第 8.6.5(d)(iii)条，使用了该优惠码或参与了该活动的订单 将不适用本协议第 8.6 条所规定的任何退款政策。\n\n\n(d) 一般性质：\n(i) 除非另有明确说明，所有优惠码 不可转让、不可累积使用（特殊活动除外）、不设找零、不可兑换现金。\n\n8.8. 特殊退款处理\n\n(a) 余额退款不可提现，仅可用于后续消费；\n\n(b) 争议性退款将扣除争议处理费（最低 $15 USD 或等值货币）；\n\n(c) 滥用退款政策将导致账户永久封禁\n\n9. 备份措施 & 数据丢失\n\n9.1. 您同意您所使用的服务数据安全由您维护。VPS.Town 会通过必要措施，来保护您数据的安全。然而，这仍然需要您做好您数据的安全措施。我们不能保证在发生数据丢失时我们能够完整恢复您的服务。因此，我们强烈建议您建立自己的日常备份程序，以确保您数据的安全。\n\n9.2. 如果您希望 VPS.Town 提供日常的备份服务，这是本协议所不提供的服务，请与我们联系，我们提供多种常规服务之外的备份服务，您可以选择其中一种作为解决方案，我们将通过一个单独的书面协议提供所有服务。\n\n10. 资源使用 & 安全\n\n10.1. VPS.Town 没有对每个账户可使用的系统资源及硬件设限进行硬性限制。我们不主动停用用户账户，除非用户所使用的资源/设施大大超过可接受的使用水平，或者维持该客户的使用会严重影响其他客户的体验等。\n\n10.2. 除非法律明确允许，不得反向工程，反编译，反汇编本网站和/或材料的衍生作品。您同意不使用任何自动设备或手动过程监控或复制本网站或材料，不会使用任何设备，软件，计算机代码或病毒干扰或企图干扰或破坏我们的服务和网站。\n\n10.3. 安全 任何违反网站和/或服务的安全都是被禁止的，并可能导致刑事和民事责任。您同意不以此类活动违反或企图改变或操纵硬件和软件，危及服务器，或任何其他未经授权的使用。您被禁止从事：\n\n任何形式的未经授权的访问或使用数据，系统或网络，包括网站和/或服务。\n\n对任何用户的服务，主机或网络进行未经授权的干扰。\n\n恶意程序引入网络或服务器（例如病毒和蠕虫），包括网站和/或服务。\n\n规避任何主机，网络或账户的用户和安全认证。\n\n利用我们的服务为危及安全或其它网站。\n\n在您参与任何违反系统安全的情况下，我们有权为其他网站的系统管理员发布关于您的信息，以协助解决安全事件，我们也将与任何执法机构调查犯罪及违反系统或网络的安全性。此外，这些安全规定的违反可能会根据本协议第 3 节，终止您的帐户。\n\n10.4. 流量使用 您每月的数据传输量是由您购买特定的服务来决定。如果您的使用超过你的每月限额，您的服务将会被限速至 5Mbps，并根据不同的产品或服务在下个月月初或您的账单日恢复。未使用的流量不结转到下个月的流量。\n\n10.5. 公平使用政策我们提供特定的服务或订阅给我们的客户，我们期望用户按照描述来使用每一项服务，这是指整个任何给定的计费周期来定义正常，公平，合理的使用。当我们判断某一个用户不合理使用服务或订阅，我们可能会采取行动，以减轻负面影响，这些手段包括但不限于连接限制和访问限制。不公平的使用包括但不限于以下内容：\n\n除 VPS.Town 官方提供的产品转移(PUSH)服务外的转借、泄露、二次销售 VPS.Town 账户或服务。\n\n不间断使用各类型 P2P、BT、PT 下载服务。\n\n长时间在单一资源提供点上运行消耗大量资源的程序。\n\n在资源提供点上进行违反资源点所在国家或地区相关法律法规的行为。\n\n11. 正常运行时间保证\n\n11.1. VPS.Town 会为您提供服务等级协议，以保证我们的服务一定的可用性。当您需要额外的 SLA 时，请与我们联系，这将作为本协议额一部分引入并作为不可或缺的一部分。\n\n12. 价格变化\n\n您支付的服务在一定时间内不会改变价格。我们保留在任何时候更改 VPS.Town 的服务价格，恕不另行通知，并保留修改提供给用户的资源数量的权利。\n\n此外，如果我们因本协议第 3.2 段终止了您的服务，而我们在未来决定再次向您提供服务，您之前的费用将不被计入到新服务中，您仍然需要缴纳服务费用，并检查相关费用的明细，这是你的责任。VPS.Town 不会自动更新你的计划，所有的升级或降级将根据您的要求进行，可能包括修改费或要求与我们联系。\n\n13. 保障\n\n您同意维护，保障，并维护 VPS.Town 及其关联公司，免受任何及所有债权债务，包括合理的律师和专家费用，涉及到：\n\n违反您在本协议项下约定而产生的;\n\n您使用服务而产生的;\n\n所有的行为，并由您的用户名和密码发生的活动而产生的;\n\n任何物品或服务的出售、与您的内容或您的信息和数据的广告;\n\n包含您的内容或你的信息和数据中的任何诽谤，中伤或非法的材料;\n\n任何索赔或论点，即您的内容或你的信息和数据侵犯任何第三方的专利，版权或其他知识产权或违反隐私或公开任何第三方的权利;\n\n任何第三方的访问或使用您的内容或您的信息和数据;\n\n违反任何适用的可接受使用政策;\n\n您保证并声明：\n1）您的内容与标题符合 EEA 法律规定\n2）在您的内容中描述所有客户在 18 岁以上；\n3）您的内容不包含构成儿童色情，淫秽，暴力的真实描述，或在 EEA 不合法的任何图像。\n\n14. 无额外保障\n\n您明确同意，您对服务的使用是您自行承担的风险。VPS.Town 明确拒绝任何形式明示或默示的保修，包括所有的担保，包括但不限于适销性的隐含担保特定用途，所有权和非侵权。VPS.Town 不保证该项服务会满足您的需求，或者说，这些服务将不中断，安全或无错误。有关宣传材料及发表任何言论都应被视为广告引用，并且不保证。您理解并同意，任何使用您的任何服务和/或数据下载或通过服务所获得的使用由您自行决定，风险自负，而你将是单方承担损害您的计算机系统或损失数据的结果和风险。\n\nVPS.Town 可能会提供不属于服务（“第三方服务或软件”）的一部分，第三方产品，服务和/或软件提供给您。VPS.Town 无法控制第三方服务或软件的内容。任何第三方服务或软件的使用，您将个人独自承担风险并受您与第三方达成的单独协议的条款和条件的限制。\n\nVPS.Town 不提供有关任何产品和服务的保修，如本条例更新，恕不另行通知。\n\n最大责任限制：本公司累计责任不超过客户最近三个月实际支付费用。\n\n15. 附加类资产型服务（ALR）\n\n15.1. 定义\n\nAsset-Like Resources (ALR) 是 VPS.Town 提供的一次性买断付费服务。客户理解并同意，ALR 仅为服务资源的使用权，不构成法律意义上的资产、财产或所有权，亦不构成任何投资工具或金融产品。\n\n15.2. 条款同意\n\n客户通过购买、绑定或使用 ALR 服务，即视为已阅读、理解并同意遵守《ALR 服务条款》的全部内容。该条款构成本协议不可分割的组成部分。\n\n15.3. 冲突解决\n\n如《ALR 服务条款》与本协议其他条款存在冲突，就 ALR 相关事项以《ALR 服务条款》为准。\n\n本文最后更新时间\n\n于  更新 (版本 )","routePath":"/kb/terms-of-service","lang":"zh","toc":[{"id":"1-服务","text":"1. 服务","depth":2,"charIndex":1126},{"id":"2-用户协议修订","text":"2. 用户协议修订","depth":2,"charIndex":1388},{"id":"3-协议和取消政策期限","text":"3. 协议和取消政策期限","depth":2,"charIndex":1893},{"id":"4-账户设置","text":"4. 账户设置","depth":2,"charIndex":2519},{"id":"5-知识产权","text":"5. 知识产权","depth":2,"charIndex":3189},{"id":"6-内容及可接受使用政策","text":"6. 内容及可接受使用政策","depth":2,"charIndex":3547},{"id":"7-零容忍垃圾邮件政策","text":"7. 零容忍垃圾邮件政策","depth":2,"charIndex":4973},{"id":"8-支付","text":"8. 支付","depth":2,"charIndex":5261},{"id":"payment-service","text":"8.1. 支付服务","depth":3,"charIndex":5268},{"id":"installation-fee-and-recurring-payment-fee","text":"8.2. 服务费用","depth":3,"charIndex":5365},{"id":"additional-service-fee","text":"8.2.1. 附加服务费用","depth":4,"charIndex":5498},{"id":"additional-service-details","text":"8.2.2. 附加服务细则","depth":4,"charIndex":5742},{"id":"payment-method","text":"8.3. 付款方式","depth":3,"charIndex":5940},{"id":"taxes","text":"8.4. 税款","depth":3,"charIndex":6082},{"id":"attorney-fees-collection-fees-and-other-fees","text":"8.5. 其他代收费","depth":3,"charIndex":6241},{"id":"refund-policy","text":"8.6. 退款政策","depth":3,"charIndex":6356},{"id":"8.6.1","text":"8.6.1. 24 小时内全额退款","depth":4,"charIndex":6412},{"id":"8.6.2","text":"8.6.2. 原路退款 (按月付费产品)","depth":4,"charIndex":6492},{"id":"8.6.3","text":"8.6.3. 原路退款 (非按月付费产品)","depth":4,"charIndex":6759},{"id":"8.6.4","text":"8.6.4. 退款至账户余额","depth":4,"charIndex":7175},{"id":"8.6.5","text":"8.6.5. 退款通用条款","depth":4,"charIndex":7420},{"id":"8.6.6","text":"8.6.6. IP 费用细则","depth":4,"charIndex":7910},{"id":"coupons-and-promotional-codes","text":"8.7. 优惠券和优惠码","depth":3,"charIndex":8176},{"id":"special-refund-processing","text":"8.8. 特殊退款处理","depth":3,"charIndex":8779},{"id":"9-备份措施--数据丢失","text":"9. 备份措施 & 数据丢失","depth":2,"charIndex":8875},{"id":"10-资源使用--安全","text":"10. 资源使用 & 安全","depth":2,"charIndex":9130},{"id":"11-正常运行时间保证","text":"11. 正常运行时间保证","depth":2,"charIndex":10124},{"id":"12-价格变化","text":"12. 价格变化","depth":2,"charIndex":10228},{"id":"13-保障","text":"13. 保障","depth":2,"charIndex":10458},{"id":"14-无额外保障","text":"14. 无额外保障","depth":2,"charIndex":10847},{"id":"alr","text":"15. 附加类资产型服务（ALR）","depth":2,"charIndex":11296},{"id":"alr-definition","text":"15.1. 定义","depth":3,"charIndex":11315},{"id":"alr-acceptance","text":"15.2. 条款同意","depth":3,"charIndex":11436},{"id":"alr-conflict","text":"15.3. 冲突解决","depth":3,"charIndex":11518},{"id":"本文最后更新时间","text":"本文最后更新时间","depth":2,"charIndex":11580}],"frontmatter":{"date":"2026-03-11 00:00 +8","version":"v3.1.0","description":"VPS.Town 服务条款 (ToS)，请仔细阅读本服务条款和条件。通过成功购买 VPS.Town 服务，即表示您同意并遵守本协议的所有条款和条件（协议）。","category":"policies","order":1,"sidebarTitle":"服务条款 (ToS)"},"version":"","description":"VPS.Town 服务条款 (ToS)，请仔细阅读本服务条款和条件。通过成功购买 VPS.Town 服务，即表示您同意并遵守本协议的所有条款和条件（协议）。"},{"title":"阅读导览","content":"📘 官方知识库\n\n📚 教程中心\n\n💫 活动中心\n\n⛵ VPS.Town 官方社媒矩阵\n\nTelegram 官方聊天群组\n\nTelegram 官方通知频道\n\nTelegram 官方投稿 Bot\n\nNodeseek 官方社媒账号\n\nNodeLoc 官方社媒账号\n\n若有任何紧急的问题或建议，请在 Telegram 官方聊天群组中私聊管理员。\n\n如有任何技术问题，请直接在主站中发送技术工单，我们将尽快解决您的问题。\n\n如果您发现了安全漏洞，请优先通过 Telegram 官方投稿 Bot 联系我们，如果 24 小时内没有回复，请直接在主站中发送技术工单 / 在官方 Telegram 群组中联系管理员。\n\n对于书面的建议意见、社区稿件投稿，请联系 Telegram 官方投稿 Bot ，我们会认真倾听和对待每一条建议。\n\n🌐 RSS 订阅\n\nVPS.Town 官方知识库\n\nVPS.Town 教程中心\n\nVPS.Town 活动中心\n\n🛠️ 版权声明\n\n本网站由 Suzhou Yesong Information Technology Co., Ltd. 运营，保留所有内容的版权，未征得同意请勿擅自转载。","routePath":"/start","lang":"zh","toc":[{"id":"kb","text":"📘 官方知识库","depth":2,"charIndex":0},{"id":"guide","text":"📚 教程中心","depth":2,"charIndex":10},{"id":"event","text":"💫 活动中心","depth":2,"charIndex":19},{"id":"community","text":"⛵ VPS.Town 官方社媒矩阵","depth":2,"charIndex":28},{"id":"-rss-订阅","text":"🌐 RSS 订阅","depth":2,"charIndex":362},{"id":"️-版权声明","text":"🛠️ 版权声明","depth":2,"charIndex":419}],"frontmatter":{"date":"2025-02-28T16:00:00.000Z","updated":"2026-09-30 09:00 +8","version":"v0.0.1","description":"VPS.Town 文档中心阅读导览：快速找到官方知识库、教程中心与活动中心，以及官方社群、RSS 订阅与联系方式。"},"version":"","description":"VPS.Town 文档中心阅读导览：快速找到官方知识库、教程中心与活动中心，以及官方社群、RSS 订阅与联系方式。"}]