I've setup my SPK Claim Chain node and YOU could do the same! [+ some Tutorials]
Everything happened so fast in these last few days that I'm losing track of time!
I see this post pops up on my feed 3 days ago and I read that the SPK team needs some help to run the Larynx claim in a decentralized way using the D.lux HoneyComb technology!
Do you remember the Snapshot that has been taken on the 6th of January? Super, now the team is working on the best decentralised way to get the users started in claiming those Larynx tokens every month for a total duration of 12 months! Everyone that had some HIVE or HP at the time of the Snapshot will be eligible for these claims!
I immediately say to myself "Cool, I'm on it, I want to participate in the new SPK Network and setting up this Claim Chain node is a great opportunity for me to get familiarity with the process of setting up nodes, I joined Hive in March 2021 but I'm eager to start actively supporting this chain and its development!"
After reading the post I went to check here and here and started checking out the video by @disregardfiat, It was late so I tried to gather as much info as possible ready to do it the next day, I also joined the D.lux Discord where I found additional info and I saw some peeps already trying to install and asking for some support, I immediately joined them and started asking questions here and there, everyone in the Discord was friendly and helpful and if you too are thinking about running a SPK Clain Chain node I strongly advice you to go there to meet the team and get some help 😎
Some Informations + Links + Guides
When I started working on my node the materials available were the 2 posts I linked at the start of my post (The HoneyComb overview and the SPK Claim Node setup Video Guide, both great guides provided by @disregardfiat).
As I started working on it I was getting lost in the video and I really appreciated the written commands provided in the post, they really helped me to keep everything together, I then felt a need to write a quick guide with a written step-by-step and noob-friendly procedure to help people that may start getting confused as I was when watching the video, and I have an IT background and work in the industry so I thought if I'm getting lost here a newbie is just gonna give up lol 🤣
And I could see the guys in D.lux Discord talking about the exact same thing, I was busy setting up the node so I prioritized that rather than the post and after few hours as I was finally getting ready to install everything after the initial setups (server, ssh-keys, domain, dns, etc...) this great Step by Step SPK Claim Chain node setup guide by @balaz popped up! You're the man! Your guide came at the right moment for me, it helped me a lot and it was a wonderful add to the 2 great guides linked by @disregardfiat
The @balaz step by step guide was so good and thorough that I did not feel anymore the need to do a guide myself, @balaz is a developer and has much more knowledge that me on the matter so a guide from me at this point would only be redundant and I do not want to spam the blockchain!
But I still want to contribute to this project in more ways than just running a node, I noticed that some parts were left out of the guide (for various reasons, security being one of them!) and I also noticed that some people on the Discord were having some issues with exactly those parts so I thought that instead of writing another Step by Step guide I could write some quick tutorials for those parts. Hopefully you appreciate and it helps someone!
The quick-guides I wanted to write about:
- Setting up SSH keys (before ordering the server so you can share the public SSH keys with the server providers to have SSH Key Based Authentication already enabled on the server)
- Disabling SSH Password Authentication (pretty straightforward, but It may save you a google research and some clicks 😄)
- Adding the DNS records to point to your Domain
Setting up SSH keys
The procedure is pretty much the same on both Windows and Linux, I will show only on one OS for the sake of this guide.
- Open a Terminal (cmd for Windows)
- Navigate to the Folder where you want to save you key in with
cd <folder_path>
- Type in the command
ssh-keygen
- You will be prompted to enter the name you want for your ssh key file (in my example is KEY)
- It will prompt asking for a passphrase - Leave blank here (hit enter)
- It will prompt asking for the same passphrase again - Leave blank here (hit enter)
- It will prompt the feedback of a successful identification (private key) and public key being created and saved in the local folder, as well as the key fingerprint and a randomart image, pretty cool!
- Type
more <key-file-name>.pub
and it will prompt you with your public ssh key (Highlighted in my picture)
Copy this! It will be used when ordering your @privex server to have SSH Authentication enabled for that key!Be very careful, you want to copy the KEY.pub here!
When you will be ordering the @privex server in the order page you will have to paste your KEY.pub (public ssh key), like in this picture:
This is the key that I generated for this example and obviously I'm not going to use it nor order a server with it, even if it's safe because is public, but it was just for the sake of this guide to show you guys how to do it! (I did setup my node 2 days ago)
If you set your SSH Key like this you will already have SSH Key Based Authentication working on the server with that key!
To login in your server using the SSH Key run this command in the terminal (make sure to run it from the folder where your Key is located!) :
ssh -i "KEY" <your-server-username>@<server-IP-address>
Where KEY is your private identification ssh file key
i.e. ssh -i "KEY' [email protected]
In this way you can disable Password Login on the server on your first access and have a safer way to access it thanks to the SSH Key!
Disabling SSH Password Authentication
A good rule of a thumb is to disable password login only after the ssh key login works, double check all the time, if you're locked with no keys and password authentication disabled that's it, you're done! Bye Bye Server 😅
So once we've got our SSH Key Based Authentication working (and double checked!) we can disable the Password Authentication:
- We need to edit a config file for ssh which is located in
/etc/ssh/sshd_config
- Type
more /etc/ssh/sshd_config
to see the content of the config file
- Search for the line
#PasswordAuthentication yes
- Edit the file with
sudo nano /etc/ssh/sshd_config
Uncomment the line removing # and change yes to no
Save with (Ctrl+O & Ctrl+X) or (Ctrl+X & Y & Enter) - Run
sudo systemctl reload ssh
- Reboot and test. Now when I try to connect through SSH to my server and try to login with the username I get this message
Mission accomplished, Password Login through SSH is now disabled on the server! We can now access the server through SSH only using our KEY!
Adding the DNS records to point to your Domain
Last thing that people got some problems with was how to correctly add the DNS records to the domain to point it to the IP address of the server (I figured how to configure this correctly checking the D.lux Discord.
I personally registered a domain with namecheap and found a pretty cool deal for 10$ for 2 years time! I personally think is a very cool domain name lol
Once we have our Domain registered we need to add an A record listing to point it to our server and before building the HoneyComb with the docker-compose we're going to edit the .env file and specify our domain in this line domain=https://api.yourdomain.com
Here is where it can get confusing for some, when you add your A Record DNS to your domain you need to give it a host name and IP address (which is the IP address of your server), for the hostname I just put in api so when I add the code domain=https://api.yourdomain.com
to my .env file it works without problems, if you call your host let's say spk then you will need to update the code accordingly to domain=https://spk.yourdomain.com
Basically the IP address on the DNS A record needs to match the IP address of your server, which is the one that you input here ssh hostname@ip-address
when connecting to your server!
If you order with @privex and get the ubuntu OS the default hostname will be ubuntu.
You can see here my settings:
My host is api and my domain is trippymane.xyz so in my case my code was domain=https://api.trippymane.xyz
Hope this helps to clarify some confusion. 😁
Last cool tip, from our great @disregardfiat
If you have already a server running and you just want to update the .env file you can do so simply by restarting the service and it will automatically sync with the network.
To do so just run the following commands on your server:
sudo git pull
sudo docker-compose build
sudo docker-compose up
This will update the .env file and rebuild the HoneyComb to the latest updated version while our old version is still running in the background, so with this method we have minimum downtime, pretty efficient! 😎
An even better method to do this is using a slightly different variant of the sudo docker-compose up
command, this will restart the service and impose some memory limit on the IPFS:
sudo git pull
sudo docker-compose build
sudo docker-compose --compatibility up
As you see pretty simple, it just adds the --compatibility
modifier!
I was today years old when I learned this 😎
Everyday I spend in the D.lux Discord is a day that I learn something new! Mind Explosion! Happy to be part of the Network! 🙏 Also great vibes in the chat guys, every member is super helpful and it's a cool place to be!
@disregardfiat Thanks for all the help you gave me this days man, for this last minute tip before I was publishing my post and for the great chat on Discord 😁 You're the man! One day I may write you an official Thank You letter in Russian cursive to boost your language learning! 😂
Celebration!
I'm really happy I managed to do this one without too many problems and really happy to have joined the Revolution that is happening here on Hive!
You can check who is participating in the network here: https://hiveuprss.github.io/spkccmonitor/
Pretty cool to see my account in the list!
My node is running on the account @trippy-spkcc and I bought a pretty sick trippymane.xyz domain for the api for only 10$ for 2 years.
I'm at the last v1.0.0b11 update and always checking D.lux Discord ready to push any new update that gets released by the team!
You can also see that my api seems working correctly here: https://api.trippymane.xyz/
!discovery 30
@tipu curate
Upvoted 👌 (Mana: 16/76) Liquid rewards.
Grazie tante del supporto! 🙏
Apprezzo molto 😎
This post was shared and voted inside the discord by the curators team of discovery-it
Join our community! hive-193212
Discovery-it is also a Witness, vote for us here
Delegate to us for passive income. Check our 80% fee-back Program
Thank a lot guys 🙏😎
Obviously you have put in do much work, all these seem overwhelming but you pushed through and got your node running. Great commitment, good job.
Thank you very much for your kind words 😁
It was overwhelming indeed at times and without the help of the D.lux guys it would not have been that quick, I'm very happy I managed to succesfully install the node in 3-4 hours!
Thanks for dropping by and wish you a cool weekend!
😎🙏
Your content has been voted as a part of Encouragement program. Keep up the good work!
Use Ecency daily to boost your growth on platform!
Support Ecency
Vote for new Proposal
Delegate HP and earn more
Congratulations @trippymane! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s):
Your next target is to reach 9000 upvotes.
You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOP
Check out the last post from @hivebuzz:
Wow, in less than a year I've got so many achievements, thanks @hivebuzz lately everytime you drop something on my blog is always something that brings me surprise, damn 8k upvotes, probably in all my life on facebook I didn't get even half of those 🤣 I stopped actively using facebook 5 years ago when I moved to UK, I still have it but don't use, it's there only for the chat with some friends that I cannot contact otherwise, I've stopped feeding that monster long time ago 💪
TLDR: Fuck Facebook (excuse my french 😁)
You're welcome @trippymane, that's great to see you find your happiness here 😄👍 Keep this nice motivatin!
Non c'entra nulla con l'airdrop di inizio gennaio, vero? 🤔
!LOLZ
!LUV
!hivebits
@bencwarmer(1/5) gave you LUV. H-E tools | connect | <><
You're invited! - LUV's 1st birthday celebration!
lolztoken.com
It's pretty handy.
Credit: reddit
@trippymane, I sent you an $LOLZ on behalf of @bencwarmer
Use the !LOL or !LOLZ command to share a joke and an $LOLZ. (1/8)
Hivebits blends Hive's chain and Bitcoin's ethos. Mine HBIT simply with ! hivebits (no space), one-per-day. Success! You just mined .9 HBIT and the user you replied to received .1 HBIT on your behalf. You can receive 100% of the HBIT by replying to one of your own posts or comments. Or, support Hivebits by using the official HBIT mine | your wallet | market | tools | connect | <><
Si certo e' proprio di questo che si tratta, ci saranno due Airdrop se ti ricordi bene:
Ora questi nodi SPK Claim Chain come dice nel nome (Claim Chain) servono ad aiutare la distribuzione di questi token, o meglio, il processo di "Claiming" (perdona ma non mi viene la parola in italiano in questo momento 😅) riscuotere, come lo dici?, mannaggia 😂
Vabe insomma, questi nodi, da quel che ho capito saranno live per la durata della distribuzione di token (12 mesi, un claim al mese) e ognuno controllera' le transazioni per fare in modo che sia tutto corretto, quindi immagina tanti deispositivi che fanno una "foto" della chain e controllano che tutti abbiano la stessa foto 😄 molto terra terra la spiegazione :)
!PIZZA
!PGM
100 PGM token to send 0.1 PGM three times per day
500 to send and receive 0.1 PGM five times per day
1000 to send and receive 0.1 PGM ten times per day
Discord
Support the curation account with a delegation 10 HP - 50 HP - 100 HP - 500 HP - 1000 HP
Hey, thanks for using our tag #proofofbrain
Thank you so much, glad you found it useful 🙏 Happy to help :)
!PIZZA
@trippymane, do you earn some token to cover server cost? I’ve been thinking for a long time to contribute by running a node for some hive projects. But as I would need to rent a server, it would be nice to compute what the cost/reward would be. I cant really find much info on this part of the equation:-)
On the fist post published by @spknetwork they say this:
I do not know much more, I guess I will see, for now my costs are 15$ this month
10 $ for a domain for 2 years
5$ for the server this month
100HP I delegated from my main to my node account so that is not really a cost 😄
I will be paying 5$ a month for the server and it's not much and I can afford to pay from my pocket while we wait to understand more, I'm curious to see what it will come out of it 😎
Thanks for the info. In the first place, it would be a learning experience for me. But at least it is nice to know a little about the finances behind it :-)
No problem at all, a pleasure to help!
I too took this as an opportunity to learn more and get some experience! And yes having retribution for it definitely helps! I'm happy to support the network and if the latter can pay me back then it's a win-win situation!
PIZZA Holders sent $PIZZA tips in this post's comments:
trippymane tipped unorgmilitia (x1)
@trippymane(4/5) tipped @ervin-lemark (x1)
trippymane tipped khoola (x1)
trippymane tipped stefano.massari (x1)
trippymane tipped bencwarmer (x1)
Join us in Discord!
Great job! Both for setting up the node and writing this tutorial :)
!invest_vote
Thank you so much!
Makes me really happy that an IT Pro like you likes my tutorial 🙌🙏
I tried to do my bit and hopefully this helps someone 😁
!LOL
!PIZZA
lolztoken.com
You are out of jokes for the day!
@trippymane you can call @lolzbot a maximum of 4 times per day.
Level up by buying more $LOLZ so you can share more jokes per day!
You are welcome. We are all in the same boat here and we all wish to do our best for the community.
Keep up the good work. It is appreciated!
@ervin-lemark denkt du hast ein Vote durch @investinthefutur verdient!
@ervin-lemark thinks you have earned a vote of @investinthefutur !
Thank you 🙏🥳
!PIZZA
Besides giving kudos where kudos are due to be given :)
What I did differently is:
git pull & npm ci & pm2 start index.js --name "spk"
stuff :)That said, the SPK transactions are stuck at the moment. Hopefully, the nodes will be able to move on in the near future.
Eheh you're definitely more expert than me 😅
I understand and this is a absolutely a fair point, great thinking!
I went with Privex this time to start getting used to this kind of stuff and I did not know many good providers nor wanted to have a server on my home network, I am fairly new to all of this, so I went for the easy route this time 😅
My background in IT is a mere CCNA certification and a bit of a geeky passion.
Thanks for dropping by and your kind words!
Yep, from yesterday, but @disregardfiat and the team are working on a fix, hopefully soon we'll be back up and operational! 😎
@ervin-lemark Seems like we're back up and running with the latest update to v1.0.0b12
!PIZZA
!LOL
lolztoken.com
You are out of jokes for the day!
@trippymane you can call @lolzbot a maximum of 4 times per day.
Level up by buying more $LOLZ so you can share more jokes per day!
WOW, this looks great!
!BEER
Sorry, out of BEER, please retry later...
Hey, I guess you need to stake some $LARYNX ... Claim it again and lock it.
Yes, Thanks! I finally managed to do it after so many tries 😅 back in!
I am not an IT person at all. I reblogged thisone since it is very interesting to read, and even me as a total noob did grasp some of the points you described. I hope I could help to spread the knowledge.
I claimed my Larynx miners a few days ago, and was wondering what I should do with them.
Thanks for your kind words! I'm glad you found it informational and not too confusing, I tried to create a sort of a bridge between the not-too-expert and the more skilled users 😁
The whole system is still in testing, the tokens you claimed are just on the test net for now, I'm sure once everything will be ready for the official claim to start we will get notified 💪
About that I can't help much, I guess time will tel us everything!
Really cool profile pic, I like that NFT, heart glasses and hoodie on, cool 😎
Greetings from Henry Harrell
Thanks a lot for the input. THe NFT is #hivepunks ID:2596 Tucker Lewis he is a historian and one of only 72 punks with a hoodie. His rarity is still pretty low but this is a keeper :)
And also he appreciates the greetings from Henry and sends his best wishes back.
!LUV
Posted via inji.com
@solymi(1/1) gave you LUV. H-E tools | connect | <><
You're invited! - LUV's 1st birthday celebration!
No trouble! :D Thank you for the info about Tucker Lewis, does he have a story too? 😁
I'm too very happy with the looks of Henry, I do like that hat and glasses ahah
Probably the claim you did yesterday got reset today, you can try to Claim again but it's still on testnet, the team is hoping to get everything ready by the end of the month or the 1st week of March :)
Really cool post, thanks for the info, I do a reblog
A pleasure to do my little part!
Thanks a lot, really appreciated 🙌😎
!LOL
!PIZZA
!PGM
100 PGM token to send 0.1 PGM three times per day
500 to send and receive 0.1 PGM five times per day
1000 to send and receive 0.1 PGM ten times per day
Discord
Support the curation account with a delegation 10 HP - 50 HP - 100 HP - 500 HP - 1000 HP
lolztoken.com
They're very scenti-mental.
Credit: Happy Valentine's Day
@stefano.massari, I sent you an $LOLZ on behalf of @trippymane
Use the !LOL or !LOLZ command to share a joke and an $LOLZ. (2/4)
Thank you!!!
My pleasure! 😎🙌
!PIZZA
!LOL
lolztoken.com
Because it's all heart.
Credit: Happy Valentine's Day
@unorgmilitia, I sent you an $LOLZ on behalf of @trippymane
Use the !LOL or !LOLZ command to share a joke and an $LOLZ. (4/4)