Bitcoin Forum
December 15, 2024, 06:42:06 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Remote RPC access  (Read 7006 times)
Marko (OP)
Newbie
*
Offline Offline

Activity: 12
Merit: 0


View Profile
September 27, 2010, 04:50:25 PM
 #1

Hello,

I'm have a client that calls getinfo over the rpc interface. Everything works fine when host=localhost.
However, when trying to get bitcoin at another host i cannot.
I read the wiki and it says the interface only accepts requests from 127.0.0.1. Is this still the case? Is there a setting to override this?

If not, i'm probably going to have to write a 'proxy' app that i would deploy to each machine running bitcoin. Would prefer not to do this Sad

Thanks,
Marko
doublec
Legendary
*
Offline Offline

Activity: 1078
Merit: 1005


View Profile
September 28, 2010, 12:51:22 AM
 #2

I read the wiki and it says the interface only accepts requests from 127.0.0.1. Is this still the case? Is there a setting to override this?

This is still the case and I don't believe there is a setting to override it. It's hardcoded in the source. Instead of writing a 'proxy' app you can use SSH to tunnel. For example, if your bitcoin instance is running on 'example.com' and that machine is running an ssh server, you can tunnel to it from another machine with:

ssh -N example.com -L  9481:localhost:9481

Now you can use the RPC interface on your local machine to port 9481 and it will be tunnelled over an encrypted SSH session to the machine running the bitcoin RPC server.

You want to encrypt the connection because the JSON-RPC password is sent in clear text (it's actually base 64 encoded but basically it's the equivalent of clear text).
nelisky
Legendary
*
Offline Offline

Activity: 1540
Merit: 1002


View Profile
September 28, 2010, 12:55:29 AM
 #3

I read the wiki and it says the interface only accepts requests from 127.0.0.1. Is this still the case? Is there a setting to override this?

This is still the case and I don't believe there is a setting to override it. It's hardcoded in the source. Instead of writing a 'proxy' app you can use SSH to tunnel. For example, if your bitcoin instance is running on 'example.com' and that machine is running an ssh server, you can tunnel to it from another machine with:

ssh -N example.com -L  9481:localhost:9481

Now you can use the RPC interface on your local machine to port 9481 and it will be tunnelled over an encrypted SSH session to the machine running the bitcoin RPC server.

You want to encrypt the connection because the JSON-RPC password is sent in clear text (it's actually base 64 encoded but basically it's the equivalent of clear text).

Can you compile your own bitcoin? The latest svn has an option to allow binding to other interfaces, not just localhost. If not the next version (0.3.13) is supposed to have that.
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5418
Merit: 13499


View Profile
September 28, 2010, 12:58:54 AM
 #4

There's an "-rpcallowip=" switch in SVN, which allows you to access RPC from the specified IP addresses. This is not safe from MITM attacks, however.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
Marko (OP)
Newbie
*
Offline Offline

Activity: 12
Merit: 0


View Profile
September 28, 2010, 01:58:51 PM
 #5

Hey all...Thanks for all the feedback

The ssh method is great. However, all the machines are windows machines so i'd have to do an install on all of them. Better than writing a proxy app for sure though...

I saw the entry from a few weeks ago about the -rpcallowip switch. I'll compile my own version if i have to. That said, i'd prefer to have an official release. Anyone have an idea when the next version would be posted?

As far as the MITM attack possibility, this only presents a problem if the network i'm exposing to is not trusted. Or is there some other effect i'm missing?
satoshi
Founder
Sr. Member
*
Offline Offline

Activity: 364
Merit: 7431


View Profile
September 30, 2010, 06:27:41 PM
 #6

It can be safe if you're using it over your own LAN, like if you have multiple servers at a location that talk to each other.

0.3.13 RC1 is available for Windows:
http://www.bitcoin.org/download/bitcoin-0.3.13-rc1-win32-setup.exe
LZ
Legendary
*
Offline Offline

Activity: 1722
Merit: 1072


P2P Cryptocurrency


View Profile
October 01, 2010, 01:19:04 AM
Last edit: January 22, 2018, 06:29:36 AM by LZ
 #7

And now release is available: link. Smiley

My OpenPGP fingerprint: 5099EB8C0F2E68C63B4ECBB9A9D0993E04143362
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!