72 Comments

  1. Build a ZenCash Secure Node - Part 1 - Prepare the VPS - Block Operations
    June 6, 2017 @ 12:53 pm

    […] This is part 1 of a 3 part tutorial for setting up a Zen Secure Node. Part 2 is available at Zen Secure Node Part 2 […]

    Reply

  2. Daniel
    June 7, 2017 @ 7:03 am

    Hey, thanks for that update!

    I got this error with zen-cli getinfo:

    “errors”: “WARNING: check your network connection, 0 blocks received in the last 4 hours (96 expected)”

    what’s wrong with it?

    Reply

    • Rolf
      June 7, 2017 @ 8:53 am

      nothing – that is expected behavior. Until it fully syncs to the blockchain it will receive zero blocks.

      Reply

      • vrypan
        June 12, 2017 @ 4:10 am

        I have the same message, even though the number of blocks returned by getinfo seems to be equal to the blockchain height (for at least 12 hours now).

        Reply

        • vrypan
          June 12, 2017 @ 5:08 am

          Update: A reboot solved the problem. No idea why. (When I reported the issue, the server had not been rebooted since installing linux and zen.)

          Reply

  3. albert
    June 8, 2017 @ 12:41 pm

    Hi thank you for the work,
    can you help me please i’m blocked here :

    This is what goes into the file. Substitute your FQDN for the znode.blockoperations.io and your directory structure in the example below:

    #!/bin/bash
    sudo cp /etc/letsencrypt/live/znode.blockoperations.io/privkey.pem /home/blockops/keys/znode/
    sudo cp /etc/letsencrypt/live/znode.blockoperations.io/chain.pem /home/blockops/keys/znode/
    sudo cp /etc/letsencrypt/live/znode.blockoperations.io/cert.pem /home/blockops/keys/znode/
    sudo cp /etc/letsencrypt/live/znode.blockoperations.io/fullchain.pem /home/blockops/keys/znode/

    result after the command :

    cp: cannot stat ‘/etc/letsencrypt/live/znode.MYDOMAIN.me/privkey.pem’: No such file or directory
    cp: cannot stat ‘/etc/letsencrypt/live/znode.MYDOMAIN.me/chain.pem’: No such file or directory
    cp: cannot stat ‘/etc/letsencrypt/live/znode.MYDOMAIN.me/cert.pem’: No such file or directory
    cp: cannot stat ‘/etc/letsencrypt/live/znode.MYDOMAIN.me/fullchain.pem’: No such file or directory

    have you an idea please ? I can ping znode.mydomain.me

    thanks

    Reply

    • youniverse_b
      June 13, 2017 @ 6:50 pm

      You have to substitute “znode.blockoperations.io” for you own domain name which you connected with the A-record.

      Reply

  4. Xo
    June 9, 2017 @ 3:07 am

    Nice tutorial thks ! 🙂
    Part 3 pls <3

    Reply

  5. hearinleaf
    June 9, 2017 @ 4:16 pm

    Nice tutorial thks ! 🙂 Part 3 pls <3

    Reply

  6. noneya
    June 10, 2017 @ 5:06 pm

    when you get all of this complete, be sure to leave your tip address. this is a lot of work to make a tutorial for. thanks

    Reply

  7. aurelie
    June 11, 2017 @ 5:03 am

    please post the part 3
    great work big thanks

    Reply

  8. Andy Scott
    June 11, 2017 @ 7:25 am

    Hi Rolf,
    Just a thought – would it be better to place sym-links to “zend” and “zen-cli” in the bin directory – that way their is no danger of forgetting to update the copied binaries whenever a node update is done?
    I also use it to rename the binaries (example link zclashd to zcashd for ZCL and zdashd to zcashd for Hush).

    Reply

    • Rolf
      June 24, 2017 @ 6:07 pm

      you can do that – I prefer to copy them thought. That way when I am compiling new versions it does not put them into action right away.

      Reply

  9. vrypan
    June 12, 2017 @ 4:07 am

    Thank you so much! Please post Part 3!

    Reply

  10. kneox
    June 12, 2017 @ 6:20 am

    very good tutorial, thx, great job

    Reply

  11. noneya
    June 12, 2017 @ 4:23 pm

    no updates from the team? hearing a lot of fud concerning the secure nodes, that they aren’t gonna happen. i’m ignoring it for now. i know they had some dev issues and stuff. be cool to get this thing going soon. thanks for all your work!

    Reply

  12. Ed
    June 12, 2017 @ 11:25 pm

    How do we know what to put in the rpcuser and and rpcpassword fields?

    Reply

  13. aurelie
    June 20, 2017 @ 3:02 pm

    Please post Part 3!

    Reply

  14. yonder
    June 24, 2017 @ 8:02 am

    After the certificate installation and the execution of all relevant tutorial commands, I tried to check the certbot certificate installation with the SSL checker provided in https://www.sslshopper.com. The checker responded that FQDN resolves to the IP address it should, but it also reported that :

    “No SSL certificates were found on FQDN. Make sure that the name resolves to the correct server and that the SSL port (default is 443) is open on your server’s firewall.”

    Is this natural?

    Reply

    • Rolf
      June 24, 2017 @ 6:05 pm

      yes, this tutorial does not have you set up a web server using the ssl cert. It just gets you the SSL cert.

      Reply

  15. CryptoMan
    June 24, 2017 @ 1:54 pm

    Thanks for good tutorial,

    But somebody can explain to me how to generate t_address on secure node ???
    And how I can check is my secure not working or not ???

    Reply

    • Rolf
      June 24, 2017 @ 6:04 pm

      this might help:
      transparent addresses:
      list addresses:
      zen-cli getaddressesbyaccount “”
      get a new address:
      zen-cli getnewaddress

      list all addresses:
      zen-cli listaddressgroupings

      shielded addresses
      list addresses:
      zen-cli z_listaddresses
      get a new address:
      zen-cli z_getnewaddress

      send to a shielded address:

      zen-cli z_sendmany “fromaddress” ‘[{“address”:… ,”amount”:…},…]’ ( minconf ) ( fee )

      zen-cli listunspent
      zen-cli z_gettotalbalance

      see memos:
      z_listreceivedbyaddress

      Reply

  16. Stephane
    June 24, 2017 @ 5:40 pm

    Hi Rob,
    Thanks for your great tutorial.

    I found a little mistake you should correct soon:
    It’s about the github repo. You wrote in the command line text:

    git clone https://github.com/zencashio/zen.git

    But it has to be updated to the new repo : https://github.com/ZencashOfficial/zen

    Reply

    • Rolf
      June 24, 2017 @ 6:00 pm

      thank you – just fixed it

      Reply

      • dimvas
        June 28, 2017 @ 11:57 am

        To update from the old to the new link, the only i have to do is to delete the”zen” folder and redo all the second part?

        Reply

        • Rolf
          June 28, 2017 @ 12:01 pm

          yes, that would be a good way. Don’t run out of space on your hard drive!

          Reply

  17. Mario
    June 26, 2017 @ 9:07 pm

    Hi Rolf, when will be available the third part? It has been a long time the first and second. The tutorials are really good so I would like to be part of the secure nodes zen network

    Reply

  18. Kneox
    June 28, 2017 @ 7:35 pm

    Allways 0.00 in balance gâter one month, is it normal ?

    Reply

    • Kneox
      June 28, 2017 @ 7:35 pm

      After one month*

      Reply

  19. jack
    July 1, 2017 @ 5:04 pm

    Do we need to keep the 42 zencash in the node?

    Reply

    • agulab
      July 20, 2017 @ 9:42 am

      I’m interested in this question as well. There’s no remote activation for the Secure Node?

      Reply

  20. Frankie
    July 3, 2017 @ 12:59 pm

    Cheers Rolf, saved me and my mates a ton of work 🙂

    Reply

  21. Gary
    July 5, 2017 @ 11:01 am

    Thanks for the write up; excellent instructions! Another node lives! 🙂

    Reply

  22. Daniel
    July 9, 2017 @ 6:20 pm

    Thanks for the tutorial.
    Just a question, whats the estimated monthly income, and ROI time when running a Zen node?

    Reply

    • zerx
      July 19, 2017 @ 12:34 am

      it will be 3.5% or something like that split up between all the secure nodes per block. So depends on how many blocks are solved and how many secure nodes there are.

      Reply

  23. Emejay
    July 20, 2017 @ 3:25 pm

    Hello, First of all, thank you for all the help. When the part 3 will be complete?

    Reply

    • Rolf
      August 2, 2017 @ 8:54 am

      After the secure node tracking and payment system is running. It is in testing now by the Zen team.

      Reply

  24. dimvas
    August 2, 2017 @ 2:14 am

    Hello! How can i update from an older to to Zen 2.0.9-4 version?

    Reply

    • Rolf
      August 2, 2017 @ 8:53 am

      If you are already on the correct repository, the ZenCashOfficial at https://github.com/ZencashOfficial

      then do this set of commands:

      cd ~/zencash/zen/
      git pull
      ./zcutil/build.sh -j$(nproc)
      zen-cli stop
      sudo cp src/zend /usr/bin/
      sudo cp src/zen-cli /usr/bin/
      zend
      

      Reply

  25. How to make zend run on a low numbered network port – CoinAffairs
    August 8, 2017 @ 6:08 pm

    […] This is a side note and a followon to this article on How to Build a Zen Secure Node – Part 2 […]

    Reply

  26. Peter
    August 11, 2017 @ 6:13 am

    Great work, Rolph! Big thanks! We are waitinig for part 3 :))

    Reply

    • Rolf
      August 28, 2017 @ 1:04 pm

      We have some good developers at ZenCash working on the TLS integration and the Secure Node tracking and payment system.

      Hopefully this week I can try making nodes work on a hardware device using KVM and get 4 nodes running on it at the same time.

      Reply

  27. Barry
    September 3, 2017 @ 10:26 am

    Hi there,

    Thanks for this awesome guide, I’m a little stuck after I do the “./zcutil/build.sh -j$(nproc)” command. It builds it but there are few error.

    Makefile:3072: recipe for target ‘libbitcoin_server_a-init.o’ failed
    make[2]: *** [libbitcoin_server_a-init.o] Error 4
    make[2]: Leaving directory ‘/home/juntao/zencash/zen/src’
    Makefile:5176: recipe for target ‘all-recursive’ failed
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory ‘/home/juntao/zencash/zen/src’
    Makefile:625: recipe for target ‘all-recursive’ failed

    Any idea what Im doing wrong, everything was working up to this point.

    Thanks.

    Reply

    • Barry
      September 6, 2017 @ 5:05 am

      Never mind, restarted and it came right!

      Thanks

      Reply

      • Rolf
        September 6, 2017 @ 9:32 pm

        great to hear!

        Reply

  28. Matt
    September 12, 2017 @ 5:37 pm

    Hi all,

    I was having trouble building using the master branch at github, as referenced in this guide.

    However, thanks to a dev comment on a pull request, I was able to build from the development branch with no issues at all.

    Just clone the development branch instead of the master branch, and the rest is gravy.

    Just a heads up for those having difficulty with the current guide.

    Rolf, thank you very much for this guide, by the way!

    Reply

  29. ZC
    September 20, 2017 @ 7:12 am

    Nice Tut , i get the below errors , is this normal on 1st boot ? the block height is increasing

    “version”: 2001050,
    “protocolversion”: 170002,
    “walletversion”: 60000,
    “balance”: 0.00000000,
    “blocks”: 29176,
    “timeoffset”: 0,
    “connections”: 9,
    “proxy”: “”,
    “difficulty”: 10656.0223791006,
    “testnet”: false,
    “keypoololdest”: 1505903877,
    “keypoolsize”: 101,
    “paytxfee”: 0.00000000,
    “relayfee”: 0.00000100,
    “errors”: “WARNING: check your network connection, 0 blocks received in the last 4 hours (96 expected)”

    Reply

    • ZC
      September 20, 2017 @ 12:12 pm

      Please ignore , all looking good now , so what next generate new wallet addy and send 42 ZEN to , are there any tuts on running a MN ? TiA

      Reply

      • hugh
        November 4, 2017 @ 2:00 am

        Hey! I have the same warning ‘ “errors”: “WARNING: check your network connection, 0 blocks received in the last 4 hours (96 expected)”‘

        How did you fix yours?

        Thanks!

        Reply

  30. Robcsa
    September 29, 2017 @ 4:55 pm

    Hi i got this error!

    Could somebody help me please ? I got the following error text while trying to do this step:sudo .acme.sh/acme.sh –issue –standalone -d znode.blockoperations.io. It seems that (my domain) is an IDN( Internationalized Domain Names), please install ‘idn’ command first.
    Thanks in advance.

    Reply

    • atlmag
      November 4, 2017 @ 4:17 am

      I don’t think you’re supposed to do sudo .acme.sh/acme.sh –issue as the tutorial says, I did it and ended up with the certifications in the /root/ folder

      see here https://github.com/Neilpang/acme.sh 4. or 5.

      acme.sh –issue –standalone -d example.com -d http://www.example.com -d cp.example.com

      Reply

  31. Artakan Berger
    October 20, 2017 @ 7:36 am

    About acme.sh, there is a missing option when you first create it:
    If you do not specify the –home option, the certificate will go in your root the first time.

    So the instruction should be:
    sudo .acme.sh/acme.sh –issue –standalone -d znode.blockoperations.io –home “/home/blockops/.acme.sh”

    Of course adapt it with your own user.

    Reply

    • atlmag
      November 4, 2017 @ 4:18 am

      Hi, so I already made this mistake, can I just move it?

      Reply

  32. btomic11
    October 29, 2017 @ 11:10 am

    1. Is zencash secure nodes stil in alpha phase?
    2. This is a guide for setting up one secure node, if one wanted to have more secure nodes, do you have to have a vps for every node, or can you have lets say 2 or more nodes on one vps?
    3. It says that the requirements are 4 GB ram and more, solid cpu, windows 7 or better. But if you have more secure nodes say 5, 10, 20 or even a 100 do you have to have better system and hardware configuration that this?

    Reply

  33. Securezone
    November 2, 2017 @ 3:12 pm

    Hello!

    I try to get a SSL Certificate for an new Domain from namecheap. My example Domain is “szone.de” and a “A Record ” securenode.

    I try the following on my Ubuntu 16.04 LTS Server from Linode

    sudo .acme.sh/acme.sh –issue –standalone -d securenode.szone.de

    I get the folloing Error:

    [Thu Nov 2 19:08:06 UTC 2017] Standalone mode.
    [Thu Nov 2 19:08:06 UTC 2017] Creating domain key
    [Thu Nov 2 19:08:07 UTC 2017] The domain key is here: “/home/secure/.acme.sh”/securenode.szone.de/securenode.szone.de.key
    [Thu Nov 2 19:08:07 UTC 2017] Single domain=’securenode.szone.de’
    [Thu Nov 2 19:08:07 UTC 2017] Getting domain auth token for each domain
    [Thu Nov 2 19:08:07 UTC 2017] Getting webroot for domain=’securenode.szone.de’
    [Thu Nov 2 19:08:07 UTC 2017] Getting new-authz for domain=’securenode.szone.de’
    [Thu Nov 2 19:08:08 UTC 2017] The new-authz request is ok.
    [Thu Nov 2 19:08:08 UTC 2017] Verifying:securenode.szone.de
    [Thu Nov 2 19:08:08 UTC 2017] Standalone mode server
    [Thu Nov 2 19:08:11 UTC 2017] securenode.szone.de:Verify error:DNS problem: NXDOMAIN looking up A for securenode.szone.de
    [Thu Nov 2 19:08:11 UTC 2017] Please add ‘–debug’ or ‘–log’ to check more details.
    [Thu Nov 2 19:08:11 UTC 2017] See: https://github.com/Neilpang/acme.sh/wiki/How-to-debug-acme.sh

    Could someone help me?

    Thx in advanced!

    Reply

    • dbus
      November 19, 2017 @ 7:18 am

      i am getting the same error as well can somebody assist? thanks

      Reply

      • Matthee Derby
        December 1, 2017 @ 2:38 pm

        I am having the same problem. Any idea?

        Reply

  34. toshabi
    November 12, 2017 @ 12:23 pm

    Hi,

    great tutorial so far, thanks! I have a noob question:
    You say here to add a different username and address (+pw ofc):
    addnode=zpool.blockoperations.com
    addnode=zennodes.network
    rpcuser=znodeuser
    rpcpassword=63Qa5VybvCTPppBpVmn8HpjrKgxqaaEAqfYVrHjk9WtBG738
    Do I need to register a domain for this? Or what kind of address can I use?

    Reply

    • toshabi
      November 13, 2017 @ 11:26 am

      Solved, thanks!

      Reply

      • TPH_Toys
        November 25, 2017 @ 12:05 am

        wondering if I I change both aaddnode=zpool.blockoperations.com and addnode=zennodes.network . Do I just use my domain name here in both.

        Reply

      • Sebb
        November 27, 2017 @ 8:19 pm

        Hi Rolf and thank you for your work!
        I am a bit confused at the step to edit “zen.conf”
        what to add in the following lines below ? should I buy the domain you are talking about in cheapname first before to do this step? I thank you again for your awesome work.

        addnode=zpool.blockoperations.com (?)
        addnode=zennodes.network (?)

        Reply

      • Sasha
        November 27, 2017 @ 8:24 pm

        Hi!
        I am looking for this answer, how did you resolve it please? Thank you very much

        Reply

  35. Wie man eine ZenCash Secure Node erstellt und bedient – vollständiger Leitfaden! – ZenCash Blog
    November 29, 2017 @ 12:14 pm

    […] Guide beinhaltet Teil 1, Teil 2, Teil 2.5 und weiter Informationen. Es ist nicht zwingend notwendig die anderen Guides zu lesen, […]

    Reply

  36. chemical_h4ns
    November 30, 2017 @ 5:11 pm

    Hi ,
    I become the message when compiling:
    {standard input}: Assembler messages:
    {standard input}:41326: Warning: end of file not at end of a line; newline inserted
    g++: internal compiler error: Killed (program cc1plus)
    Please submit a full bug report,
    with preprocessed source if appropriate.
    See for instructions.
    Makefile:3109: recipe for target ‘libbitcoin_server_a-main.o’ failed
    make[2]: *** [libbitcoin_server_a-main.o] Error 4
    make[2]: Leaving directory ‘/home/spatz/zen/src’
    Makefile:5213: recipe for target ‘all-recursive’ failed
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory ‘/home/spatz/zen/src’
    Makefile:625: recipe for target ‘all-recursive’ failed
    make: *** [all-recursive] Error 1

    what can i do?

    I think i made a mistake by using the wrong command at first:

    sudo apt-get install \
    build-essential pkg-config libc6-dev m4 g++-multilib \
    autoconf libtool ncurses-dev unzip git python \
    zlib1g-dev wget bsdmainutils automake

    PLease help me

    Reply

    • chemical_h4ns
      November 30, 2017 @ 7:34 pm

      Ok I found out what was the problem.
      I skipped the memory swap in part 1 course of a tipping error.
      The compiling error was connected to little space on the vps.

      cheers

      Reply

  37. paul
    December 3, 2017 @ 6:34 pm

    30 years experience in unix/linux and for parts I could not follow what you were doing. Not often you see documentation this bad.

    Reply

  38. G
    December 5, 2017 @ 12:22 pm

    Hi,

    I am getting this error after running the command

    sudo apt -y install build-essential pkg-config libc6-dev m4 g++-multilib autoconf libtool ncurses-dev unzip git python zlib1g-dev wget bsdmainutils automake

    {standard input}: Assembler messages:
    {standard input}:29938: Warning: end of file not at end of a line; newline inserted
    {standard input}:30203: Error: unknown pseudo-op: `.cfi_def_cfa_offs’
    {standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
    g++: internal compiler error: Killed (program cc1plus)
    Please submit a full bug report,
    with preprocessed source if appropriate.
    See for instructions.
    Makefile:3109: recipe for target ‘libbitcoin_server_a-main.o’ failed
    make[2]: *** [libbitcoin_server_a-main.o] Error 4
    make[2]: Leaving directory ‘/home/user/zencash/zen/src’
    Makefile:5213: recipe for target ‘all-recursive’ failed
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory ‘/home/user/zencash/zen/src’
    Makefile:625: recipe for target ‘all-recursive’ failed
    make: *** [all-recursive] Error 1

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *