# 🛠️ Aztec 测试网节点搭建教程（适用于 Linux VPS）

By [pangdong](https://paragraph.com/@pangdong) · 2025-05-19

---

教程参考E哥

[https://medium.com/@exploring.eth/aztec-%E5%8E%BB%E4%B8%AD%E5%BF%83%E5%8C%96%E6%8E%92%E5%BA%8F%E5%99%A8%E6%95%99%E7%A8%8B-5db4b4885f8e](https://medium.com/@exploring.eth/aztec-%E5%8E%BB%E4%B8%AD%E5%BF%83%E5%8C%96%E6%8E%92%E5%BA%8F%E5%99%A8%E6%95%99%E7%A8%8B-5db4b4885f8e)

🧱 硬件要求
-------

*   **CPU**：8 核
    
*   **内存**：16GB
    
*   **存储**：100GB 以上的 SSD
    
*   (实测4+16可以跑）
    

🛠️ 安装依赖
--------

1.  **安装 Node.js 18.x**
    
        curl -fsSL https://deb.nodesource.com/setup_18.x -o nodesource_setup.sh
        bash nodesource_setup.sh
        sudo apt-get install -y nodejs
        
    
2.  **安装 PM2（进程管理器）**
    
        npm install -g pm2
        
    
3.  **安装 Docker**
    
        curl -fsSL https://get.docker.com | sudo sh
        
    

* * *

🚀 安装 Aztec 客户端
---------------

    bash -i <(curl -s https://install.aztec.network)
    

安装过程中会有两个提示，输入 `y` 确认即可。

* * *

⚙️ 配置测试网
--------

1.  **加载环境变量**
    
        source $HOME/.bash_profile
        
    
2.  **设置测试网**
    
        aztec-up alpha-testnet
        
    

* * *

🔑 设置环境变量
---------

请根据您的实际情况替换以下变量：

*   `L1_RPC`：您的 Sepolia RPC 端点（可从 Ankr、QuickNode、Alchemy 等提供商获取）
    
*   `BEACON_RPC`：Sepolia Beacon RPC（推荐使用 DRPC 的免费服务）
    
*   `VALIDATOR_PRIVATE_KEY`：建议新建一个 EVM 地址，并填写其私钥。请妥善备份私钥。
    
*   `COINBASE_ADDRESS`：与上述私钥对应的地址
    
*   `P2P_IP`：您的公网 IP 地址，可通过以下命令获取：
    

    L1_RPC=你的sepolia rpc,可以从ankr,quicknode，alchemy等rpc提供商获取
    BEACON_RPC=drpc的免费sepolia beacon rpc。如果自建或者付费的archive beacon rpc更稳定
    VALIDATOR_PRIVATE_KEY=建议新建一个evm地址，这里填写他的私钥。备份好私钥
    COINBASE_ADDRESS=刚刚私钥的地址
    P2P_IP=$(curl -s -4 https://api.ipify.org)
    

如果需要长期跑建议自建rpc

自建rpc教程参考下面两个

[https://mirror.xyz/pangdong.eth/CorNjUryMqhZuMwFaUZBo\_5dhAmIsjjNbJswCOpQmfU](https://mirror.xyz/pangdong.eth/CorNjUryMqhZuMwFaUZBo_5dhAmIsjjNbJswCOpQmfU)

[https://mirror.xyz/pangdong.eth/QaJuqLQjoF8nNalGT2TYj0Oz9GRbGsCh3OfDSR3\_cWQ](https://mirror.xyz/pangdong.eth/QaJuqLQjoF8nNalGT2TYj0Oz9GRbGsCh3OfDSR3_cWQ)

* * *

🧩 创建启动脚本
---------

    cat << EOF | tee aztec-start.sh
    #!/bin/bash
    
    L1_RPC="${L1_RPC}"
    BEACON_RPC="${BEACON_RPC}"
    VALIDATOR_PRIVATE_KEY="${VALIDATOR_PRIVATE_KEY}"
    COINBASE_ADDRESS="${COINBASE_ADDRESS}"
    P2P_IP="${P2P_IP}"
    
    aztec start --node --archiver --sequencer \\
      --network alpha-testnet \\
      --l1-rpc-urls \$L1_RPC \\
      --l1-consensus-host-urls \$BEACON_RPC \\
      --sequencer.validatorPrivateKey \$VALIDATOR_PRIVATE_KEY \\
      --sequencer.coinbase \$COINBASE_ADDRESS \\
      --p2p.p2pIp \$P2P_IP \\
      --p2p.maxTxPoolSize 1000000000
    EOF
    
    chmod +x aztec-start.sh
    pm2 start aztec-start.sh
    

* * *

📄 查看日志
-------

如果看到类似以下的日志，说明您的节点已成功同步到最新区块：

    DEBUG: sequencer Cannot propose block 20500
    

您也可以使用以下命令检查同步状态：

    curl -s -X POST -H 'Content-Type: application/json' \
    -d '{"jsonrpc":"2.0","method":"node_getL2Tips","params":[],"id":67}' \
    127.0.0.1:8080 | jq -r ".result.proven.number"
    

如果有输出，说明节点运行成功。

* * *

🛠️ 常见问题处理
----------

*   **同步错误**：如果遇到同步错误，建议重新同步：
    

      pm2 stop aztec-start
      rm -r ~/.aztec/alpha-testnet/data/
      pm2 restart aztec-start
      pm2 logs
    

*   **升级节点**：建议关注官方公告，及时更新节点：
    

      pm2 stop aztec-start
      aztec-up alpha-testnet
      pm2 restart aztec-start
    

* * *

🧙 获取 Discord 角色
----------------

1.  **加入 Aztec Discord 社区**：[加入链接](https://discord.gg/aztec)
    
2.  **获取 Apprentice 角色**：
    
    *   进入 `#operators | start-here` 频道
        
    *   输入 `/operator help` 获取提示
        
    *   输入 `/operator start` 并按照提示填写信息
        
    *   获取方法
        
        (1),准备你这个服务器运行时的私钥地址
        
        (2)，在运行节点的服务器输入下面命令获取区块号
        
    
        curl -s -X POST -H 'Content-Type: application/json' \
        -d '{"jsonrpc":"2.0","method":"node_getL2Tips","params":[],"id":67}' \
        http://localhost:8080 | jq -r ".result.proven.number"
        
    
                （3）获取同步证明
        
    
        curl -s -X POST -H 'Content-Type: application/json' \
        -d '{"jsonrpc":"2.0","method":"node_getArchiveSiblingPath","params":["改为上面获取的区块号","改为上面获取的区块号"],"id":67}' \
        http://localhost:8080 | jq -r ".result"
        
    

/operator start address:填写你的私钥地址 block-number: 你的区块号proof:你的同步证明

1.  **获取 Guardian 角色（需要运行一段时间，等快照公告后进行查询**：
    
    *   在 `#upgrade-role` 频道输入 `/checkip`，如果符合条件，将自动获得 Guardian 角色。
        
        /checkip ip:填写你的服务器IP地址 node\_eth\_address:填写你的私钥地址
        

* * *

🧪 注册验证者（可选）
------------

[https://aztecscan.xyz/validators](https://aztecscan.xyz/validators)

每天可注册的验证者数量有限，如果遇到以下错误，说明当天的名额已满：

    Error: ValidatorQuotaFilledUntil(uint256 _timestamp)
    

注册命令如下：

    aztec add-l1-validator \
      --l1-rpc-urls 你的sepolia rpc \
      --private-key 你的私钥 \
      --attester 你的地址 \
      --proposer-eoa 你的地址 \
      --staking-asset-handler 0xF739D03e98e23A7B65940848aBA8921fF3bAc4b2 \
      --l1-chain-id 11155111

---

*Originally published on [pangdong](https://paragraph.com/@pangdong/aztec-linux-vps)*
