[TUTORIAL] Create your own #Peercoin Full Active Node via Online Labs cloud!

Hi guys,

Great surprise today, I received my Online Labs ARM Cloud platform invite. Online Labs is a Cloud infrastructure where you can setup your own dedicated ARM-based servers. And guess what you can do with dedicated servers? SETUP FULL ACTIVE NODES FOR PEERCOIN!!! :smiley:

With your invite, you will receive FREE access to a web-interface on https://cloud.online.net/ on which you can create dedicated servers (working on C1 ARM-devices):

  • 20GB attached SSD drives for your system partition (you can add more storage)
  • 1x static IP address reserved (that you can attach to one of your servers)
  • 2x dynamic IP addresses
  • Max of 2 dedicated servers
  • DDoS protected
  • Support

[s]I think I have a limited number of invites, so [size=16pt]please send me your email address by PM[/size]. You can also request an invite via: http://labs.online.net/ (bottom of the page).

Again, this is FREE! You just need to provide a name and phone number (which needs to be verified) to setup your account.[/s]

To know more about it: http://labs.online.net/

Edit: This is now a paid service called Scaleway https://cloud.scaleway.com


[size=16pt]TUTORIAL:[/size]
How to setup your Full Active Node via Online Labs cloud platform.

[center][size=14pt]IMPORTANT: FOR OBVIOUS SECURITY REASONS, IT IS STRONGLY DISCOURAGED TO STORE A LARGE AMOUNT OF PEERCOINS ON ANY ONLINE SERVERS. ALWAYS STORE YOUR PEERCOINS ON YOUR OWN COMPUTER WITH PEERUNITY, PEERBOX, OR PAPERWALLET.[/size][/center]

This guide will describe how to setup ppcoind (the official Linux Peercoin daemon) on Online Labs’ cloud platform with Debian. If you wish to install it on your own Debian you can skip the PART 1 of this tutorial.

[size=14pt]PART 1 (Setup a Debian server)[/size]

Once you receive your invite by email, click on “Create your account”

Create a password (can be changed later, but make sure to remember this one!):

Once logged in, you will receive welcome email (that you can ignore). Next step is to add a valid mobile phone number to receive your activation code:

Edit your profile info and add your phone number:

Activate your account once you’ve received the activation code by text:

Congratulation, your account has been activated, you can now create a server. Click on the “CREATE SERVER” button:

Create a SSH key pair on your local machine that will be used to access any servers you create on this cloud platform. Then add the public key (usually id_rsa.pub) content in this text box:

Configure your server. Choose a name, select “Debian Wheezy” and the click on “CREATE SERVER” at the bottom of the page:

Wait a few minutes for your server to be automatically configured:

Click on the “Servers” tab to check the status and get the dynamic IP that was allocated (you also have the possibility to use a reserved static IP, check Online’s documentation for this):

