Bitcoin is the currency of the Internet. Not only it was the first cryptocurrency, pioneering concepts such as blockchain, but it was resiliently stayed as the most widely used one.

However, certain challenges have come up in Bitcoin’s horizons lately. One of those challenges is the speed at which transactions are completed when volume is high.

Simply put, Bitcoin wasn’t designed for sheer volumes of transactions that also need to be verified instantly. In other words, its potential for becoming a means of payment for transactions that require instant verification is limited. Unless, of course, an alternative way of handling instant verification transactions is adopted.

Bitcoin’s Lightning Network is that ‘alternative way’ that we were waiting for.

Lightning network introduces a ‘second layer’ payment protocol that allows for transactions to be conducted instantly in a different layer, and then added later to the main blockchain.

The significance of this technology is quite massive. It will lead to decreased congestion, lower fees, and it will represent an important challenge to many altcoins whose only comparative advantage with regards to Bitcoin is faster transactions.

In today’s post, we will show you how to set up a Lightning Network node on the testnet. We will be using a CentOS 7 server, as per usual.

To start, let us install all the needed dependencies using the following command-

yum install -y autoconf automake build-essential git libtool libgmp-dev libsqlite3-dev python python3 net-tools libsodium-dev


You will see a console message like this one once the installation is complete:

Screen for complete

Now, we will install OpenSSL using the following commands-

  • cd /usr/src
  • wget
  • tar zxvf openssl-1.0.1l.tar.gz
  • cd openssl-1.0.1l
  • export CFLAGS=”-fPIC”
  • ./config –prefix=/opt/openssl shared enable-ec enable-ecdh enable-ecdsa
  • make all
  • make install

This will take a while. After this we can download, build and install Bitcoin core using the following list of commands. We will be installing Bitcoin version 0.9.4 in this example

  • cd /usr/src
  • wget
  • tar zxvf v0.9.4.tar.gz
  • cd bitcoin-0.9.4
  • ./
  • ./configure –prefix=/opt/bitcoin PKG_CONFIG_PATH=/opt/openssl/lib/pkgconfig LIBS=-Wl,-rpath,/opt/openssl/lib
  • make
  • make install

This completes our initial setup.

For running tests, you can get additional dependencies using the following command-

yum install -y asciidoc valgrind python3-pip

Additional dependency

Next, you can clone the Lightning project using the following command-

git clone

Clone command

Build this using the following commands-

  • cd lightning
  • make

Before you start Lightning, first make sure you do not have walletbroadcast=0 in your ~/.bitcoin/bitcoin.conf file.

Now, you can start bicoind using the following command-

bitcoind -daemon -testnet 

Wait until bitcoind has synchronized with the testnet network. Once this is completed, you can start lightningd using the following command-

lightningd/lightningd –network=testnet –log-level=debug

You can list all the commands needed using- cli/lightning-cli help

That is it. You now have a Lightning Network node running on the testnet!