# 手把手教你搭建APTOS AIT3激励测试网验证节点

By [CryptoXeon](https://paragraph.com/@cryptoxeon) · 2022-08-22

---

20220823更新：预期收益
---------------

小道消息：场外已经有人以60U一枚的价格收APT，所以抽中的话总价值约为48000U

* * *

前序
--

本文不再赘述什么是APTOS AIT3，请自前往官网查看。

[https://aptoslabs.medium.com/welcome-to-aptos-incentivized-testnet-3-9d7ce888205c](https://aptoslabs.medium.com/welcome-to-aptos-incentivized-testnet-3-9d7ce888205c)

开始前的准备
------

**账号类**

*   Email
    
*   Discord账号
    

**软件类**

*   Google Chrome浏览器（升级到最新版本）
    
*   FinalShell （[点击下载](https://www.hostbuf.com/)）如果你还不会使用FinalShell，后续会出教程
    

**云服务器账号（任选其一）**

*   [AWS](https://aws.amazon.com/account/sign-up)
    
*   [Google Cloud](https://cloud.google.com/)
    
*   [Azure](https://azure.microsoft.com/)
    

STEP0 注册APTOS账号
---------------

进入官网，右上角点击Signin，选择Discord登录并设置用户名。此步骤会需要验证邮箱。

[https://aptoslabs.com/](https://aptoslabs.com/)

STEP1 绑定Discord
---------------

不用多说了吧

STEP2 连接钱包
----------

### 安装钱包

下载并解压缩钱包插件（Assets中的`chrome-extension.zip`)

[https://github.com/aptos-labs/aptos-core/releases/](https://github.com/aptos-labs/aptos-core/releases/)

打开Google Chrome并在导航栏输入chrome://extensions进入扩展程序标签。进入后打开右上角的开发者模式。

![](https://storage.googleapis.com/papyrus_images/bf09123b47e22efb68126c31e3d2f296841d1955e2b1f912bda69f8316a4afe2.png)

点击加载已解压的扩展程序，进入刚刚解压缩得到的文件夹并点击选择文件夹，插件就安装好了

### 使用钱包

根据钱包提示，创建钱包密码、生成并记录助记词，然后返回[https://aptoslabs.com/it3](https://aptoslabs.com/it3)完成第二步的验证

STEP3 完成问卷
----------

问卷问题翻译：

*   以下哪项最能代表您？
    
*   为什么要参加AIT3？
    
*   是什么让您成为合格的节点操作员？
    
*   如果您在一家公司工作，请在此处输入他们的网站：
    
*   是什么让您对 Aptos 感兴趣？
    

可以随便填，但最好不要瞎填。

STEP4 节点注册
----------

### 硬件要求

*   **CPU**:
    
    *   8 核心, 16 线程
        
    *   2.8GHz, 或更高
        
    *   Intel Xeon Skylake 或更高
        
*   **内存**: 32GB RAM
    
*   **硬盘**：不少于300G
    
*   **带宽**：1G
    

**云服务器推荐机型**:

*   AWS
    
    *   c5.4xlarge
        
    *   c6i.4xlarge
        
*   GCP
    
    *   c2-standard-16
        
*   Azure
    
    *   Standard\_B8ms
        

**推荐系统：Ubuntu 20.04**

防火墙设置
-----

服务器创建完成后，请按如下要求放行防火墙：

### 入站放行（下文格式为 类型-协议-端口-源IP)

*   SSH-TCP-22-0.0.0.0/0
    
*   HTTP-TCP-80-0.0.0.0/0
    
*   HTTPS-TCP-443-0.0.0.0/0
    
*   TCP-TCP-6180-0.0.0.0/0
    
*   TCP-TCP-9101-0.0.0.0/0
    

### 出站放行所有流量

节点搭建流程 （Docker）
---------------

官方安装文档，英语较好的可直接阅读原文

[https://aptos.dev/nodes/validator-node/run-validator-node-using-docker](https://aptos.dev/nodes/validator-node/run-validator-node-using-docker)

1.  安装环境（完整复制+粘贴+回车）参考自@核桃壳壳总
    
        sudo sh -c "apt update && apt install unzip && curl -fsSL get.docker.com -o get-docker.sh && sh get-docker.sh && service docker start && wget https://github.com/aptos-labs/aptos-core/releases/download/aptos-cli-v0.3.1/aptos-cli-0.3.1-Ubuntu-x86_64.zip && unzip aptos-cli-0.3.1-Ubuntu-x86_64.zip && mv aptos /usr/bin/"
        
    
2.  配置工作文件夹。一行一行复制粘贴+回车。第二行USERNAME=后面请自己写一个Username，后续步骤会用到。
    
    注意：后文中$WORKSPACE指代的是目录**testnet**，$USERNAME指代的是你的节点名
    
        export WORKSPACE=testnet
        
    
        export USERNAME=【Your Node Name】
        
    
        mkdir ~/$WORKSPACE
        
    
        cd ~/$WORKSPACE
        
    
3.  下载配置文件`validator.yaml` 和 `docker-compose.yaml`
    
        wget https://raw.githubusercontent.com/aptos-labs/aptos-core/main/docker/compose/aptos-node/docker-compose.yaml
        
    
        wget https://raw.githubusercontent.com/aptos-labs/aptos-core/main/docker/compose/aptos-node/validator.yaml
        
    
4.  在您的工作目录中生成密钥对（节点所有者、投票者、操作员密钥、共识密钥和网络密钥）
    
        aptos genesis generate-keys --output-dir ~/$WORKSPACE/keys
        
    
    这将在目录下创建 4 个密钥文件`~/$WORKSPACE/keys`：
    
    *   `public-keys.yaml`
        
    *   `private-keys.yaml`
        
    *   `validator-identity.yaml`， 和
        
    *   `validator-full-node-identity.yaml`
        
    
    > **重要信息**
    > 
    > 将您的私钥文件备份到安全的地方。这些关键文件对于您建立节点的所有权很重要。**永远不要与任何人共享私钥。**
    
5.  配置validator信息。将`<Validator Node IP / DNS address>:<Port>` 替换成你的服务器IP:6180，如58.24.165.212:6180。同时，确保防火墙放行6180端口。
    
        cd ~/$WORKSPACE
        
    
        aptos genesis set-validator-configuration \
        --local-repository-dir ~/$WORKSPACE \
        --username $USERNAME \
        --owner-public-identity-file ~/$WORKSPACE/keys/public-keys.yaml \
        --validator-host <Validator Node IP / DNS address>:<Port> \
        --stake-amount 100000000000000
        
    
    这将在目录中创建两个 YAML 文件`~/$WORKSPACE/$USERNAME`：`owner.yaml`和`operator.yaml`
    
6.  生成Validator的layout模板，该文件定义Aptos节点的validatorSet
    
        aptos genesis generate-layout-template --output-file ~/$WORKSPACE/layout.yaml
        
    
    生成后，编辑`layout.yaml`文件，复制粘贴下方的内容，替换文件中原有的内容。
    
    注意，user: 后 `[“` 与 `”]` 需要保留
    
    >     root_key: "D04470F43AB6AEAA4EB616B72128881EEF77346F2075FFE68E14BA7DEBD8095E"
    >     users: ["这句话替换成第2步中你设置的username"]
    >     chain_id: 43
    >     allow_new_validators: false
    >     epoch_duration_secs: 7200
    >     is_test: true
    >     min_stake: 100000000000000
    >     min_voting_threshold: 100000000000000
    >     max_stake: 100000000000000000
    >     recurring_lockup_duration_secs: 86400
    >     required_proposer_stake: 100000000000000
    >     rewards_apy_percentage: 10
    >     voting_duration_secs: 43200
    >     voting_power_increase_limit: 20
    >     
    
7.  下载 AptosFramework Move package到`~/$WORKSPACE`目录中`framework.mrb`
    
        wget https://github.com/aptos-labs/aptos-core/releases/download/aptos-framework-v0.3.0/framework.mrb -P ~/$WORKSPACE
        
    
8.  编译 genesis blob和waypoint
    
        aptos genesis generate-genesis --local-repository-dir ~/$WORKSPACE --output-dir ~/$WORKSPACE
        
    
    完成后将在你的$WORKSPACE中创建`genesis.blob` 与`waypoint.txt` 两个文件
    
9.  回顾一下，在您的工作目录中，您应该有以下文件：
    

*   `docker-compose.yaml`docker compose 文件来运行验证器和全节点
    
*   `keys`文件夹，其中包括：
    
    *   `public-keys.yaml`：所有者帐户、共识、网络的公钥（从第 4 步开始）。
        
    *   `private-keys.yaml`：所有者帐户、共识、网络的私钥（从第 4 步开始）。
        
    *   `validator-identity.yaml`：用于设置验证者身份的私钥（从第 4 步开始）。
        
    *   `validator-full-node-identity.yaml`：用于设置验证者全节点身份的私钥（从第 4 步开始）。
        
*   `username`文件夹，其中包括：
    
    *   `owner.yaml`：定义所有者、操作者和选民映射。它们在测试模式下都是同一个帐户（从第 5 步开始）。
        
    *   `operator.yaml`：将用于 Validator 和 FullNode 的节点信息（从步骤 5 开始）。
        
*   `layout.yaml`: 包含根键、验证器用户和链 ID 的键值的布局文件（来自第 6 步）。
    
*   `framework.mrb`：AptosFramework Move 包（从第 7 步开始）。
    
*   `waypoint.txt`：创世交易的路点（从第 8 步开始）。
    
*   `genesis.blob`包含有关框架、validatorSet 等所有信息的 genesis 二进制文件（来自第 8 步）。
    

启动Docker
--------

检查上方文件无误后，输入下方命令启动docker

    sudo docker compose up -d
    

填写节点注册信息（Public Keys)
---------------------

1.  进入[节点注册页面](https://aptoslabs.com/it3)
    
2.  打开服务器中`keys`文件夹中的`public-keys.yaml`文件，将信息填入表单中对应位置。
    
3.  表单与`public-keys.yaml` 的对应关系
    
    CONSENSUS KEY - consensus\_public\_key
    
    CONSENSUS POP - consensus\_proof\_of\_possession
    
    ACCOUNT KEY - account\_public\_key
    
    VALIDATOR NETWORK KEY - validator\_network\_public\_key
    

![表单与public-keys.yaml 的对应关系](https://storage.googleapis.com/papyrus_images/d2d87cb754f387cde98273290af7956cde4a3b86d49e269d8a65adb358e36a63.jpg)

表单与public-keys.yaml 的对应关系

填写节点注册信息（Validator Node)
------------------------

*   IP地址（不用多说吧）
    
*   VALIDATOR (NOISE) PORT：6180
    
*   METRICS PORT：9101
    
*   API PORT：把8080改为80
    

完成后点击右边的VALIDATE NODE，等待一分钟，提示`Node validated successfully!`时表示大功告成！

![设置案例](https://storage.googleapis.com/papyrus_images/326a03fe4ebda24a24eeac0c808a3afa4e11863632b03de43fc1645ca9539c9d.png)

设置案例

STEP5 身份认证
----------

需要上传Gov Issued ID与视频验证，非美国身份均可通过。

至此，如果你在 [https://aptoslabs.com/it3看到的跟我一样，说明你报名成功了](https://aptoslabs.com/it3%E7%9C%8B%E5%88%B0%E7%9A%84%E8%B7%9F%E6%88%91%E4%B8%80%E6%A0%B7%EF%BC%8C%E8%AF%B4%E6%98%8E%E4%BD%A0%E6%8A%A5%E5%90%8D%E6%88%90%E5%8A%9F%E4%BA%86)

![](https://storage.googleapis.com/papyrus_images/ef98b369830d805b3c85463bb73da83429b7962d06651e0c07dd2ced0585b35d.png)

后续检查
----

打开下面的网址，输入你的IP地址，API PORT填写80，点击搜索，即可查看节点的运行情况

[https://ait.aptos-node.info/](https://ait.aptos-node.info/)

![运行良好](https://storage.googleapis.com/papyrus_images/a24e7313fe0cc61984e20c9f4d91631fa5016cb7d8b6f4583cefd7b083d06fb5.png)

运行良好

如果实在懒得动手搞，推荐去@核桃壳壳总那付费搭建，服务没得说。

其它问题请在Twitter上DM我。

[https://twitter.com/cryptoxeon](https://twitter.com/cryptoxeon)

[https://twitter.com/LausanneDhondup](https://twitter.com/LausanneDhondup)

---

*Originally published on [CryptoXeon](https://paragraph.com/@cryptoxeon/aptos-ait3)*
