It’s very important to keep your DAppNode properly configured for security and performance reasons.
Specially if you are staking or planning to stake, the Ethereum Foundation provides a checklist at the launchpad process highlighting some relevant points.
We want to help you get through them with this recommendations:
Security
1. Have you secured the root account?
If you have changed the host password in the UI then you are ok!. A request to change it is always prompted the first time you connect to your DAppNode. Once done, it will show this message under System > Security
2. Is SSH hardened on a random port?
DAppNode allows you to configure the ssh service in a personalized way.
Configure your SSH port and change it from the default 22. Furthermore, ssh service can be disabled/enabled when needed.
3. Do you have a firewall properly set up?
- Make sure your Router have a firewall enabled
- Check your router configuration to make sure your DAppNode is not the DMZ host
Future versions will assist you in ensuring this steps.
4. Are the necessary ports forwarded in the router to the correct machine(s)?
If you have enabled UPnP, DAppnode will take care of that for you. Otherwise, only open the ports that apply to your installation manually.
Configure time sync
1. For Ubuntu 20.04
-
Run
timedatectl
and check NTP Service is active.DAppNode runs on Debian, uses
systemd-timesyncd
and NTP Service is active - So you don’t have to worry about this. -
Check if Local time, Time zone, and Universal time are all correct.
Future DAppNode versions will allow you to set the correct local timezone but this does not affect you for staking, so you are OK.
Eth1 Client
Have you already installed and synced an Eth1 node on mainnet?
Just install an ETH1.X mainnet node as shown in the picture to match this requirement. There’s three available options at the moment.
Simulations
1. I have simulated how to manually stop and restart my Beacon Node (BN) and Validator Client (VC) gracefully.
You just need to go to the DAppNode UI > packages > Prysm and click restart
2. I have simulated power loss (server and internet) and automatic resumption.
DAppNode should start all the packages for you
3. I have simulated how to migrate from one Eth2 client to another Eth2 client.
-
Remove Prysm validator data volumes, completely remove the Prysm without data.
-
Wait for 5 finalized epochs after you removed the Prysm package.
It’s very important to make sure the chain is finalizing, otherwise it’s better to wait.
-
After 5 finalized epochs import your keystores (you can derivate them again from the mnemonic) in a new validator.
Even if this whole process takes several hours your penalty will be really small, so be patient to avoid mistakes.