首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mitmproxy和EC2-api工具

mitmproxy和EC2-api工具
EN

Stack Overflow用户
提问于 2013-08-02 19:10:52
回答 2查看 1.1K关注 0票数 2

我很难让mitmproxy使用EC2-API工具。

在一个终端里,我这样做了:

代码语言:javascript
运行
复制
$ mitmproxy -p 8080

在另一个故事中,我做到了:

代码语言:javascript
运行
复制
$ export EC2_JVM_ARGS="-DproxySet=true -DproxyHost=127.0.0.1 -DproxyPort=8080 -Dhttps.proxySet=true -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8080"
$ ec2-describe-instances

我得到以下错误:

代码语言:javascript
运行
复制
Unexpected error:
javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
    at com.sun.net.ssl.internal.ssl.SSLSessionImpl.getPeerCertificateChain(SSLSessionImpl.java:401)
    at org.apache.commons.httpclient.contrib.amazon.ssl.StrictSSLProtocolSocketFactory.verifyHostname(StrictSSLProtocolSocketFactory.java:369)
    at org.apache.commons.httpclient.contrib.amazon.ssl.StrictSSLProtocolSocketFactory.createSocket(StrictSSLProtocolSocketFactory.java:241)
    at org.apache.commons.httpclient.HttpConnection.tunnelCreated(HttpConnection.java:786)
    at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.tunnelCreated(MultiThreadedHttpConnectionManager.java:1521)
    at org.apache.commons.httpclient.HttpMethodDirector.executeConnect(HttpMethodDirector.java:514)
    at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:391)
    at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
    at org.codehaus.xfire.transport.http.CommonsHttpMessageSender.send(CommonsHttpMessageSender.java:369)
    at org.codehaus.xfire.transport.http.HttpChannel.sendViaClient(HttpChannel.java:123)
    at org.codehaus.xfire.transport.http.HttpChannel.send(HttpChannel.java:48)
    at org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:26)
    at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
    at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:79)
    at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:114)
    at org.codehaus.xfire.client.Client.invoke(Client.java:336)
    at org.codehaus.xfire.client.XFireProxy.handleRequest(XFireProxy.java:77)
    at org.codehaus.xfire.client.XFireProxy.invoke(XFireProxy.java:57)
    at com.sun.proxy.$Proxy12.describeInstances(Unknown Source)
    at com.amazon.aes.webservices.client.Jec2Impl.describeInstances(Jec2Impl.java:1517)
    at com.amazon.aes.webservices.client.Jec2Impl.describeInstances(Jec2Impl.java:1492)
    at com.amazon.aes.webservices.client.cmd.DescribeInstances.invokeOnline(DescribeInstances.java:58)
    at com.amazon.aes.webservices.client.cmd.BaseCmd.invoke(BaseCmd.java:1040)
    at com.amazon.aes.webservices.client.cmd.DescribeInstances.main(DescribeInstances.java:67)

我在OS上运行,我已经配置密钥链来信任mitmproxy-ca-cert.pem证书。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-02 19:59:07

感谢托马斯·奥罗斯科的回答和this mitmproxy issue

代码语言:javascript
运行
复制
sudo keytool -importcert -alias mitmproxy -storepass "changeit" \
  -keystore /System/Library/Java/Support/CoreDeploy.bundle/Contents/Home/lib/security/cacerts \
  -trustcacerts -file ~/.mitmproxy/mitmproxy-ca-cert.pem
票数 5
EN

Stack Overflow用户

发布于 2013-08-02 19:14:21

您必须将MITM代理证书添加到Java正在使用的证书存储区,这可能不是OS的密钥链。

您应该能够为此使用keytool:http://docs.oracle.com/javase/6/docs/technotes/tools/solaris/keytool.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18024480

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档