**Apache Airflow version**: 2.0.2 (but problem can still be found in master)

**What happened**:

When using the SSHHook to connect to an ssh server on a non default port, the host_key setting is not added with the correct hostname to the list of known hosts. In more detail:

```python
from airflow.providers.ssh.hooks.ssh import SSHHook
import paramiko
from base64 import decodebytes

hook = SSHHook(remote_host="1.2.3.4", port=1234, username="user")
# Usually, host_key would come from the connection_extras, for the sake of this example we set the value manually:
host_key = "abc" # Some public key
hook.host_key = paramiko.RSAKey(data=decodebytes(host_key.encode("utf-8")))
hook.no_host_key_check = False

conn = hook.get_conn()
```

This yields the exception

    paramiko.ssh_exception.SSHException: Server '[1.2.3.4]:1234' not found in known_hosts

**Reason**:
In the SSHHook the host_key is added using only the name of the remote host. 
https://github.com/apache/airflow/blob/5bd6ea784340e0daf1554e207600eae92318ab09/airflow/providers/ssh/hooks/ssh.py#L221

According the the known_hosts format, we would need 

```python
hostname = f"[{self.remote_host}]:{self.port}" if self.port != SSH_PORT else self.remote_host
```

**Anything else we need to know**:

I will prepare a PR that solves the problem.

airflow/providers/ssh/hooks/ssh.py
if private_key:
                    self.pkey = self._pkey_from_private_key(private_key, passphrase=private_key_passphrase)
                if "timeout" in extra_options:
                    self.timeout = int(extra_options["timeout"], 10)
                if "compress" in extra_options and str(extra_options["compress"]).lower() == 'false':
                    self.compress = False
                host_key = extra_options.get("host_key")
                no_host_key_check = extra_options.get("no_host_key_check")
                if no_host_key_check is not None:
                    no_host_key_check = str(no_host_key_check).lower() == "true"
                    if host_key is not None and no_host_key_check:
                        raise ValueError("Must check host key when provided")
                    self.no_host_key_check = no_host_key_check
                if (
                    "allow_host_key_change" in extra_options
                    and str(extra_options["allow_host_key_change"]).lower() == 'true'
                ):
                    self.allow_host_key_change = True
                if (
                    "look_for_keys" in extra_options
                    and str(extra_options["look_for_keys"]).lower() == 'false'
                ):
                    self.look_for_keys = False
                if host_key is not None:
                    if host_key.startswith("ssh-"):
                        key_type, host_key = host_key.split(None)[:2]
                        key_constructor = self._host_key_mappings[key_type[4:]]
                    else:
                        key_constructor = paramiko.RSAKey
                    decoded_host_key = decodebytes(host_key.encode('utf-8'))