Need some assistence on making it run correctly

Hi there,

made the convert from Core to Knots.
Running it on a laptop on Fedora 42.
Now trying to run the commands from Make Knots reachable over Tor … But already stranded on command #1.
Eventually i came past it but not sure if im oke know. Also run the #3 command but didnt find the user. Changed that to my user and it went through.
Also check the group but there is no group that like debian-tor. I think it didnt go well with installing Tor.

1 Like

Paul might be able to help, try posting up the commands you were following and any error messages or results you got when you tried.

1 Like

I’m spinning up a VM with Fedora 42 now. I’ll run through the commands (should be similar to the ones I posted for RHEL / CentOS / Rocky / Alma) and see what needs to change. If you have more details about what went wrong, that will also help. I’ll post an update shortly, once I get it working.

Haha, I hadn’t used Fedora before. The tree carving in the default background cracked me up:

image

Anyway, the below process worked (fresh install of Fedora 42 x86_64 and Knots v29.1.knots20250903)

#1. Install & start Tor (Fedora uses dnf and the service is tor):

sudo dnf install -y tor
sudo systemctl enable --now tor

#2. Expose Tor’s control port (and make the cookie/group readable):

sudo tee -a /etc/tor/torrc >/dev/null <<'EOF'
ControlPort 9051
CookieAuthentication 1
CookieAuthFileGroupReadable 1
DataDirectoryGroupReadable 1
EOF

sudo systemctl restart tor

#3. Give your login user access to the Tor cookie, then log out/in once

sudo usermod -aG toranon $USER

Log out/in (or reboot) for group changes to apply.

#4. Enable RPC Server in Bitcoin Knots
Open Settings → Options
Check “Enable RPC server”, click OK.

#5. Tell Bitcoin Knots to use Tor
Open Settings → Options → Open Configuration File → Continue, paste:

proxy=127.0.0.1:9050
listen=1
listenonion=1

Save.

#6. Restart Knots. Once fully synced, get your node’s .onion address:

bitcoin-cli getnetworkinfo | grep ".onion"

And check it on bitnodes.io

Looks like you were following the “Debian / Ubuntu / Linux Mint / Pop!_OS / RaspOS” instructions. The ones closer to your system are under “RHEL / CentOS / Rocky / Alma”, but what I just posted above is exactly the set of commands that I ran which worked for me on Fedora 42. So it should work best for you if you follow them.

Thanks, I will check it tomorrow when I’m back from work.
I’ll let you know.

Cool. I think you should skip step #2 if you already ran that in your earlier attempt. That one appends things to the config, so if you run it more than once it will add duplicate entries.

If you’ve already run step #2 more than once, you’ll want to edit /etc/tor/torrc and remove any duplicate entries from it. You should have only one set of these rows in there:

ControlPort 9051
CookieAuthentication 1
CookieAuthFileGroupReadable 1
DataDirectoryGroupReadable 1

i think im almost there.
the line datadirectorygroup… i added to the file.

question about the config file of knots. My file contains a line server=1 should i leave it there or delete it?

and can i delete the core folder or should i leave it?

got an error when i want to receive the onion adress

Could not locate RPC credentials. No authentication cookiecould be found, and RPC password is not set.

This is equivalent to:

#4. Enable RPC Server in Bitcoin Knots
Open Settings → Options
Check “Enable RPC server” , click OK .

I don’t know which one takes precidence, so you can just leave it there in your bitcoin.conf file to be sure.

This either means you have your datadir in a non-standard location (most likely) or that you have RPC authentication parameters in your bitcoin.conf (I assume not, since you only mentioned server=1 being in there). It could also mean that Knots is not running (make sure it is).

Locate where you have your datadir, and then you can update the command to:

bitcoin-cli -datadir=/path/to/your/datadir getnetworkinfo | grep -F '.onion'

i found my onion adress in the bitcoin knots ui. it is online.

can i delete the core folder?

i have just 1 incoming connection. a 127 adress is that oke?

Yes, as long as you don’t have your datadir under that folder (unlikely, but depends on how you configured it).

As long as you confirmed your node is reachable (for example, via bitnodes.io) then you are good to go. Other nodes will randomly start to connect with your node as your onion address propagates the known peers lists of other nodes that you connect with.

1 Like

Then everything is working. Thank you very much for the assistence.

1 Like

An step that I forgot to do is check my node on bitnodes.io
I entered my onion address here, and it shows up with a green checkmark, however, when I click on it says

PENDING
NODE STATUS PENDING ACTIVATION

Not sure about that. Also. I have noticed by copypasting some nodes from my Peers list that their addresses when you look them up on the bitnodes website, they also have this PENDING message but they have a section below that that says:

7-day-30-day-90-day
ADDR MONITOR

NODE_NETWORK, NODE_BLOOM. NODE_WITNESS, NODE_NETWORK_LIMITED (6710901)
SERVICES

Some have other settings (looks like it’s settings of how each node is setup). But my node has nothing there. So im still wondering if this is setup properly.

Also, I thought I wasn’t helping the network because I have no incoming connections (other than the 2 127.0.0.1 ones which im still not sure what they mean)

I thought that for the node to be reachable and help the network, you would have 10in connections from other peers that are connecting to you, then the other 10out connections from where you are downloading blocks. So I don’t understand what incoming connections mean then in this context. Like I said I thought that would be people connecting to your network, and there’s none. Same for this other poster above, which also reports a 127.0.0.1 connection. So basically, how are we helping the network, if we have no incoming connections?

So you do not see this type of table:

Exactly. So what does this mean?

My node was pending to but after 10 minutes it was reachable and i could see it on bitnodes.

I also have only 2 incoming connection. But since its reachable i think thats oke.

The bitnodes API documentation provides some useful information about what happens behind the scenes. It looks like the Pending status means “The node has just been activated pending availability of a new snapshot.” so this is probably just because your node is new.

The “7-day / 30-day / 90-day Addr monitor” and the Services section are proably also blank because your node is new. These populate when your address is propagated around the newtork and observed by Bitnodes’ crawler. Once it encounters your node within a future window, it will report what services your node is advertising.

The one connection from 127.0.0.1 I am not sure about. My theory is that Tor forwards traffic to a local port, and so perhaps the incoming peers on tor show up as coming from 127.0.0.1? This would be odd I think, but it would explain what you are seeing.

As far as helping the network, you just need connections for that (doesn’t matter if they are incoming or outgoing) The main reason to make your node a “listening” node is so that you are included on the dashboard node version summaries (such as Clark Moody) – it makes sure your node is being counted in the spam war.

1 Like

Well, I don’t know what the hell has happened but the node is no longer reachable.
Im using the same bitcoin.conf values as yesterday when it was reachable so I don’t get it.

Edit: It’s not working.

Not sure. In my experience, as long as the config file has been saved and you restart Knots, the changes should apply.