• 配置sing-box服务端

    ·

    发布于

    修改于

    这是配置sing-box翻墙的服务端,一般运行在VPS上。

    1. 技术选型与原理

    本项目采用 VLESS 协议配合 Reality 传输方案。

    • 协议类型: VLESS(可以理解为 V2Ray Less,意为“无缝与极致精简”)
    • 加密与传输: Reality (配合 XTLS-Vision)(Reality 方案的核心是 Eliminating the camouflage(消除伪装))
    • 选择原因:
      • 消除指纹: Reality 方案通过借用目标网站(Dest)的合法 TLS 证书,消除了服务器端的 TLS 指纹特征,能够有效规避针对 TLS 握手特征的探测。
      • 无需配置证书: 与传统的 Trojan 或 VLESS+TLS 方案不同,Reality 不需要持有域名、配置 Nginx 或申请 SSL 证书,降低了维护成本和暴露风险。
      • 低延迟: 配合 xtls-rprx-vision 流控,该方案在处理加密流量时具备极高的转发效率。

    2.安装sing-box

    我使用的是ubuntu,为了后期更新方便,我直接将sing-box源添加到系统中,这样就可以通过apt安装和更新sing-box。

    到sing-box官方网站上可以看到添加源的命令。

    在shell中执行下面的脚本就可以完成sing-box源添加和程序的安装。

    sudo mkdir -p /etc/apt/keyrings &&
       sudo curl -fsSL https://sing-box.app/gpg.key -o /etc/apt/keyrings/sagernet.asc &&
       sudo chmod a+r /etc/apt/keyrings/sagernet.asc &&
       echo '
    Types: deb
    URIs: https://deb.sagernet.org/
    Suites: *
    Components: *
    Enabled: yes
    Signed-By: /etc/apt/keyrings/sagernet.asc
    ' | sudo tee /etc/apt/sources.list.d/sagernet.sources &&
       sudo apt-get update &&
       sudo apt-get install sing-box # or sing-box-beta

    3. 核心参数说明

    在编写配置文件前,需准备以下关键要素:

    • UUID: 通用唯一识别码,充当连接的认证密钥。如果客户端访问时不能提供这个UUID,则流量将转移到配置文件中指定的服务器。
    • KeyPair (PrivateKey/PublicKey): Reality 使用非对称加密。服务端存储私钥(PrivateKey),客户端使用公钥(PublicKey)。
    • Short ID: 一个长度为 8-16 位的十六进制字符串,用于增强 Reality 握手过程中的身份验证,防止未授权的嗅探尝试。
    • Dest: 伪装的目标域名。必须是支持 TLSv1.3 的大流量网站(如 www.microsoft.comwww.yahoo.com),且与服务器地理位置的访问延迟较低。

    4. 环境配置步骤

    1. 生成 UUID: 使用命令 sing-box generate uuid 生成。
    2. 生成 Reality 密钥对: 使用命令 sing-box generate reality-keypairPrivateKey 填入服务端配置,PublicKey 用于客户端连接。
    3. 生成 Short ID: 使用命令 sing-box generate rand --hex 8 生成。

    5. 服务端配置文件 (config.json)

    以下配置文件实现了 Reality 入站服务,并同时在本地监听 7890 端口以提供 HTTP/SOCKS5 代理服务。

    /etc/sing-box/config.json

    {
      "log": {
        "level": "info",
        "timestamp": true
      },
      "inbounds": [
        {
          "type": "vless",
          "tag": "vless-in",
          "listen": "::",
          "listen_port": 443,
          "sniff": true,
          "sniff_override_destination": true,
          "users": [
            {
              "uuid": "填入生成的_UUID",
              "flow": "xtls-rprx-vision"
            }
          ],
          "tls": {
            "enabled": true,
            "server_name": "www.microsoft.com",
            "reality": {
              "enabled": true,
              "handshake": {
                "server": "www.microsoft.com",
                "server_port": 443
              },
              "private_key": "填入生成的_PrivateKey",
              "short_id": [
                "填入生成的_ShortID"
              ]
            }
          }
        },
        {
          "type": "mixed",
          "tag": "local-proxy",
          "listen": "127.0.0.1",
          "listen_port": 7890
        }
      ],
      "outbounds": [
        {
          "type": "direct",
          "tag": "direct"
        },
        {
          "type": "block",
          "tag": "block"
        }
      ],
      "route": {
        "rules": [
          {
            "inbound": "local-proxy",
            "outbound": "direct"
          }
        ]
      }
    }
    

    6. 部署要点

    • 端口放行: 确保操作系统防火墙(如 ufwiptables)已开放 TCP 443 端口。
    • 本地代理: 配置文件中的 mixed 入站类型允许服务端本地程序通过 http://127.0.0.1:7890socks5://127.0.0.1:7890 进行网络请求。
    • 权限管理: 建议以非 root 用户身份运行 sing-box,并确保其对 config.json 具有读取权限。
    • 回传地址: Reality 的 handshake 字段应指向高性能且支持 TLS 1.3 的合法域名,以确保流量特征的真实性。

  • 验证QEMU Guest Agent是否生效

    ·

    发布于

    修改于

    替换 109 为实际 VM ID

    qm agent 109 ping
    qm agent 109 get-osinfo
    qm agent 109 network-get-interfaces

  • 关于技嘉C621A主板的拆分设置

    ·

    发布于

    修改于

    概念区分

    首先要明确两个概念:

    • PCIe Bifurcation (通道分支/分叉)

    允许将一个物理上的宽通道(如 x16)在逻辑上配置为多个更窄的通道(如 x8+x8, x8+x4+x4, 或 x4+x4+x4+x4)。

    • Lane Sharing / Switching (通道共享/切换)

    “两个槽共享 x16,插满变成双 x8”的情况。这通常被称为 PCIe SwitchingDynamic Lane Allocation

    典型应用场景

    两个场景都针两条X8插槽,这两条X8插槽共享X16带宽,这里将其中能跑到X16带宽的插槽称为主插槽,将最高能跑到X8带宽的插槽称为副插槽。将以下命令的结果交给AI就知道每个设备的带宽了,需要注意的是针对那种自带拆分芯片M.2扩展卡,不光要看M.2硬盘获取到的带宽,还要看扩展卡本身实际工作的带宽。

    lspci -vv | grep -E "^[0-9a-f]{2}:[0-9a-f]{2}.[0-9a-f]|LnkCap:|LnkSta:" | grep -v "ASPM"

    场景一

    需求:将无拆分芯片的X8双M.2扩展卡和X8网卡跑满。

    正确方案:

    PCIE插槽扩展卡BIOS设置
    主插槽无拆分X8双M.2扩展卡X4X4X8
    副插槽X8网卡X8

    将M.2扩展卡插在主插槽,将网卡插在副插槽。在BIOS中设置主插槽为X4X4X8,副插槽为X8,这个是经过验证可以让两个M.2和一个网卡都获得自己的理想带宽。另外如果将主插槽设置为Auto,副插槽设置为X8似乎也是可以,这一种没有充分验证。

    场景二

    需求:将具有拆分芯片的X16四M.2扩展卡跑到X8带宽,同时让无扩展的双M.2扩展卡跑满。这个四M.2扩展卡不需要主板支持拆分,金手指兼容X4、X8、X16插槽。

    正确方案:

    PCIE插槽扩展卡BIOS设置
    主插槽无拆分X8双M.2扩展卡X4X4X8
    副插槽具有拆分芯片的X16四M.2扩展卡X8

    如果按照上表中的方法插,但是BIOS设置是默认(两个插槽都是“auto”),那会出现神奇的情况:具有拆分芯片的X16四M.2扩展卡实际跑在X4带宽上,无拆分X8双M.2扩展卡中的两个盘只能认第一个。


  • H3C交换机查看温度和功率等信息

    ·

    发布于

    修改于

    因为给H3C交换机换了静音风扇,所以比较关注这台交换机的工作状态,下面是3个常用的状态查询命令。

    //查询全局温度
    display environment
    //查询光模块设备信息
    display transceiver interface Ten-GigabitEthernet 1/0/1
    //查询光模块运行状况
    display transceiver diagnosis interface Ten-GigabitEthernet 1/0/1

  • 获取硬盘当前温度的脚本

    ·

    发布于

    修改于

    必须要root权限执行,温度数字会根据温度情况变色。

    (更多…)

  • TP-LINK企业路由器管理易展家用无线路由器

    ·

    发布于

    修改于

    TP-LINK企业路由管理易展家用无线路由器有两种模式,1.0模式和2.0模式。

    1.0模式

    多个家用无线路由器中必须至少有一个易展主路由,企业路由器不能作为易展主路由使用。也就是企业路由器通过易展主路由管理挂在易展主路由下面的易展子路由。

    2.0模式

    较新的企业路由支持2.0模式,部分老型号也有支持2.0模式的新固件。该模式可以将企业路由器认为是易展主路由,它可以用来管理家用易展路由器。该模式需要易展家用路由器的易展版本不低于2.0。

    添加易展2.0家用路由作为AP

    1. 配置企业路由器某个接口的IP。用VLAN似乎不不行,我尝试过创建VLAN并配置IP,但似乎无法发现易展家用路由器。
    2. 配置企业路由器某个接口的DHCP服务(添加阶段必须用TPLINK企业路由自己的DHCP,不可使用自建DHCP,否则在下面的授权操作后会提示“易展功能已关闭”导致节点添加失败。添加成功后可关闭TPLINK企业路由的DHCP改用自建DHCP,重启、断电亦可正常工作)。
    3. 开启“易展功能开关”,启用“易展设备自动漫游”。
    4. 重置易展家用路由器,将这台路由器的WAN口与企业路由器刚才配置IP和DHCP的接口相连。
    5. 按下易展家用路由器上的易展按钮。
    6. 在企业路由器配置页面中查看“待授权易展设备列表”中的条目,稍等即可看到上面的易展家用路由器,完成授权后,该家用路由器会出现在企业路由器“易展主设备列表”中。因为该家用路由器下还可以扩展易展设备,所以这里的主设备指的是相对于其下挂的子设备而言的。“易展主设备列表”中的易展设备实际上也是完全受企业路由器管理的。
    7. 如需添加子设备,点击页面上半部分右侧的“添加易展设备”按钮并根据提示完成操作就可以了。添加成功后,新设备会显示在“易展子设备列表”中。

  • 修复QNAP QuTS hero系统升级后nvidia显卡无法启动的问题

    ·

    发布于

    修改于

    威联通QuTS hero系统升级后会导致原本正常使用的英伟达显卡无法使用,表现为App中心中的NvKernelDriver和NVIDIA GPU Driver两个APP均为灰色。这是由于QuTS hero系统要求NvKernelDriver版本和系统版本必须一致,而系统系统升级后,QuTS hero和NvKernelDriver版本不一致导致的。NVIDIA GPU Driver依赖NvKernelDriver。

    解决NvKernelDriver无法加载

    非常容易,到QNAP官方下载和固件版本号对应的驱动程序,安装后解决。版本号由“h”开头的即为QuTS hero系统驱动,否则为QTS系统驱动。

    解决NVIDIA GPU Driver无法加载

    第一种方法是重新安装NVIDIA GPU Driver。如果使用这种方法,最好手动到官网下载安装包进行安装,因为该安装程序很大,用app center安装会比较慢。

    第二种方法是修改配置文件。

    1. 修改配置文件

    在 SSH 中操作:

    1. 打开配置文件:sudo vim /etc/config/qpkg.conf
    2. 找到 [NVIDIA_GPU_DRV] 这一段。
    3. i 键进入编辑模式。
    4. Enable = FALSE 修改为 Enable = TRUE
    5. Esc 键,输入 :wq 保存并退出。

    2. 手动启动驱动

    修改完配置文件后,APP 还不会马上运行,你需要手动执行它的启动脚本(或者重启 NAS,但命令更快):

    Bash

    sudo /etc/init.d/NVIDIA_GPU_DRV.sh start

    原因分析:为什么它会自动变 FALSE?

    启动脚本的自我熔断 NVIDIA GPU Driver 在尝试启动时,会先运行一个检查脚本。如果它发现底层的 Kernel Driver 没有加载(在你手动修复之前),或者版本不匹配,启动脚本可能会主动修改配置文件将自己禁用,以免用户在不知情的情况下反复尝试启动失败。

    系统升级时的“防崩”机制(最可能的原因) 当你进行 QuTS hero 系统升级时,系统检测到当前的 NVIDIA GPU Driver 与新内核不兼容(因为底层的 nvkerneldriver 还没更新)。为了防止系统启动时加载错误的驱动导致死机或无限重启,QNAP 的升级程序会自动把这个存在风险的 APP 在配置文件中设为 FALSE(禁用)。


  • 修改ssh为密钥登录

    ·

    发布于

    修改于

    在客户端生成ssh密钥对,私钥保存在客户端,公钥保存到需要密钥登录的服务端。

    客户端

    生成ssh密钥对

    可以生成rsa或者ed25519两种类型,rsa兼容性更好,ed25519更安全且密钥更短、速度更快,推荐使用ed25519。

    ssh-keygen -t ed25519 -C "your_email_or_comment"
    ssh-keygen -t rsa -b 4096 -C "comment"

    服务端

    1. 创建目录(用于存储公钥)
    mkdir -p ~/.ssh
    1. 创建公钥文件
    nano ~/.ssh/authorized_keys

    把公钥文件内容写入上述文件中。

    1. 设置文件权限
    # 1. 锁死 .ssh 目录,只允许你自己进
    chmod 700 ~/.ssh
    
    # 2. 锁死 authorized_keys 文件,只允许你自己读写
    chmod 600 ~/.ssh/authorized_keys
    
    # 3. 确保你的家目录没有被别人乱改的权限(通常默认就是好的,但以防万一)
    chmod go-w ~
    1. 禁用密码登录
    sudo nano /etc/ssh/sshd_config

    将下面这两项设置设置如下:

    PasswordAuthentication no
    PubkeyAuthentication yes

    Ubuntu 的特殊坑: 在 Ubuntu 22.04 / 24.04 等新版本中,有时候上面的设置不生效。你需要检查是否存在一个“干扰文件”。 执行:ls /etc/ssh/sshd_config.d/ 如果你看到里面有个类似 50-cloud-init.conf 的文件,它里面的设置优先级比主配置文件高!

    • 解决办法: 删掉它,或者进去把它里面的 PasswordAuthentication yes 改成 no
    1. 重启 SSH 服务生效:

    Bash

    sudo systemctl restart ssh

  • 几款NAS常用CPU对比

    ·

    发布于

    修改于

    C5125单核性能最弱,但具备32条PCIE 3.0通道,其余三款均为9条且同为3.0。


  • 查找磁盘中具备RWX区段的DLL

    ·

    发布于

    修改于

    安装依赖库

    pip install pefile colorama tqdm
    (更多…)

最新