<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://nexus-wiki.org/index.php?action=history&amp;feed=atom&amp;title=Dev%3ABuild_a_Nexus_Private_Testnet</id>
	<title>Dev:Build a Nexus Private Testnet - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://nexus-wiki.org/index.php?action=history&amp;feed=atom&amp;title=Dev%3ABuild_a_Nexus_Private_Testnet"/>
	<link rel="alternate" type="text/html" href="https://nexus-wiki.org/index.php?title=Dev:Build_a_Nexus_Private_Testnet&amp;action=history"/>
	<updated>2026-04-24T15:37:17Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.3</generator>
	<entry>
		<id>https://nexus-wiki.org/index.php?title=Dev:Build_a_Nexus_Private_Testnet&amp;diff=170&amp;oldid=prev</id>
		<title>Nexus wiki: Nexus wiki moved page Tritium++ Private Testnet to Dev:Build a Nexus Private Testnet without leaving a redirect</title>
		<link rel="alternate" type="text/html" href="https://nexus-wiki.org/index.php?title=Dev:Build_a_Nexus_Private_Testnet&amp;diff=170&amp;oldid=prev"/>
		<updated>2024-10-07T22:12:13Z</updated>

		<summary type="html">&lt;p&gt;Nexus wiki moved page &lt;a href=&quot;/index.php?title=Tritium%2B%2B_Private_Testnet&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Tritium++ Private Testnet (page does not exist)&quot;&gt;Tritium++ Private Testnet&lt;/a&gt; to &lt;a href=&quot;/index.php/Dev:Build_a_Nexus_Private_Testnet&quot; title=&quot;Dev:Build a Nexus Private Testnet&quot;&gt;Dev:Build a Nexus Private Testnet&lt;/a&gt; without leaving a redirect&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:12, 7 October 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key nexus_wiki:diff:1.41:old-69:rev-170 --&gt;
&lt;/table&gt;</summary>
		<author><name>Nexus wiki</name></author>
	</entry>
	<entry>
		<id>https://nexus-wiki.org/index.php?title=Dev:Build_a_Nexus_Private_Testnet&amp;diff=69&amp;oldid=prev</id>
		<title>Nexus wiki: Created page with &quot;This guide is for running a single, or island, node for testing. It does not require mining or staking to produce blocks.  == Introduction ==  This guide will help to setup a private testnet for development. The private node has no consensus, and is a private database. This node can be used to test API calls, without spending on mining or the use of coins.  == Understanding Public, Private &amp; Hybrid ==  The Nexus wallet can be used to run public, private and hybrid networ...&quot;</title>
		<link rel="alternate" type="text/html" href="https://nexus-wiki.org/index.php?title=Dev:Build_a_Nexus_Private_Testnet&amp;diff=69&amp;oldid=prev"/>
		<updated>2024-10-04T05:43:52Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;This guide is for running a single, or island, node for testing. It does not require mining or staking to produce blocks.  == Introduction ==  This guide will help to setup a private testnet for development. The private node has no consensus, and is a private database. This node can be used to test API calls, without spending on mining or the use of coins.  == Understanding Public, Private &amp;amp; Hybrid ==  The Nexus wallet can be used to run public, private and hybrid networ...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This guide is for running a single, or island, node for testing. It does not require mining or staking to produce blocks.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This guide will help to setup a private testnet for development. The private node has no consensus, and is a private database. This node can be used to test API calls, without spending on mining or the use of coins.&lt;br /&gt;
&lt;br /&gt;
== Understanding Public, Private &amp;amp; Hybrid ==&lt;br /&gt;
&lt;br /&gt;
The Nexus wallet can be used to run public, private and hybrid networks, the configuration is what sets them apart. The private and hybrid networks will not be compatible with legacy.&lt;br /&gt;
&lt;br /&gt;
Public network is the mainnet which is an open public network. Private mode is a permissioned network, it is not connected to the mainnet and is a standalone network. Hybrid network is the amalgamation of the private and the public network. Hybrid mode helps organisations to keep their sensitive data safe, private and in their control, but use the security of the public network and also transfer value between the two.&lt;br /&gt;
&lt;br /&gt;
In a private network, throughput can be increased by adding additional nodes. In a private network there is no mining or staking needed to secure the network.&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Any computer with minimum of 1 CPU, 2GB RAM and 20GB hard disk space, Raspberry Pi 4 with 2 GB RAM&lt;br /&gt;
* Ubuntu server 20.04 LTS for AMD/IA64 or Ubuntu IOT for Raspberry Pi. (Use any linux distribution of choice, but this guide is tailored for ubuntu)&lt;br /&gt;
* USB drive or SD card to install ubuntu&lt;br /&gt;
* Etcher – To burn the OS image file to USB/SD card&lt;br /&gt;
* Putty if using ssh via windows.&lt;br /&gt;
&lt;br /&gt;
== Prepare the Node ==&lt;br /&gt;
&lt;br /&gt;
Install ubuntu server 20.04 LTS or distro of choice, install open-ssh server during the install and once the installation is complete, restart the node. SSH into the node and follow the below commands. Copy the commands and paste it in the terminal using keys CTRL+SHIFT+v. Update and upgrade the node:&lt;br /&gt;
&lt;br /&gt;
 sudo apt update; sudo apt upgrade -y&lt;br /&gt;
