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!!!
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!
[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]