Plebnet Playground

From PlebNet Wiki
Jump to navigation Jump to search
Other languages:
English • ‎español


Plebnet Playground / plebnet.fun

Plebnet Playground Logo

Signet based bitcoin / lnd package which will allow plebs to learn and use lightning network without having to take any financial risks.

Github Repo: https://github.com/PLEBNET-PLAYGROUND/plebnet-playground-docker


Progress

  • Signet master node that handles block production - DONE
  • CLI docker setup for bitcoind & lnd under tor - DONE
  • ThunderHub and RTL GUI containers added - DONE
  • Faucet API to allow plebs to obtain some coins - Running, could use some improvement
  • Faucet Web UI - Soon
  • RPi4 docker images - In future
  • Automated traffic so people can get routes - RUNNING
  • Jupyter Dashboard Project - IN PROGRESS

Signet Reference Material

Signet Setup Wiki


Master node info

signetchallenge=512102ee856c56a5aaadd1656f849bafa4c9dacc86a2878fe546c6189185f842ae2c1851ae
Bitcoin Endpoints
Address Port
104.131.10.218 38333
2604:a880:800:14::2c:9000 38333
6megrst422lxzsqvshkqkg6z2zhunywhyrhy3ltezaeyfspfyjdzr3qd.onion 38333
cidcbr4jpvorsegnk5ehkpydf57fpl2vw5cdzvqre74byv4knv5a.b32.i2p 38333


Lightning Endpoints
NodeId@Address:Port
03ee9d906caa8e8e66fe97d7a76c2bd9806813b0b0f1cee8b9d03904b538f53c4e@104.131.10.218:9735
03ee9d906caa8e8e66fe97d7a76c2bd9806813b0b0f1cee8b9d03904b538f53c4e@xrybvh4myas4rr3p6itf5ib6zqtrfb5gyb5246bakifev5s62rlicyad.onion:9735
03ee9d906caa8e8e66fe97d7a76c2bd9806813b0b0f1cee8b9d03904b538f53c4e@[2604:a880:800:14::2c:9000]


Current Infrastructure

Role Machine Type Cost
Block producer / LND node Digital Ocean 2 GB Memory / 2 AMD vCPU / 60 GB Disk $19.44


Aliases for easy management

alias lncli-signet='lncli -n signet '
 


lnd.conf

FYI, LND did not add signet support until v0.13.0+, please make sure you are on this version or higher before attempting


[Application Options]

listen=0.0.0.0:9735
listen=[::1]:9736
rpclisten=localhost:10009
rpclisten=[::1]:10010
minchansize=10000000
ignore-historical-gossip-filters=true
accept-keysend=true
accept-amp=true
allow-circular-route=true
numgraphsyncpeers=3
# INSERT YOUR ALIAS ON THE NEXT LINE!
alias=HelloJessica
# UNCOMMENT AND EDIT FILE PATH WITH CLEAR TEXT PASSWORD TO AUTO UNLOCK LND WALLET
#wallet-unlock-password-file=/path/to/unlock.password
#externalip=<replace yours if using public IP>
[Bitcoin]
bitcoin.active=true
bitcoin.mainnet=false
bitcoin.signet=true
bitcoin.signetseednode=104.131.10.218
bitcoin.node=bitcoind
bitcoin.dnsseed=0
[Bitcoind]
bitcoind.dir=/var/lib/bitcoind/
bitcoind.rpchost=localhost
bitcoind.rpcuser=bitcoin
bitcoind.rpcpass=bitcoin
bitcoind.zmqpubrawblock=tcp://127.0.0.1:28332
bitcoind.zmqpubrawtx=tcp://127.0.0.1:28333
[tor]
tor.active=true
tor.socks=9050
tor.control=localhost:9051
#password is set in your torrc if you use one below it is just set as a "hello"
tor.password=hello
tor.v3=true
[watchtower]
watchtower.listen=0.0.0.0:9911
watchtower.listen=[::1]:9912
[wtclient]
wtclient.active=true
wtclient.sweep-fee-rate=10
[protocol]
protocol.wumbo-channels=true



bitcoin.conf

listen=1
listenonion=1
signet=1
daemon=1
#rpcauth the password here is set as "bitcoin"
rpcauth=bitcoin:c8c8b9740a470454255b7a38d4f38a52$e8530d1c739a3bb0ec6e9513290def11651afbfd2b979f38c16ec2cf76cf348a
txindex=1
#Only include i2psam if you have install i2p
#i2psam=127.0.0.1:7656
server=1
dnsseed=0
[signet]
zmqpubrawblock=tcp://0.0.0.0:28332
zmqpubrawtx=tcp://0.0.0.0:28333
zmqpubhashblock=tcp://0.0.0.0:28334
wallet=/var/lib/bitcoind/signet/wallets
signetchallenge=512102ee856c56a5aaadd1656f849bafa4c9dacc86a2878fe546c6189185f842ae2c1851ae
proxy=127.0.0.1:9050
addnode=104.131.10.218:38333



