Configuration File

Bitcoin allows a user to create their own configuration file which specifies runtime options to use during each program start. Options that can be added to a configuration file are most of the options listed in the Command Line Options reference for Bitcoin.

A configuration file is a standard text file you create in the Bitcoin data directory. This file is optional, and is not created by Bitcoin. The file must be named bitcoin.conf

bitcoin.conf template

This is an example bitcoin.conf file. You must edit it before use – specifically, you must change the rpcpassword option to a unique password of your own creation.

Download this template: bitcoin.conf.example

### bitcoin.conf configuration file. Lines beginning with # are comments.
### Uncomment and edit options you wish to use.

## JSON-RPC options (for controlling a running bitcoin-qt/bitcoind process)

# server=1 tells Bitcoin to accept JSON-RPC commands.
server=1

# You must set rpcuser and rpcpassword to secure the JSON-RPC api
# You should create your own new random password. 
# The username and password MUST NOT be the same.

rpcuser=bitcoinrpc
rpcpassword=3QtnxrB7P5y4EpBdad1MkCeB2RHmArvcarw7udgXsAce

# How many seconds bitcoin will wait for a complete RPC HTTP request
# after the HTTP connection is established. 
rpctimeout=30

# By default, only RPC connections from localhost are allowed. Specify
# as many rpcallowip= settings as you like to allow connections from
# other hosts (and you may use * as a wildcard character):
#rpcallowip=10.1.1.*
#rpcallowip=192.168.1.*

# Listen for RPC connections on this TCP port:
rpcport=8332

# You can use bitcoind to send commands to bitcoin-qt/bitcoind
# running on another host using this option:
rpcconnect=127.0.0.1

# Use Secure Sockets Layer (also known as TLS or HTTPS) to communicate
# with Bitcoin -server or bitcoind
#rpcssl=1

# OpenSSL settings used when rpcssl=1
rpcsslciphers=TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!AH:!3DES:@STRENGTH
rpcsslcertificatechainfile=server.cert
rpcsslprivatekeyfile=server.pem


## Network-related settings:

# Run on the test network instead of the real bitcoin network.
#testnet=1

# Connect via a socks proxy
#proxy=127.0.0.1:9050

# Select the version of socks proxy to use (4-5, default: 5)
#socks=5

# Use proxy to reach tor hidden services (default: same as -proxy)
#tor=         

##############################################################
## Quick Primer on addnode vs connect ##
## Let's say for instance you use addnode=4.2.2.4 ##
## addnode will connect you to and tell you about the ##
## nodes connected to 4.2.2.4. In addition it will tell##
## the other nodes connected to it that you exist so ##
## they can connect to you. ##
## connect will not do the above when you 'connect' to it.##
## It will *only* connect you to 4.2.2.4 and no one else.##
## ##
## So if you're behind a firewall, or have other problems ##
## finding nodes, add some using 'addnode'. ##
## ##
## If you want to stay private, use 'connect' to only ##
## connect to "trusted" nodes. ##
## ##
## If you run multiple nodes on a LAN, there's no need for##
## all of them to open lots of connections. Instead ##
## 'connect' them all to one node that is port forwarded ##
## and has lots of connections. ##
## Thanks goes to [Noodle] on Freenode. ##
##############################################################

# Use as many addnode= settings as you like to attempt connection to specific peers
#addnode=69.164.218.197
#addnode=10.0.0.2:8333

# or use as many connect= settings as you like to connect ONLY to specific peers:
#connect=69.164.218.197
#connect=192.168.1.20:8333

# Do not use Internet Relay Chat to find peers.
noirc=0

# Maximum number of inbound+outbound connections.
#maxconnections=125

# Miscellaneous options

# Pre-generate this many public/private key pairs, so wallet backups will be valid
# after future transactions.
#keypool=100

# Add an optional transaction fee every time you send bitcoins.
#paytxfee=0.01

# Add timestamps to debug.log 
#logtimestamps=1         


# User interface options

# Start Bitcoin minimized
#min=1

# Minimize to the system tray
minimizetotray=0