Prysm

Create a service user for the validator service, as this improves security, then create data directories.

sudo adduser --system --no-create-home --group validator
sudo mkdir -p /var/lib/prysm/validators

Storing your keystore password in a text file is required so that Prysm can decrypt and load your validators automatically.

Create a file to store your keystore password. Type your password in this file.

sudo nano /var/lib/prysm/validators/password.txt

To exit and save, press Ctrl + X, then Y, then Enter.

Confirm that your keystore password is correct.

sudo cat /var/lib/prysm/validators/password.txt

Import your validator keys by importing your keystore file. When asked to create a new wallet password, enter your keystore password. When prompted for the imported accounts password, enter your keystore password again.

sudo /usr/local/bin/validator accounts import \
  --accept-terms-of-use \
  --holesky \
  --wallet-dir=/var/lib/prysm/validators \
  --keys-dir=$HOME/staking-deposit-cli/validator_keys

Verify that your keystore file was imported successfully.

sudo /usr/local/bin/validator accounts list \
  --wallet-dir=/var/lib/prysm/validators \
  --holesky

Once successful, you will be shown your validator's public key. For example:

Setup ownership permissions, including hardening the access to this directory.

Create a systemd unit file to define your validator.service configuration.

Paste the following configuration into the file.

  • Replace<0x_CHANGE_THIS_TO_MY_ETH_FEE_RECIPIENT_ADDRESS> with your own Ethereum address that you control. Tips are sent to this address and are immediately spendable.

  • If you wish to customize a graffiti message that is included when you produce a block, add your message between the double quotes after --graffiti. Maximum length is 16 characters.

To exit and save, press Ctrl + X, then Y, then Enter.

Run the following to enable auto-start at boot time.

Finally, start your validator client and check it's status.

Check your logs to confirm that the validator clients are up and functioning.

For example when using 2 validators, logs will show the following:

Press Ctrl + C to exit the logs.

Example of Synced Prysm Validator Client Logs

  • Once the validator is active and proceeded through the validator activation queue, attestation messages will appear indicating successful attestations.

  • Notice the key words "INFO validator: Submitted new attestations".

Last updated