/etc/tor/torrc

This example has a HashedControlPassword set as "please", you can create your own running tor --hash-password mynewpassword

SocksPort 9050 # Default: Bind to localhost:9050 for local connections.
RunAsDaemon 1


## The port on which Tor will listen for local connections from Tor
## controller applications, as documented in control-spec.txt.
ControlPort 9051
## If you enable the controlport, be sure to enable one of these
## authentication methods, to prevent attackers from accessing it.
HashedControlPassword 16:A170E9325684E5366021C2AA404D4CA5AAE0D6FFE947E60B939083EF61
CookieAuthentication 1
CookieAuthFileGroupReadable 1



notes from getting started with ubuntu 20.04 running in a VM

these notes are incomplete and may or may not help you get things working.


# Install and configure tor

sudo apt install -y tor

#we need to add some stuff to torrc so that lnd and bitcoind are allowed to set themselves up as a tor service, or else we get this error:
#unable to initialize tor controller: unable to connect to Tor server: dial tcp 127.0.0.1:9051: connect: connection refused


#edit /etc/tor/torrc 

SocksPort 9050 # Default: Bind to localhost:9050 for local connections.
RunAsDaemon 1

#make sure tor is running and has picked up the changes to the config file
service tor start
service tor restart

#install and configure bitcoin
#https://medium.com/@lukedashjr/how-to-securely-install-bitcoin-9bfeca7d3b2a
wget https://bitcoin.org/bin/bitcoin-core-0.21.1/bitcoin-0.21.1-x86_64-linux-gnu.tar.gz

#gpg verification should go here

tar xvf bitcoin-*tar.gz
sudo cp -vR bitcoin-*/* /usr/

#edit ~/.bitcoin/bitcoin.conf

#install and configure lnd
#https://github.com/lightningnetwork/lnd/releases

wget https://github.com/lightningnetwork/lnd/releases/download/v0.13.1-beta/lnd-linux-amd64-v0.13.1-beta.tar.gz
tar xvf lnd-linux-amd64-v0.13.1-beta.tar.gz
cp lnd-linux-amd64-v0.13.1-beta/ln* /usr/local/bin/

mkdir ~/.lnd/

#edit ~/.lnd/lnd.conf

#start lnd and create a wallet

#https://github.com/lightningnetwork/lnd/blob/master/docs/INSTALL.md#creating-a-wallet
#https://github.com/lightningnetwork/lnd/blob/master/docs/wallet.md
#https://docs.lightning.engineering/lightning-network-tools/lnd/run-lnd

openssl rand -hex 21 > ~/.lnd/wallet_password

cat ~/.lnd/wallet_password
# Copy this password

lncli create
# Follow prompts, use the wallet password as the initial password and set no cipher seed password

#instructions for backing up the wallet goes here


#the first time you run lnd (without a wallet), you cant have the unlock passphrase in the config file to automatically unlock the wallet. now that we have created it, we can add a line to lnd.conf to automatically unlock it:
#wallet-unlock-password-file=/root/.lnd/wallet_password

#deal with error messages about ipv6

#find an address to request signet coins to:

lncli --no-macaroons newaddress p2wkh

bitcoin-cli sendtoaddress "tb1q88nwytlynzwa5f99hpjrae8phpvs5l94dwqfvf" 0.1

./src/bitcoin-cli  --datadir=./signet  -named sendtoaddress address="tb1q88nwytlynzwa5f99hpjrae8phpvs5l94dwqfvf" amount=0.3 fee_rate=25


lncli --no-macaroons connect 03ee9d906caa8e8e66fe97d7a76c2bd9806813b0b0f1cee8b9d03904b538f53c4e@xrybvh4myas4rr3p6itf5ib6zqtrfb5gyb5246bakifev5s62rlicyad.onion:9735
lncli --no-macaroons openchannel 03ee9d906caa8e8e66fe97d7a76c2bd9806813b0b0f1cee8b9d03904b538f53c4e 10000000 2500000




General Step-by-Step Guide (generic)

https://stopanddecrypt.medium.com/?p=489180297d5


Crowdfunding

https://btcpay.xenon.fun/apps/477A5RjNYiRcHWZUm4di4V6DFLnx/crowdfund