20250418 更新:已升级至 Xbord+XrayR 方案半年,体验很不错,推荐
强烈推荐阅读 Github | XTLS / Xray-core,包含服务器安装核心、服务器一键脚本、服务器面板推荐、适用客户端推荐等等

参考文章:https://xtls.github.io/document/

SSH 远程登录 VPS

推荐 terminal:Tabby

  • 交互现代化
  • 内置 SFTP
  • 有很多插件
  • 可以自建服务

安全防护

新建非 root 用户

  1. 新建用户

    adduser <用户名>
    
  2. 安装 sudo 功能

    apt update && apt install sudo
    
  3. 修改 2.1.1 中新建用户的权限

    visudo
    

    在  User Privilege Specification  下加入一行  <用户名> ALL=(ALL:ALL) ALL  即可。若希望使用 root 权限时不额外输入密码,则输入 <用户名> ALL=(ALL) NOPASSWD: ALL

SSH 远程登录程序设置

  1. 打开配置文件

    nano /etc/ssh/sshd_config
    
  2. 修改配置项:修改 ssh 端口&禁止 root 用户登录

    找到 #Port 22 这行,去掉注释,将 22 改成想要改到的端口号

    找到 PermitRootLogin Yes 这一行,奖 yes 改成 no

  3. 重启 ssh 服务,使修改生效

    systemctl restart ssh
    
  4. 使用新建的用户信息重新进行 ssh 远程连接

网站建设&证书管理

安装 1Panel

安装方法参考官网:1Panel

Responsive Image

网站+证书配置

前提要求:使用的二级域名已经解析到服务器

  1. 创建网站Responsive Image

  2. 按需选择网站类型Responsive Image

  3. 设置反代 点击网站列表后面的“配置”按钮Responsive Image

    Responsive Image
    选择 1Panel 的端口

  4. 添加证书Responsive Image

    这一步按照 1Panel 提示完成即可

  5. 检查端口是否放行

Xray 服务端配置

参考:https://xtls.github.io/document/level-0/ch07-xray-server.html,忽略 tls 部分

安装 Xray

wget https://github.com/XTLS/Xray-install/raw/main/install-release.sh
sudo bash install-release.sh
rm ~/install-release.sh

配置 Xray

  1. 生成 uuid
xray uuid
  1. 创建日志专用文件夹,生成所需日志文件,赋予其他用户权限
mkdir ~/xray_log
touch ~/xray_log/access.log && touch ~/xray_log/error.log
chmod a+w ~/xray_log/*.log
  1. 创建配置文件

注意点:

  1. 注意放行 xray 的 inbounds 端口
  2. 如果 xray 日志显示 fail 检查 log 文件的权限
sudo nano /usr/local/etc/xray/config.json

参考教程中的文件内容:

// REFERENCE:
// <https://github.com/XTLS/Xray-examples>
// <https://xtls.github.io/config/>
// 常用的 config 文件,不论服务器端还是客户端,都有 5 个部分。外加小小白解读:
// ┌─ 1*log 日志设置 - 日志写什么,写哪里(出错时有据可查)
// ├─ 2_dns DNS-设置 - DNS 怎么查(防 DNS 污染、防偷窥、避免国内外站匹配到国外服务器等)
// ├─ 3_routing 分流设置 - 流量怎么分类处理(是否过滤广告、是否国内外分流)
// ├─ 4_inbounds 入站设置 - 什么流量可以流入 Xray
// └─ 5_outbounds 出站设置 - 流出 Xray 的流量往哪里去
{
  // 1\\_日志设置
  "log": {
    "loglevel": "warning", // 内容从少到多: "none", "error", "warning", "info", "debug"
    "access": "/home/vpsadmin/xray_log/access.log", // 改为你的日志地址:vpsadmin改为你的用户名
    "error": "/home/vpsadmin/xray_log/error.log" // 改为你的日志地址:vpsadmin改为你的用户名
  },
  // 2_DNS 设置
  "dns": {
    "servers": [
      "https+local://1.1.1.1/dns-query",
      "localhost"
    ]
  },
  // 3*分流设置
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      {
        "type": "field",
        "ip": [
          "geoip:private"
        ],
        "outboundTag": "block"
      },
      {
        // 3.2 防止服务器直连国内
        "type": "field",
        "ip": ["geoip:cn"],
        "outboundTag": "block"
      },
      // 3.3 屏蔽广告
      {
        "type": "field",
        "domain": [
          "geosite:category-ads-all"
        ],
        "outboundTag": "block"
      }
    ]
  },
  // 4*入站设置
  // 4.1 这里只写了一个最简单的 vless+xtls 的入站,因为这是 Xray 最强大的模式。如有其他需要,请根据模版自行添加。
  "inbounds": [
    {
      "port": 66666, // 填写你想要部署到的端口,和1Panel配置的端口不一致
      "protocol": "vless",
      "settings": {
        "clients": [
          {
            "id": "", // 填写你的 UUID
            "flow": "xtls-rprx-vision",
            "level": 0,
            "email": "[email protected]" // 填写你的,好像没啥用
          }
        ],
        "decryption": "none",
        "fallbacks": [
          {
            "dest": 8080 // 1Panel反代的端口
          }
        ]
      },
      "streamSettings": {
        "network": "tcp",
        "security": "tls",
        "tlsSettings": {
          "alpn": "http/1.1",
          "certificates": [
            {
              "certificateFile": "/docker/npm/letsencrypt/live/npm-1/fullchain.pem", // 改为你的地址
              "keyFile": "/docker/npm/letsencrypt/live/npm-1/privkey.pem" // 改为你的地址
            }
          ]
        }
      }
    }
  ],
  // 5*出站设置
  "outbounds": [
    {
      "tag": "direct",
      "protocol": "freedom"
    },
    {
      "tag": "block",
      "protocol": "blackhole"
    }
  ]
}
  1. 启动 xray
sudo systemctl start xray
  1. 查看 xray 状态
sudo systemctl status xray

active (running) 说明正在运行

  1. 👉 更多 xray 管理语句:

  2. 若你需要暂时关闭  Xray  的服务,那就用stop命令

sudo systemctl stop xray
  1. 若你需要重启Xray的服务,那就用restart命令
sudo systemctl restart xray
  1. 若你需要禁用Xray的服务(电脑重启后禁止 Xray 自动运行),那就用disable命令
sudo systemctl disable xray
  1. 若你需要启用Xray的服务(电脑重启后确保 Xray 自动运行),那就用enable命令
sudo systemctl enable xray

Xray 客户端配置

参考:https://xtls.github.io/document/level-0/ch08-xray-clients.html

多节点转换为订阅链接

参考: Github: cmliu/CF-Workers-SUB