# Aleo Prover节点搭建教程

By [ChiefDavid](https://paragraph.com/@chiefdavid) · 2022-11-13

---

1.简介
----

[Aleo](https://www.aleo.org/) 是第一个支持私有和可编程应用程序的去中心化开源平台。 使用零知识证明协议，提供更私密和更个性化的 Web 体验。可以在不透露信息本身的情况下证明某事的真实性。

Aleo 已获得2亿美金的B轮融资，与Aptos、Sui等明星公链量级相当。Aptos的测试网给参与节点搭建者空投了300APT，价值6000U。因此Aleo理论上也是妥妥的大毛。

[Aleo官方discord](https://discord.com/channels/700454073459015690/998987048700608653) 明牌空投:

![Aleo官方discord关于空投的说明](https://storage.googleapis.com/papyrus_images/7c51bdf48d3eab2b912ff18a76f543a7ee551e68c57079d4c99ec63f320811a2.png)

Aleo官方discord关于空投的说明

Aleo官方discord关于空投的说明

2500万个Aleo代币，将分配给开发者、白帽测试、证明者（我们现在要做的）和验证者。 具体的分配规则尚不清晰，请斟酌投入成本，自行判断是否参与。

Testnet 3的第二阶段 prover 已于 2022年11月10日开启，目前是准备阶段，4-8周后正式开始。

2.构建指南
------

2.1 要求

以下是运行 Aleo 节点的最低要求：

CPU : 16 核 (首选 32 核)

RAM：16GB内存（32GB优先）

存储：128GB 磁盘空间

网络：10 Mbps的上传和下载带宽

系统：Ubuntu 20.04

请注意，如果你想要让你的 Aleo Prover节点更具有竞争力的话，可能需要更高配置的机器。

需要购买云服务器的朋友，可以参考:[VPS云服务器购买与配置教程](https://mirror.xyz/0xsimplefish.eth/KIs_PHFrMBI-4tXapRqeZOI-cBU0Ezmt4cM5YX0MrMg)。

2.2 安装

在开始之前，请确保您的机器已安装Rust v1.64+，执行以下命令，然后选择1（默认安装）：

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    

![安装Rust](https://storage.googleapis.com/papyrus_images/a34820dc37a09d5e5f022f3de142f1f30c7a235b08ca02dac26a568a02a70b10.png)

安装Rust

安装Rust

Rust安装完成之后，执行以下命令使得当前shell生效：

    source “$HOME/.cargo/env“
    

接下来我们开始正式安装，首先克隆这个 Github 存储库：

    git clone https://github.com/AleoHQ/snarkOS.git --depth 1
    

接下来，进入snarkOS目录：

    cd snarkOS
    

对于 Ubuntu 用户提供了安装依赖项的帮助脚本。在snarkOS目录中，运行：

    ./build_ubuntu.sh
    

脚本执行正确的情况下，可以看到如下提示。这里说明需要使用到4133和3033端口

![安装依赖项](https://storage.googleapis.com/papyrus_images/5318749373fa26f780c398d9b8571503ced68d98e4b1c89b5b354a261a74f47c.png)

安装依赖项

安装依赖项

执行以下命令来放行端口：

    sudo ufw allow 4133
    sudo ufw allow 3033
    

![防火墙放行端口](https://storage.googleapis.com/papyrus_images/1304be54809d4267a18b111eb06b6f0191950eda4c05e16f76f16a772d7d3c3c.png)

防火墙放行端口

防火墙放行端口

最后，安装snarkOS：

    cargo install --path .
    

若服务器上没有安装cargo（服务器已安装cargo的可以跳过这个步骤），会有如下提示：

![未安装cargo的提示](https://storage.googleapis.com/papyrus_images/8be4dd6ce8ea99588e7e57624fdcdf545b531bec9539dc6bd38c891316710a8f.png)

未安装cargo的提示

未安装cargo的提示

根据提示执行 apt install cargo 命令就可以了

![安装cargo](https://storage.googleapis.com/papyrus_images/90655239c6633c137828472675061f1c9b6a70c9c37c608996b87399733c08d3.png)

安装cargo

安装cargo

输入y，回车。经过下载和安装，cargo就安装好了。

Cargo安装好后，重新尝试安装snarkOS:

    cargo install --path .
    

![安装snarkOS](https://storage.googleapis.com/papyrus_images/5f7cdd0b4e2a0374da1aee833364486184d3e1e0e190e017c6167523f2ed676f.png)

安装snarkOS

安装snarkOS

恭喜！到这里已安装好了snarkOS，接下来准备运行prover节点。

3a. 运行 Aleo 客户端（此次测试不要求运行客户端，只运行prover的话可以直接跳到3b)

从snarkOS目录启动客户端节点，请运行：

    ./run-client.sh
    

3b. 运行 Aleo Prover

生成一个 Aleo 账户地址：

    snarkos account new
    

这将在终端中输出一个新的 Aleo 帐户。 请**保存帐户私钥和密钥**。以下是示例输出：

    Private Key  APrivateKey1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  
    View Key  AViewKey1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  
    Address  aleo1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  
    

接下来，要启动一个证明节点，从snarkOS目录中运行：

    ./run-prover.sh
    

出现提示时，输入上面获得的的 Aleo 私钥（Private Key）：

    Enter the Aleo Prover account private key: APrivateKey1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    

![运行prover节点，输入私钥](https://storage.googleapis.com/papyrus_images/ee3b96ab4c8b6cb464a635881a690c5881b01fab2ff7fef6ffaf8f2589ac9160.png)

运行prover节点，输入私钥

运行prover节点，输入私钥

等待下载和编译，搞定！

![运行成功](https://storage.googleapis.com/papyrus_images/0033d358da6bb4418f8a806bd109aaeac19cd758501c0214ca7ec65a4c7a0007.png)

运行成功

运行成功

节点运行半小时以上后，可以[在这里查看自己的积分](https://www.aleo123.io/leaderBoard)，在右上角输入自己的地址（之前生成的Address）就可以查询啦

![查询积分情况](https://storage.googleapis.com/papyrus_images/ee1cfab943adb0c9d852c374e40393f2297f67f1930f01568b8271fa8f1ff43b.png)

查询积分情况

查询积分情况

遇到问题请参考以下常见问题。

4\. 常见问题
--------

1.  我的节点无法编译
    
    确保您的机器已安装Rust v1.64+。可以在此处找到[安装 Rust的说明](https://www.rust-lang.org/tools/install)。
    
    如果编译过程中出现错误，请尝试运行cargo clean.
    
    确保snarkOS启动成功，使用./run-client.sh或者 ./run-prover.sh。
    
2.  我的节点无法连接到网络上的对等节点
    
    确保端口4133/tcp和3033/tcp在您的路由器和操作系统防火墙上打开。
    
    确保snarkOS启动成功，使用./run-client.sh或者 ./run-prover.sh。
    
3.  无法生成新地址
    
    在运行上面的命令之前（snarkos account new）尝试source ~/.bashrc
    
    还要仔细检查snarkos. 注意目录是/snarkOS，命令是snarkos
    
4.  运行节点成功，退出ssh窗口之后，snarkos进程自动退出了
    
    这种情况是因为snarkos的启动不是使用的后台运行模式，这里提供一种使用screen来运行节点的方法。
    
    安装screen：
    
    启动一个名叫aleo的screen并进入到screen环境：
    
        screen -R aleo
        
    
    cd 进入到snarkOS目录，启动prover:
    
        ./run-prover.sh
        
    
    这样进程就在screen里面运行了，退出screen 使用ctrl + A + D，这样aleo的进程就类似于在后台运行了。下一次想要进入screen查看节点运行情况，使用 screen -r aleo即可（注意大小写）
    
    \==========================

---

*Originally published on [ChiefDavid](https://paragraph.com/@chiefdavid/aleo-prover)*
