> For the complete documentation index, see [llms.txt](https://uthersunlighter.gitbook.io/uthersunlighter/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://uthersunlighter.gitbook.io/uthersunlighter/warden.md).

# Warden

To join the Warden testnet, follow these steps:**Server Specifications**

* CPU: 4+ vCPU
* RAM: 8+ GB
* Storage: 240+ GB SSD
* OS: Ubuntu 22.04
* Bandwidth: 1 Gbps

**Installation Steps**

1. Update your server:

```
sudo apt-get update && sudo apt-get upgrade -y
```

2. Install the necessary libraries:

```
sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y
```

3. Install Go:

```
cd $HOME && \
ver="1.21.6" && \
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" && \
sudo rm -rf /usr/local/go && \
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" && \
rm "go$ver.linux-amd64.tar.gz" && \
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile && \
source $HOME/.bash_profile && \
go version
```

4. Install the Warden node software:

```
git clone https://github.com/warden-protocol/wardenprotocol/
cd wardenprotocol
git checkout v0.3.0
make install
```

5. Create a systemd service for the Warden node:

```
echo 'export MONIKER="my_custom_moniker"' >> ~/.bash_profile
nano /etc/systemd/system/wardend.service
```

Add the following content to the file:

```
[Unit]
Description=My warden node
After=network.target

[Service]
User=$USER
Type=simple
WorkingDirectory=$HOME/.warden
ExecStart=$(which wardend) start --home $HOME/.warden
Restart=on-failure
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
```

6. Start the Warden node:

```
sudo systemctl daemon-reload
sudo systemctl enable wardend.service
sudo systemctl start wardend.service
```

7. Check the node status and logs:

```
sudo systemctl status wardend.service
sudo journalctl -u wardend -f -o cat
```

8. Create a validator wallet:

```
wardend keys add $WALLET
```

Save the seed phrase. Then, export the wallet and validator addresses:

```
WALLET_ADDRESS=$(wardend keys show $WALLET -a)
VALOPER_ADDRESS=$(wardend keys show $WALLET --bech val -a)
echo "export WALLET_ADDRESS="$WALLET_ADDRESS >> $HOME/.bash_profile
echo "export VALOPER_ADDRESS="$VALOPER_ADDRESS >> $HOME/.bash_profile
source $HOME/.bash_profile
```

9. Fund your wallet using the Warden faucet:

```
curl -XPOST -d '{"address": "your_wallet_adresse"}' https://faucet.buenavista.wardenprotocol.org
```

After completing these steps, your Warden node should be set up and ready to participate in the testnet.
