【发布时间】:2016-07-30 17:40:50
【问题描述】:
我正在使用 Maven 3 部署到我们的集群。在我的 settings.xml 以及 pom.xml 中的存储库中设置了一个私钥。目前一切正常,除了如果我打电话给mvn clean deploy,我会被要求输入密码。如果我使用 <password>pw</password> 而不是 <privateKey>path</privateKey> 它可以工作,但当然这不是我想要使用的。
settings.xml
<server>
<id>company_cluster</id>
<username>user</username>
<privateKey>/home/user/.ssh/user</privateKey>
</server>
pom.xml
<build>
<!-- ... -->
<extensions>
<!-- Enabling the use of SSH -->
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>2.4</version>
</extension>
</extensions>
</build>
<distributionManagement>
<repository>
<id>company_cluster</id>
<url>scp://client.hadoop.company.at/home/user/deploy/</url>
</repository>
</distributionManagement>
我在本地机器上生成了ssh 密钥,然后使用
ssh-copy-id user@client.hadoop.company.at
将其添加到授权密钥中。
【问题讨论】:
-
会有一些(详细的)日志,它应该告诉你为什么它没有使用你的密钥。或在服务器上。
-
@Jakuje 如果我使用
-X开关运行它,我应该看到什么吗?这个输出有点大,我不知道我要找什么。 -
这应该可以。路径
/home/user/.ssh/user真的指向私钥文件吗(听起来应该是id_rsa)?你使用密码吗?相关stackoverflow.com/q/2733447/1743880 -
@Tunaki 我认为
id_rsa只是文件的名称,如果没有指定其他名称。我尝试使用ssh-keygen并得到一个id_rsa文件,尝试过但也失败了:/ -
顺便说一句:我可以在服务器上使用
ssh登录,没有任何问题,所以问题不可能出在服务器端。