Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit cca709a

Browse files
committed
fix(tailnet): update WorkspaceAgentSSHPort to 22
Change-Id: Ifd986b260f8ac317e37d65111cd4e0bd1dc38af8 Signed-off-by: Thomas Kosiewski <[email protected]>
1 parent 9c85cde commit cca709a

File tree

3 files changed

+17
-12
lines changed

3 files changed

+17
-12
lines changed

agent/agent.go

+14-11
Original file line numberDiff line numberDiff line change
@@ -1193,19 +1193,22 @@ func (a *agent) createTailnet(
11931193
return nil, xerrors.Errorf("update host signer: %w", err)
11941194
}
11951195

1196-
sshListener, err := network.Listen("tcp", ":"+strconv.Itoa(workspacesdk.AgentSSHPort))
1197-
if err != nil {
1198-
return nil, xerrors.Errorf("listen on the ssh port: %w", err)
1199-
}
1200-
defer func() {
1196+
for _, port := range []int{workspacesdk.AgentSSHPort, workspacesdk.AgentStandardSSHPort} {
1197+
sshListener, err := network.Listen("tcp", ":"+strconv.Itoa(port))
12011198
if err != nil {
1202-
_ = sshListener.Close()
1199+
return nil, xerrors.Errorf("listen on the ssh port (%v): %w", port, err)
1200+
}
1201+
// nolint:revive // We do want to only defer at the end of the function.
1202+
defer func() {
1203+
if err != nil {
1204+
_ = sshListener.Close()
1205+
}
1206+
}()
1207+
if err = a.trackGoroutine(func() {
1208+
_ = a.sshServer.Serve(sshListener)
1209+
}); err != nil {
1210+
return nil, err
12031211
}
1204-
}()
1205-
if err = a.trackGoroutine(func() {
1206-
_ = a.sshServer.Serve(sshListener)
1207-
}); err != nil {
1208-
return nil, err
12091212
}
12101213

12111214
reconnectingPTYListener, err := network.Listen("tcp", ":"+strconv.Itoa(workspacesdk.AgentReconnectingPTYPort))

codersdk/workspacesdk/workspacesdk.go

+1
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ var ErrSkipClose = xerrors.New("skip tailnet close")
2929

3030
const (
3131
AgentSSHPort = tailnet.WorkspaceAgentSSHPort
32+
AgentStandardSSHPort = tailnet.WorkspaceAgentStandardSSHPort
3233
AgentReconnectingPTYPort = tailnet.WorkspaceAgentReconnectingPTYPort
3334
AgentSpeedtestPort = tailnet.WorkspaceAgentSpeedtestPort
3435
// AgentHTTPAPIServerPort serves a HTTP server with endpoints for e.g.

tailnet/conn.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ const (
5252
WorkspaceAgentSSHPort = 1
5353
WorkspaceAgentReconnectingPTYPort = 2
5454
WorkspaceAgentSpeedtestPort = 3
55+
WorkspaceAgentStandardSSHPort = 22
5556
)
5657

5758
// EnvMagicsockDebugLogging enables super-verbose logging for the magicsock
@@ -745,7 +746,7 @@ func (c *Conn) forwardTCP(src, dst netip.AddrPort) (handler func(net.Conn), opts
745746
return nil, nil, false
746747
}
747748
// See: https://github.com/tailscale/tailscale/blob/c7cea825aea39a00aca71ea02bab7266afc03e7c/wgengine/netstack/netstack.go#L888
748-
if dst.Port() == WorkspaceAgentSSHPort || dst.Port() == 22 {
749+
if dst.Port() == WorkspaceAgentSSHPort || dst.Port() == WorkspaceAgentStandardSSHPort {
749750
opt := tcpip.KeepaliveIdleOption(72 * time.Hour)
750751
opts = append(opts, &opt)
751752
}

0 commit comments

Comments
 (0)