Содержание bitcoin.conf:
Код:
Сервер = 1
rpcuser = пользователь
rpcpassword = передача
rpcallowip = 127.0.0.1
logtimestamps = 1
alertnotify = эхо% s | почта -s "Bitcoin оповещения" alert@domain.com
MaxConnections = 5
rpcuser = пользователь
rpcpassword = передача
rpcallowip = 127.0.0.1
logtimestamps = 1
alertnotify = эхо% s | почта -s "Bitcoin оповещения" alert@domain.com
MaxConnections = 5
Bitcoind начинается с:
Код:
bitcoind -daemon
При вышеуказанной конфигурации, Portmap сканирование с другой машины показал:
Код:
птар -v4 -p 8332 Рп ipofbitcoinnode
8332 / TCP открыт неизвестный
8332 / TCP открыт неизвестный
Затем я изменил файл конфигурации, закрыть и перезапустить узел Bitcoin:
Код:
rpcuser = пользователь
rpcpassword = передача
logtimestamps = 1
alertnotify = эхо% s | почта -s "Bitcoin оповещения" alert@domain.com
MaxConnections = 5
rpcpassword = передача
logtimestamps = 1
alertnotify = эхо% s | почта -s "Bitcoin оповещения" alert@domain.com
MaxConnections = 5
Код:
$ Птар -v4 -p 8332-8333 Рп ipofbitcoinnode
PORT STATE SERVICE
8332 / TCP закрыт неизвестно
8333 / TCP открыт неизвестный
PORT STATE SERVICE
8332 / TCP закрыт неизвестно
8333 / TCP открыт неизвестный
Возникает вопрос: В первой конфигурации, не Rpc-порт 8332 только быть доступен на локальный (127.0.0.1), а все остальные будут заблокированы по умолчанию? Я не могу видеть, rpcdisallowip или аналогичный флаг конфигурации существует. И, кажется, что настройка Сервер = 1 Переопределение rpcallowip = 127.0.0.1?
Я думаю, что по соображениям безопасности, когда Сервер = 1 устанавливается в bitcoin.conf или заданы в командной строке, -сервер при запуске bitcoind, который может подключаться к узлу должен быть явно необходимо настроить. Так, например, путем введения нового параметра, как rpcdisallowip.
когда Сервер = 1 я предлагаю, чтобы следующие должны справедливы:
rpcdisallowip По умолчанию установлено значение ВСЕ как в «Запретить все»
rpcallowip По умолчанию установлено значение 127.0.01, локальный. (Возможно, также bitcoind при запуске должна выдавать предупреждение, если Сервер = 1 объясняя, что сервер RPC активен, и что он принимает соединения только с локального хоста, и вы должны использовать rpcdisallowip а также rpcallowip Параметры конфигурации, чтобы изменить поведение по умолчанию.
Поэтому я думаю, что это важно, что кто-то не слишком опытный может установить Сервер = 1 а также rpcallowip = 127.0.0.1 в их bitcoin.conf, и думаю, что все они хорошо идти, в то время как в действительности они открыли себя весь Интернет.
я думаю что rpcallowip должны переопределять rpcdisallowip.
Пример:
Код:
rpcdisallowip = ALL
rpcallowip = 127.0.0.1,222.222.222.222
rpcallowip = 127.0.0.1,222.222.222.222
Это должно означать, что только 127.0.0.1 и 222.222.222.222 могут подключаться к порту 8332 Rpc.
(Но, возможно, было бы разумнее сделать это наоборот, так что вы всегда были уверены, что если вы запрещены некоторым IP, что всегда будет авторитетное параметр? Не уверен, что лучшая практика здесь. Но я думаю, другое программное обеспечение как апач, Sshd и т.д. уже есть это в значительной степени выяснили.
Проблема заключается в том, хотя, если rpcdisallowip является авторитетным и брусчатки в ВСЕ, то независимо от того, что вы сделали с rpcallowip будет иметь никакого эффекта, так что лучшее, что я думаю, было бы посмотреть, как другие установленные проекты с открытым исходным кодом решил правила доступа на основе.
Тем не менее, я мог бы быть полностью выключен с моим мышлением, и это не полный, не проблема, так что я заинтересован в том, что другие думают об этом. Но в настоящее время, как предотвратить доступ все порта 8332 при установке Сервер = 1 нет и там быть нет ЗАБЛОКИРОВАТЬ ВСЕ Правило по умолчанию? Я могу видеть, используя IPTables или другое программное обеспечение, чтобы установить правила, но я думаю, что это должно быть возможно установить это в bitcoind.