&lt;br /&gt;
Open SSH port before enabling the firewall:&lt;br /&gt;
&lt;br /&gt;
 sudo ufw allow ssh&lt;br /&gt;
&lt;br /&gt;
Enable firewall:&lt;br /&gt;
&lt;br /&gt;
 sudo ufw enable&lt;br /&gt;
&lt;br /&gt;
Check firewall status:&lt;br /&gt;
&lt;br /&gt;
 sudo ufw status&lt;br /&gt;
&lt;br /&gt;
Set timezone:&lt;br /&gt;
&lt;br /&gt;
 sudo dpkg-reconfigure tzdata&lt;br /&gt;
&lt;br /&gt;
To change the hostname – Optional&lt;br /&gt;
&lt;br /&gt;
 sudo hostnamectl set-hostname &amp;lt;newhostname&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reboot node:&lt;br /&gt;
&lt;br /&gt;
 sudo reboot&lt;br /&gt;
&lt;br /&gt;
The computer is ready to install the nexus core.&lt;br /&gt;
&lt;br /&gt;
== Compiling Nexus Core ==&lt;br /&gt;
&lt;br /&gt;
Install the dependencies required for compiling nexus core, It will take some time to complete depending on the internet speed:&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install -y build-essential libssl-dev libminiupnpc-dev git&lt;br /&gt;
&lt;br /&gt;
Download the latest nexus core 5.1 source code, should only take a few seconds to complete (This link may change as development progresses):&lt;br /&gt;
&lt;br /&gt;
 git clone --branch merging https://github.com/Nexusoft/LLL-TAO&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Tritium++ is in merging branch at the time of writing this guide.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
If Tritium++ moved to merging, use the following command:&lt;br /&gt;
&lt;br /&gt;
 git clone --depth 1 https://github.com/Nexusoft/LLL-TAO&lt;br /&gt;
&lt;br /&gt;
Change into the source code directory&lt;br /&gt;
&lt;br /&gt;
 cd LLL-TAO&lt;br /&gt;
&lt;br /&gt;
Run the command to compile from source, please be patient, as this can take a very long time depending on your CPU. Replace the 1 in ‘j1’ to the number of cores / threads for compiling faster:&lt;br /&gt;
&lt;br /&gt;
 make -f makefile.cli clean&lt;br /&gt;
&lt;br /&gt;
For x86/IA64 computers use:&lt;br /&gt;
&lt;br /&gt;
 make -f makefile.cli -j1 AMD64=1 NO_WALLET=1&lt;br /&gt;
&lt;br /&gt;
For compiling on Raspberry Pi use:&lt;br /&gt;
&lt;br /&gt;
 make -f makefile.cli -j1 ARM64=1 NO_WALLET=1&lt;br /&gt;
&lt;br /&gt;
Will show “Finished building nexus” on a successful compile. The make command creates a new executable file named &amp;#039;nexus&amp;#039;. To check use the list command:&lt;br /&gt;
&lt;br /&gt;
 ls -lah&lt;br /&gt;
&lt;br /&gt;
There are two ways to access the wallet; from the LLL-TAO folder, API&amp;#039;s can be accessed from this location only via terminal and for every command you have to specify the path (./) before the executable filename (./nexus) or if the executable file is moved to the /usr/bin directory, it can be accessed universally from any location without path (nexus). For this guide will not use the path.&lt;br /&gt;
&lt;br /&gt;
To move the nexus executable to the /usr/bin folder:&lt;br /&gt;
&lt;br /&gt;
 sudo mv ~/LLL-TAO/nexus /usr/bin&lt;br /&gt;
&lt;br /&gt;
== Configuring The Wallet (nexus.conf) ==&lt;br /&gt;
&lt;br /&gt;
Create Nexus core directory (it’s a hidden directory, Nexus daemon creates it automatically on first start. We are creating it manually to create the configuration file. If the directory is available, skip this step.)&lt;br /&gt;
&lt;br /&gt;
 mkdir ~/.Nexus&lt;br /&gt;
&lt;br /&gt;
The wallet configuration is stored in nexus.conf. Create the nexus.conf file.&lt;br /&gt;
&lt;br /&gt;
 nano ~/.Nexus/nexus.conf&lt;br /&gt;
