无法连接到远程Geth,connect: permission denied.

简介: 无法连接到远程Geth,connect: permission denied.我在安装了Geth节点的ubuntu服务器X上创建了一个shell脚本,在测试链中插入智能合约数据。

无法连接到远程Geth,connect: permission denied.

我在安装了Geth节点的ubuntu服务器X上创建了一个shell脚本,在测试链中插入智能合约数据。此外,我通过使用Shell脚本命令在同一服务器X上创建一个PHP文件insertscript.php。当我从命令提示符调用PHP脚本时,它会成功执行,并且数据被插入到区块链中。但是当我用CURL调用另一个服务器的PHP脚本或在浏览器中打开它时,我会看到错误:

Fatal: Unable to attach to remote geth: dial unix ///home/ubuntu/.ethereum/testnet/geth.ipc: connect: permission denied

我的shell脚本如下:

#!/bin/sh
ATTACHPARAMETER="ipc:///home/ubuntu/.ethereum/testnet/geth.ipc"
INCIDENTUUID=${1:-"photo-55697b7f4a550511448499999999"}
USERUUID=${2:-"null"}
TIMESTAMP=$3
STATUS=$4

echo $INCIDENTUUID
echo $USERUUID
echo $TIMESTAMP
echo $STATUS

geth attach $ATTACHPARAMETER << EOF

var abi = [abi definition];
var address = "addressofContract";
var mycontract = web3.eth.contract(abi).at(address);
eth.defaultAddress = eth.accounts[0];
personal.unlockAccount(eth.accounts[0],'test');

mycontract.createIncident('$INCIDENTUUID','$USERUUID',$TIMESTAMP,$STATUS,{from:eth.accounts[0],gas:1400000});
console.log("Inserted");


EOF

问题解答

这是因为你的Geth二进制文件在一个用户标识下运行,但是WebServer运行在另一个用户标识下。

你必须让geth.ipc文件可以读写到你的Web服务器上,无论是通过组访问还是在两个进程(WebServer和Geth)上使用相同的user_id。

此外,请注意,不能通过2个计算机之间的IPC(进程间通信)共享Geth访问,IPC仅在单个计算机内工作,因为它是数据共享的内核级实现。

原文《以太坊常见问题和错误》中的:

http://cw.hubwiz.com/card/c/ethereum-FAQ/1/1/21/

另外推荐几个很受欢迎全网稀缺的互动教程:

  • php以太坊,主要是介绍使用php进行智能合约开发交互,进行账号创建、交易、转账、代币开发以及过滤器和事件等内容。
  • python以太坊,主要是针对python围绕web3.py进行区块链以太坊应用开发的讲解。
  • web3j,主要是针对java和android程序员围绕web3j库进行区块链以太坊开发的讲解。
  • 以太坊开发,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。
  • 以太坊教程,主要介绍智能合约与dapp应用开发,适合入门。
相关文章
|
6月前
|
网络安全 开发工具 数据安全/隐私保护
openssh 升级后ssh远程登录报错Permission denied, please try again.
openssh 升级后ssh远程登录报错Permission denied, please try again.
1088 3
|
7月前
|
Shell 网络安全 开发工具
配置SSH时候,Permission denied问题解决方法
配置SSH时候,Permission denied问题解决方法
505 4
|
7月前
|
Ubuntu Linux 网络安全
SSH 远程登录报错:Permission denied, please try again. 解决办法
SSH 远程登录报错:Permission denied, please try again. 解决办法
2225 0
|
应用服务中间件 网络安全
xshell 连接报错 Disconnected from remote host
xshell 连接报错 Disconnected from remote host
495 0
|
数据可视化 Shell Android开发
无线调试和unable to connect to 192.168.2.245:5555由于目标计算机积极拒绝,无法连接。 (10061)
无线调试和unable to connect to 192.168.2.245:5555由于目标计算机积极拒绝,无法连接。 (10061)
|
安全 网络安全
[windows10]下Bad owner or permissions on .ssh/config的解决办法
[windows10]下Bad owner or permissions on .ssh/config的解决办法
998 0
|
应用服务中间件 nginx
Failed:(13: Permission denied)导致访问浏览器出现Nginx 500 Internal Server Error
Failed:(13: Permission denied)导致访问浏览器出现Nginx 500 Internal Server Error
748 1
Failed:(13: Permission denied)导致访问浏览器出现Nginx 500 Internal Server Error
远程服务器Linux错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (usin
远程服务器Linux错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (usin
|
存储 算法 Unix
SSH登录提示Permission Denied的排查
简介: ssh登录密码错误情况下排查办法,以及如何模拟生成/etc/shadow文件中加密过的密码hash串
933 0
SSH登录提示Permission Denied的排查
|
Linux 网络安全
ssh连接提示 "Connection closed by remote host"
ssh连接提示 "Connection closed by remote host" ** 如果原来是可以用ssh连接的, 突然连接不上通常是连接数过多导致的.
17461 0

热门文章

最新文章