Once started, connect to your server via SSH (if you are on Windows, follow this tutorial: http://www.wikihow.com/Use-SSH):

From now on, everything that you do in command line will only affect your remote server:

[size=14pt]PART 2 (Configure your Debian server)[/size]

Choose your own username which will be used for all commands you’ll type:

USERNAME='thireus'

Then, perform the following actions (always one after the other, DO NOT COPY/PASTE EVERYTHING!!):

apt-get update && apt-get upgrade --yes apt-get install git secure-delete rkhunter pax-utils screen nano build-essential autoconf libssl-dev libboost-all-dev libdb++-dev libdb-dev --yes adduser "$USERNAME" # Replace $USERNAME by your username passwd -d "$USERNAME" && passwd -l "$USERNAME" && echo OK # Disable password for $USERNAME chmod 700 /home/"$USERNAME" && mv ~/.ssh /home/"$USERNAME"/ && chown -R "$USERNAME":"$USERNAME" /home/"$USERNAME"/.ssh

[OPTIONAL] Secure your SSH access (disable root for example):

nano -w /etc/ssh/sshd_config # c.f. below:

Add at the end of your /etc/ssh/sshd_config file (and save the changes; how to save a file using nano):

[code]### START - SSH Hardening by Thireus 1.1.1, NSA-Proof? ###

AddressFamily inet
AuthorizedKeysFile %h/.ssh/authorized_keys
HostbasedAuthentication no
IgnoreRhosts yes
PasswordAuthentication no
PermitEmptyPasswords no
PermitRootLogin no
Protocol 2
PubkeyAuthentication yes
ServerKeyBits 2048
StrictModes yes
UsePrivilegeSeparation yes

MACs ULTRA SECURITY!

#MACs hmac-sha2-512-etm@openssh.com

MACs ULTRA SECURITY (Compat)!

MACs hmac-sha2-512

MACs STRONG (Compat)

#MACs hmac-sha2-512,hmac-sha2-256

MACs Compat (i.e. Debian 6, Putty)

#MACs hmac-sha2-512,hmac-sha2-256,hmac-sha1

Ciphers ULTRA SECURITY (only new versions)!

#Ciphers chacha20-poly1305@openssh.com

Ciphers STRONG (only new versions)!

#Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com

Ciphers Compat

Ciphers aes256-ctr

KexAlgorithms ULTRA SECURITY!

KexAlgorithms diffie-hellman-group-exchange-sha256

KexAlgorithms Compat

#KexAlgorithms diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1

END ###[/code]

Setup a root password (because we won’t login with root via SSH anymore):

passwd && service ssh restart # Create a strong password for root, because we will not ssh to root anymore, but via our $USERNAME with "su" halt # This halts your server, so you will have to start it again (reboot doesn't seem to work properly)

[size=14pt]PART 3 (Build ppcoind)[/size]

GO BACK TO CLOUD.ONLINE.NET AND START OR HARD RESET YOUR SERVER AND WAIT TILL IT BOOTS… (for some reasons you need to hard reset after the halt command)

Execute the following commands:

screen # Just press Space or Return to accept mkdir ~/peercoins && chmod 700 ~/peercoins cd ~/peercoins && git clone https://github.com/ppcoin/ppcoin.git && cd ppcoin #Optional, switch to the dev branch: git checkout develop cd src make -f makefile.unix clean make -f makefile.unix USE_UPNP=- -e PIE=1 # Compile ppcoind without UPNP because we don't need it. Grab a coffee, it will take a while to compile.

Check that everything went well and that you have your ppcoind ready:

scanelf -e ./ppcoind # Should return: ET_DYN RW- R-- RW- ./ppcoind cd && mkdir ~/bin && chmod 700 ~/bin && ln -s ~/peercoins/ppcoin/src/ppcoind ~/bin/ && exit exit

[size=14pt]PART 4 (Configure and launch ppcoind)[/size]

** LOG BACK IN VIA SSH **

Execute ppcoind for the first time will prove you with rpcuser and a random rpcpassword:

screen # Just press Space or Return to accept ppcoind # Copy the two lines: rpcuser= and rpcpassword=

Configure your ppcoin.conf file (which doesn’t exist) via nano (and save the changes; [url=http://askubuntu.com/a/477605]how to save a file using nano):

nano -w ~/.ppcoin/ppcoin.conf && chmod 400 ~/.ppcoin/ppcoin.conf # Paste the rcpuser and rpcpassword lines in that file

Launch ppcoind:

ppcoind > /dev/null 2>&1 & # Launch ppcoind FULL NODE exit exit

[size=14pt]PART 5 (Check ppcoind status)[/size]

** LOG BACK IN VIA SSH **

Check that ppcoind is working correctly with the following commands (more commands at: https://www.peercointalk.org/index.php?topic=3789):

ppcoind addnode 62.210.141.185 add # Add [member=32109]Thireus[/member]'s trusted node ppcoind addnode 107.170.43.92 add # Add [member=31330]MatthewLM[/member]'s trusted node ppcoind getconnectioncount # Get number of active connections, after a few minutes you should have more than 8 connections ppcoind getblockcount # Get number of blocks (should be increasing)

These numbers should increase:

Voilà, well done, you’ve just setup a full active node! :slight_smile:

[size=14pt]Notes:[/size]

[ul][li]If anything goes wrong during the process you can still delete your server via the Online Labs Web Interface and create a new one.[/li]
[li]If you get disconnected from your server, you can always resume your work via the command ‘screen -r’ (unless your server has crashed).[/li]
[li]You can choose another distribution with a desktop interface so that you can install and use Peerunity instead.[/li][/ul]

List of useful links:

[ul][li]Peercoin on Raspberry Pi - Get 10 PPC for Setting Up a Node! - http://www.peercointalk.org/index.php?topic=2800.0[/li]
[li][GUIDE] How to become a Peercoin Full Active Node at home in less than 10 minutes - http://www.reddit.com/r/peercoin/comments/2nh911/guide_how_to_become_a_peercoin_full_active_node/[/li][/ul]

Hey sorry to break the party, but we don’t need more than one node on that cloud.
Having nodes so close to each other breaks the purpose of the node.

I don’t think the location is is an issue, the ownership is however an issue. But with this service, you receive your own dedicated hardware and static IP, so this is pretty much like distributing Peerboxes in your neighbourhood (to people using the same ISP).

1 node per person makes sense even if they are close to each other.

I do not think it is an issue to have several nodes in the same location. This is an issue if these nodes are owned by the same person. However, I do agree about the fact that technically these dedicated servers are owned by the same entity (online.net), but I do not see any implications behind this… they own the subnets and the equipment, they do not need our help if they wanted to setup their own nodes.

Are you thinking in terms of security? Because on this side, apart from DoS I do not see any security implications about having a different owner per node setup on this platform.

An empty full node is fine. A full node with coins worries me a little.

I agree. Any of my full nodes are empty.

Tutorial added, enjoy!

Has anyone gone this route? How is it working for you?

This is now a paid service called Scaleway. This tutorial remains accurate.

Hi
I’ve been running node for more than a week, but am I not suppose to earn something, if i am not minting or mining but just running a full node?
My connection count ranges 22~30.
my account balance is 0.00000000 :frowning:

What should I do? or I am making a mistake?

You need coins in your wallet in order to mint.

That wallet also has to be unlocked or unlocked for minting only.