目录
1.1编辑config.ini(不配置表示白名单关闭,可与任意节点建立连接)
1.4查看连接,以node0为例。(8545是node0的rpc端口)
3.配置白名单:node0拒绝与node1,node2之外的节点连接
3.1将node1和node2的NodeID写入node0的配置中
4.黑名单与白名单混合配置:黑名单优先级高于白名单,白名单配置的基础上拒绝与node1建立连接
一、黑名单
1.配置方法
1.1编辑config.ini
[certificate_blacklist]
; crl.0 should be nodeid, nodeid's length is 128
;crl.0=
1.2重启节点生效
$ bash stop.sh && bash start.sh
1.3查看节点连接
curl -X POST --data '{"jsonrpc":"2.0","method":"getPeers","params":[1],"id":1}' http://127.0.0.1:8545 |jq
二、白名单
1.配置方法
1.1编辑config.ini
(不配置表示白名单关闭,可与任意节点建立连接)
[certificate_whitelist]
; cal.0 should be nodeid, nodeid's length is 128
cal.0=7718df20f0f7e27fdab97b3d69deebb6e289b07eb7799c7ba92fe2f43d2efb4c1250dd1f11fa5b5ce687c8283d65030aae8680093275640861bc274b1b2874cb
cal.1=f306eb1066ceb9d46e3b77d2833a1bde2a9899cfc4d0433d64b01d03e79927aa60a40507c5739591b8122ee609cf5636e71b02ce5009f3b8361930ecc3a9abb0
1.2重启节点生效
若节点未启动,则直接启动节点,若节点已启动,可直接用脚本
reload_whitelist.sh
刷新白名单配置即可(暂不支持动态刷新黑名单)。# 若节点未启动 $ bash start.sh # 若节点已启动 $ cd scripts $ bash reload_whitelist.sh node_127.0.0.1_30300 is not running, use start.sh to start and enable whitelist directlly.
1.3查看节点连接
curl -X POST --data '{"jsonrpc":"2.0","method":"getPeers","params":[1],"id":1}' http://127.0.0.1:8545 |jq
1.4使用场景:公共CA
所有用CFCA颁发证书搭的链,链的CA都是CFCA。此CA是共用的。必须启用白名单功能。使用公共CA搭的链,会存在两条链共用同一个CA的情况,造成无关的两条链的节点能彼此建立连接。此时需要配置白名单,拒绝与无关的链的节点建立连接。
搭链操作步骤
用工具搭链
查询所有节点的NodeID
将所有NodeID配置入每个节点的白名单中
启动节点或用脚本
reload_whitelist.sh
刷新节点白名单配置扩容操作步骤
用工具扩容一个节点
查询此扩容节点的NodeID
将此NodeID追加到入所有节点的白名单配置中
将其他节点的白名单配置拷贝到新扩容的节点上
用脚本
reload_whitelist.sh
刷新已启动的所有节点的白名单配置启动扩容节点
将扩容节点加成组员(addSealer 或 addObserver)
三、黑白名单操作举例
1.准备
1.1搭一个四个节点的链
bash build_chain.sh -l 127.0.0.1:4
1.2查看四个节点的NodeID
cat node*/conf/node.nodeid
219b319ba7b2b3a1ecfa7130ea314410a52c537e6e7dda9da46dec492102aa5a43bad81679b6af0cd5b9feb7cfdc0b395cfb50016f56806a2afc7ee81bbb09bf
7718df20f0f7e27fdab97b3d69deebb6e289b07eb7799c7ba92fe2f43d2efb4c1250dd1f11fa5b5ce687c8283d65030aae8680093275640861bc274b1b2874cb
f306eb1066ceb9d46e3b77d2833a1bde2a9899cfc4d0433d64b01d03e79927aa60a40507c5739591b8122ee609cf5636e71b02ce5009f3b8361930ecc3