&lt;br /&gt;
Copy the configuration below, to the nexus.conf file with ctrl+shift+v and edit or disable the parameters as needed:&lt;br /&gt;
&lt;br /&gt;
 #Nexus private standalone node config- Only for 5.1 rc1 &amp;amp; above&lt;br /&gt;
 #Default API user/pass to blank for private network &lt;br /&gt;
 #apiuser=&amp;lt;username&amp;gt;&lt;br /&gt;
 #apipassword=&amp;lt;password&amp;gt;&lt;br /&gt;
 #Disable authentication of API requests&lt;br /&gt;
 apiauth=0&lt;br /&gt;
 #To remotely access the node API&amp;#039;s&lt;br /&gt;
 apiremote=1&lt;br /&gt;
 #To remotely access API&amp;#039;s use the llpallowip flag. The &amp;lt;ipaddress&amp;gt; can use wildcards; (llpallowip=192.168.*.*:7080)&lt;br /&gt;
 llpallowip=&amp;lt;ipaddress&amp;gt;:7080&lt;br /&gt;
 #Run wallet as a daemon&lt;br /&gt;
 daemon=1&lt;br /&gt;
 #Run node in private mode (defaults to testnet in 5.1)&lt;br /&gt;
 private=1&lt;br /&gt;
 #Run as a standalone node. (Disable this on additional nodes) &lt;br /&gt;
 manager=0&lt;br /&gt;
 #Run as a local node, disable for public node&lt;br /&gt;
 nodns=1&lt;br /&gt;
 #Enables multiple users to be logged in concurrently    &lt;br /&gt;
 multiuser=1&lt;br /&gt;
 #Latency is in ms, this is the min time between blocks&lt;br /&gt;
 latency=500&lt;br /&gt;
 #Enables creation of blocks in private mode.( Use only on one node) (Use a secure password)&lt;br /&gt;
 generate=&amp;lt;password&amp;gt;&lt;br /&gt;
 #To connect additional nodes use addnode flag, the ipaddress will be of the first node with the ‘generate’ flag)&lt;br /&gt;
 addnode=&amp;lt;ipaddress&amp;gt;&lt;br /&gt;
 #To avoid accidental node shutdown with the stop command&lt;br /&gt;
 system/stop=&amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ctrl+s and Ctrl+x to save and exit the editor.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;To add an additional node to the private network, disable ‘manager’ and ‘generate’ flags. Add the ‘addnode’ flag with ipaddress referring to the first node or the one with the ‘generate’ flag and an additional line for any other node in the network.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== API Commands ==&lt;br /&gt;
&lt;br /&gt;
To interact with the nexus core, use API commands via the terminal or remotely. If you have any doubts you can refer to the API documentation here. The documentation for 5.1.rc1 may take some time to be updated at the time of writing the guide.&lt;br /&gt;
Open ports 7080 and 8336 on the firewall:&lt;br /&gt;
&lt;br /&gt;
 sudo ufw allow 7080/tcp&lt;br /&gt;
 sudo ufw allow 8336/tcp&lt;br /&gt;
&lt;br /&gt;
If the executable is in the LLL-TAO directory to start nexus core, change into the LLL-TAO folder to run all the following commands &amp;quot;cd LLL-TAO To start the daemon, use the path and the executable file name ./nexus If you have moved the nexus executable file to the /user/bin then use the following command from any location&lt;br /&gt;
&lt;br /&gt;
 nexus&lt;br /&gt;
&lt;br /&gt;
To stop the daemon without password protection in config:&lt;br /&gt;
&lt;br /&gt;
 nexus system/stop&lt;br /&gt;
&lt;br /&gt;
To stop the daemon with password protection in config:&lt;br /&gt;
&lt;br /&gt;
 nexus system/stop password=&amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the node info:&lt;br /&gt;
&lt;br /&gt;
 ./nexus system/get/info&lt;br /&gt;
&lt;br /&gt;
To monitor your logs:&lt;br /&gt;
&lt;br /&gt;
 tail -f ~/.Nexus/testnet1/log/0.log&lt;br /&gt;
&lt;br /&gt;
To create a user account (signature chain). Username must be a minimum of 2 characters, passwords must be 8 characters and pin 4 characters. The PIN can be a combination of letters/numbers/symbols:&lt;br /&gt;
&lt;br /&gt;
 nexus users/create/user username=&amp;lt;username&amp;gt; password=&amp;lt;password&amp;gt; pin=&amp;lt;pin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Multi-user mode creates a new session for every user logged in and the user has to use that particular session ID with every API request for the particular user. Save the session ID.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
To login the user:&lt;br /&gt;
&lt;br /&gt;
 nexus users/login/user username=&amp;lt;username&amp;gt; password=&amp;lt;password&amp;gt; pin=&amp;lt;pin&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To unlock the account for automatically credit incoming transactions set (notifications=1). If it&amp;#039;s not set you will have to manually credit the incoming transactions else it will be credited back to the sender&amp;#039;s account after 24 hrs. This is the reversible transaction function working as designed.&lt;br /&gt;
&lt;br /&gt;
 nexus users/unlock/user pin=&amp;lt;pin&amp;gt; notifications=1 session=&amp;lt;sessionid&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To check the full node metrics:&lt;br /&gt;
&lt;br /&gt;
 ./nexus system/get/metrics&lt;br /&gt;
&lt;br /&gt;
The API commands can be used from the browser and output in JSON is displayed. (JSON formatter extension used to parse the JSON output). I hope this guide was helpful!&lt;/div&gt;</summary>
		<author><name>Nexus wiki</name></author>
	</entry>
</feed>