I am designing a protocol that will have security in mind as one of its key goals. Currently I have selected SSH with TLS as the underlying transport.
I selected SSH because it had a variety of extensible authentication methods built-in already, which would not only make it easier to add my own in the future but (in some cases) make it unnecessary to add any at all, depending on how the user wants to authenticate themselves. It also has file transfers built-in, which is a nice bonus for me too.
With that in mind, should I continue using SSH over TLS, or is that overkill? Or should I switch to using normal non-SSH-based sockets?
Side note: this protocol will not be used to access remote systems via a command terminal.