Multiple services on same host Argo Tunnel

My terminology might be off. How can I allow multiple services to be accessed on a server that’s hosting the Argo tunnel? I’m able to get https traffic routed to the server, but I can’t seem to get ssh working even adding the ssh://localhost:22 to the yaml file. Here’s the config:

######################
tunnel: UUID
credentials-file: /home/ubuntu/.cloudflared/UUID.json

ingress:

  • hostname: FQDN
    service: http://localhost:80
    service: ssh://localhost:22
  • service: http_status:404
    ######################

I’ve followed this video as well Cloudflare posted and set up my ssh client to sign in, but I get an error:

######################
2021-05-11T23:21:31Z ERR failed to connect to origin error=“websocket: bad handshake” originURL=https://FQDN

websocket: bad handshake

kex_exchange_identification: Connection closed by remote host
######################

I just want to be able to use Apache for serving pages and ssh in as needed. Like I said, https works perfectly fine, it’s just ssh might be missing something.

Try two separate hostnames.

> ingress:
>   - hostname: ssh.example.com
>     service: ssh://localhost:22
>   - hostname: example.com
>     service: https://localhost:443
>     originRequest:
>       connectTimeout: 30s
>       noTLSVerify: true
>   - service: http_status:404
1 Like

To confirm, would this work if the two hosts are:

ssh.example.com

and

ssh.anotherexample.com

With both zones on the same cloudflare account?

Thanks.