### Body

SSHHook uses the default stacklevel (1) in its deprecation warning, it should be 2:
https://github.com/apache/airflow/blob/b11525702c72cb53034aa29ccd6d0e1161ac475c/airflow/providers/ssh/hooks/ssh.py#L433-L439
https://github.com/apache/airflow/blob/b11525702c72cb53034aa29ccd6d0e1161ac475c/airflow/providers/ssh/hooks/ssh.py#L369-L374
https://github.com/apache/airflow/blob/b11525702c72cb53034aa29ccd6d0e1161ac475c/airflow/providers/ssh/hooks/ssh.py#L232-L238

### Committer

- [X] I acknowledge that I am a maintainer/committer of the Apache Airflow project.
self.log.warning(line)
            if (
                stdout.channel.exit_status_ready()
                and not stderr.channel.recv_stderr_ready()
                and not stdout.channel.recv_ready()
            ) or timedout:
                stdout.channel.shutdown_read()
                try:
                    stdout.channel.close()
                except Exception:
                    
                    
                    
                    self.log.warning("Ignoring exception on close", exc_info=True)
                break
        stdout.close()
        stderr.close()
        if timedout:
            raise AirflowException("SSH command timed out")
        exit_status = stdout.channel.recv_exit_status()
        return exit_status, agg_stdout, agg_stderr
    def test_connection(self) -> tuple[bool, str]:
        """Test the ssh connection by execute remote bash commands."""
        try:
            with self.get_conn() as conn:
                conn.exec_command("pwd")
            return True, "Connection successfully tested"
        except Exception as e:
            return False, str(e)