如何设置自定义子域映射到 aws codecommit?

How to set up custom subdomain mapping to aws codecommit?

说,我拥有 mydomain.com,我也在 Route 53 中托管这个域。我想设置一个子域,比如 git。mydomain.com 指向代码提交主机。例如,git.mydomain.com => git-codecommit.us-west-2.amazonaws.com

我为此在 Route 53 中创建了 CNAME 记录。我认为 DNS 确实接受了更改。

Trying "git.mydomain.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8020
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;git.mydomain.com.      IN  ANY

;; ANSWER SECTION:
git.mydomain.com.   41  IN  CNAME   git-codecommit.us-west-2.amazonaws.com.

但是,当我尝试通过 运行

克隆 reop 时

git clone ssh://git.mydomain.com/v1/repos/reponame

,我不断收到

Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

当我这样做时它就有效

git clone ssh://git-codecommit.us-west-2.amazonaws.com/v1/repos/reponame

有人知道如何正确设置吗?

非常感谢。

如果您遇到此问题,请尝试将以下内容添加到您的 ssh 配置中

Host git.yourdomain.com
  User {iam ssh user key id} 
  IdentityFile path/to/id_file

在我的例子中,ssh 代理没有从默认位置获取,所以我必须在配置中指定它。

git-codecommit.us-west-2.amazonaws.com 的 SSL 证书没有列出您的域。因此,您不能在需要 SSL 的地方使用 CNAME,例如 SSH 或 HTTPS。您正在尝试的内容仅适用于 HTTP 连接或不需要 TLS 的 TCP 连接。 有关详细信息,请参阅此答案 。