From 710ce311ddf656cbff8ca7099b3608a7a28a581c Mon Sep 17 00:00:00 2001 From: Alex Fornuto Date: Tue, 1 Feb 2022 11:50:51 -0600 Subject: [PATCH] demo git over TCP tunnel (#2901) * demo git over TCP tunnel * add tip * Apply suggestions from code review Co-authored-by: Travis Groth Co-authored-by: Travis Groth --- docs/.vuepress/config.js | 8 +- docs/docs/tcp/git.md | 70 ++++++++++++++++++ .../img/desktop/example-git-connection.png | Bin 0 -> 40509 bytes 3 files changed, 77 insertions(+), 1 deletion(-) create mode 100644 docs/docs/tcp/git.md create mode 100644 docs/docs/tcp/img/desktop/example-git-connection.png diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index 6921e1ee6..135259ea0 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -154,7 +154,13 @@ module.exports = { collapsable: true, type: "group", sidebarDepth: 0, - children: ["tcp/mysql", "tcp/rdp", "tcp/redis", "tcp/ssh"], + children: [ + "tcp/git", + "tcp/mysql", + "tcp/rdp", + "tcp/redis", + "tcp/ssh", + ], }, ], }, diff --git a/docs/docs/tcp/git.md b/docs/docs/tcp/git.md new file mode 100644 index 000000000..58a36ed4b --- /dev/null +++ b/docs/docs/tcp/git.md @@ -0,0 +1,70 @@ +--- +title: Git +description: Tunnel Git connections through Pomerium +--- + +# Tunneled Git Connections + +When hosting a self-hosted Git server like [GitLab](/guides/gitlab.md) behind Pomerium, you can protect desktop client access to the source code with the same identity-aware access as the web interface using an encrypted TCP tunnel. + + + ## Basic Connection + + 1. Create a TCP tunnel, using either [`pomerium-cli`](/docs/releases.md#pomerium-cli) or the Pomerium Desktop client. These examples use Git connections over SSH: + + ::::: tabs + :::: tab pomerium-cli + ```bash + pomerium-cli tcp git.corp.example.com:22 --listen :2202 + ``` + + :::tip --listen + The `--listen` flag is optional. It lets you define what port the tunnel listens on locally. If not specified, the client will choose a random available port. + ::: + + :::: + :::: tab Pomerium Desktop + ![An example connection to a Git service from Pomerium Desktop](./img/desktop/example-git-connection.png) + + :::tip Local Address + The **Local Address** field is optional. Using it defines what port the tunnel listens on locally. If not specified, Pomerium Desktop will choose a random available port. + ::: + + :::: + ::::: + +1. Clone the repository using the tunneled connection as a remote: + + ```bash + git clone ssh://git@127.0.0.1:2202/username/project-name + ``` + +Now when you first initiate a `pull`, `push`, or `fetch` command your web browser will open to authenticate and authorize the connection. + +## Always Tunnel through Pomerium + +Because Git uses the SSH protocol, we can define a `Host` block in our local SSH configuration file to initiate the tunneled connection whenever it's needed. + +1. Open your local SSH configuration file at `~/.ssh/config` and add a new Hosts `block`: + + ```bash + Host git-tunnel + HostName git.corp.example.com + User git + ProxyCommand pomerium-cli tcp --listen - %h:%p + ``` + +1. For each repository, clone using this host: + + ```bash + git clone git@git-tunnel:userName/projectName + ``` + +::: tip +If you've already defined an SSH configuration for all domains managed by Pomerium as described in our [SSH Example](/docs/tcp/ssh.md#always-tunnel-through-pomerium), you can skip the first step above and define your new remote with the Git server's domain name. +::: + +## More Resources + +- [Git Documentation](https://git-scm.com/doc) +- [Secure GitLab with Pomerium](/guide/gitlab.mdZ) \ No newline at end of file diff --git a/docs/docs/tcp/img/desktop/example-git-connection.png b/docs/docs/tcp/img/desktop/example-git-connection.png new file mode 100644 index 0000000000000000000000000000000000000000..d1ca8fc8b45261d45325e7ce6689becd63467d92 GIT binary patch literal 40509 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 YKc+-Z9@`xc#eU||J?Xodx1YZHKUX1qX8-^I literal 0 HcmV?d00001