ls0f/cracker

运行了“./local -raddr http://example.com:8080 -secret <password> -logtostderr”之后

luckypoem opened this issue · 17 comments

运行了“./local -raddr http://example.com:8080 -secret -logtostderr”之后,再怎么进行设置,以便在本地翻墙呢?

可以答复吗?
非常感谢!

看到了,设置浏览器的代理,仍然翻墙失败

ls0f commented

./local -raddr https://lit-citadel-13724.herokuapp.com -secret 123456 -logtostderr 运行的命令是这个?

ls0f commented

我现在就是用的 https://lit-citadel-13724.herokuapp.com 代理访问的这个页面,没问题的。

HI.

yudeMacBook-Air:~ brite$ ./cracker-2.0 -raddr https://my-vps-ip:2443 -secret iloveson -laddr 127.0.0.1:2233
18-03-28 13:55:26.076 INFO @local.go:40 load cert.pem success ...
18-03-28 13:55:26.076 INFO @socks5.go:71 listen at:[127.0.0.1:2233]
18-03-28 13:55:31.525 ERRO @socks5.go:51 proxy connect err:Get https://my-vps-ip:2443/connect: x509: cannot validate certificate for my-vps-ip because it doesn't contain any IP SANs.

搜了一下,prometheus/prometheus#1654
elastic/logstash-forwarder#221
distribution/distribution#948

没看懂。如何解决此问题?

ls0f commented

你部署服务端的时候自己生成证书的?

ls0f commented

这个问题应该是你生成证书的时候输入的是一个ip,不是域名。gen_key_cert.sh 生成证书的时候用域名,然后在hosts 绑定ip

我删除旧的cert.pem,key.pem,在服务器上,用gen_key_cert.sh 重新生成cert.pem, key.pem,
在生成证书的时候,这次我用域名。在/etc/hosts文件里绑定了ip。但是仍然遇错:
yudeMacBook-Air:~ brite$ ./cracker-2.0 -raddr https://mydomain.com:2443 -secret iloveson -laddr 127.0.0.1:2233
18-03-28 15:35:44.615 INFO @local.go:40 load cert.pem success ...
18-03-28 15:35:44.615 INFO @socks5.go:71 listen at:[127.0.0.1:2233]
18-03-28 15:36:25.520 ERRO @socks5.go:51 proxy connect err:status code is 500, body is:timestamp expire
18-03-28 15:36:25.655 ERRO @socks5.go:51 proxy connect err:status code is 500, body is:timestamp expire
18-03-28 15:36:25.836 ERRO @socks5.go:51 proxy connect err:status code is 500, body is:timestamp expire
18-03-28 15:37:33.653 ERRO @socks5.go:51 proxy connect err:status code is 500, body is:timestamp expire
18-03-28 15:37:33.827 ERRO @socks5.go:51 proxy connect err:status code is 500, body is:timestamp expire

如何解决?

ls0f commented

本地时间对吗?

ls0f commented

检查下本地时间和服务器时间

本地时间是对的,刚才google了一下北京时间,都是3:53,服务器时间怎么得知?服务器时间通常是vps服务商那边的时间,不是北京时间,这有影响吗

根据此文http://www.blogjava.net/nkjava/archive/2009/12/12/305677.html ,设置了服务器时间为北京时间,还是遇到body is:timestamp expire错误。怪事

ls0f commented

这个错误的原因是本地时间比服务器时间慢了10s以上。

ls0f commented

和时区没关系。

现在搞好了。不过你怎么知道“本地时间比服务器时间慢了10s以上”?

ls0f commented

代理里面判断的。

signTTL = 10

hello.
root@ar:~# cat /etc/systemd/system/cracker-2.0.service
[Unit]
After=network.target

[Service]
ExecStart=/root/cracker-2.0 -addr :2443 -secret my-password -https
Restart=always

[Install]
WantedBy=multi-user.target
root@ar:#
root@ar:
# systemctl start cracker-2.0
root@ar:# ps aux|grep cracker-2.0
root 27314 0.0 0.0 11072 840 pts/5 S+ 21:25 0:00 grep cracker-2.0
root@ar:
#

cracker-2.0程序不能用systemctl启动吗?我感觉ExecStart的值设为/root/cracker-2.0 -addr :2443 -secret my-password -https有问题,因为这样设置的话,/root/cracker-2.0好像无法读取/root/目录下的cert.pem和key.pem文件。那么ExecStart的值应该怎样写呢?