# Ansible SSH connection to SAN

**URL:** <https://forum.ansible.com/t/ansible-ssh-connection-to-san/44600>\
**Category:** Get Help\
**Tags:** ubuntu, network\
**Created:** [October 2, 2025, 12:13pm UTC](https://forum.ansible.com/t/ansible-ssh-connection-to-san/44600 "2025-10-02T12:13:10Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![msmith](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/msmith/32/1934_2.png) [@msmith](https://forum.ansible.com/u/msmith)\
**Post date:** [October 2, 2025, 12:13pm UTC](https://forum.ansible.com/t/ansible-ssh-connection-to-san/44600/1 "2025-10-02T12:13:10Z")

</div>

Hi

I am trying to use Ansible to gather audit info from a SAN which has no specific Ansible module (Dell PowerVault ME4024). I am attempting to use a Cisco IOS network\_cli connection as the SAN provides a CLI via SSH with a ‘#’ prompt like Cisco enable mode. I have used the same technique with [fs.com](http://fs.com) switches, but on the SAN it is always giving me a command timeout error. I have also tried an ansible.builtin.raw connection but it attempts to use /bin/sh to run the ‘show versions’ command. Is there another method I could use?

Here’s the task in the play -

```auto
- name: Gather Audit Info
    ansible.netcommon.cli_command:
    command: |
      show versions
  register: show
  vars:
    ansible_command_timeout: 30

```

Here’s the error (with -vvvv) -

```auto
The full traceback is:
  File "/usr/lib/python3/dist-packages/ansible_collections/ansible/netcommon/plugins/modules/cli_command.py", line 171, in main
    response = connection.get(**module.params)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/ansible/module_utils/connection.py", line 200, in __rpc__
    raise ConnectionError(to_text(msg, errors='surrogate_then_replace'), code=code)
fatal: [xxx]: FAILED! => changed=false
  invocation:
    module_args:
      answer: null
      check_all: false
      command: |-
        show versions
      newline: true
      prompt: null
      sendonly: false
  msg: |-
    command timeout triggered, timeout value is 30 secs.
    See the timeout setting options in the Network Debug and Troubleshooting Guide.

```

Ansible 2.16 on Ubuntu 24.04.3 -

```auto
xxx@xxx:~/ansible$ ansible --version
 19081 1759406889.19854: starting run
ansible [core 2.16.3]
  config file = /home/xxx/ansible/ansible.cfg
  configured module search path = ['/home/xxx/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3/dist-packages/ansible
  ansible collection location = /home/xxx/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/bin/ansible
  python version = 3.12.3 (main, Aug 14 2025, 17:47:21) [GCC 13.3.0] (/usr/bin/python3)
  jinja version = 3.1.2
  libyaml = True
xxx@xxx:~/ansible$

```

Finally here’s an SSH connection to the SAN from the Linux host that’s running Ansible -

```auto
xxx@xxx:~/ansible$ ssh master@xxx
(master@xxx) Password:

DELL EMC ME4024
System Name: xxx
System Location: xxx
Version: GT280R014-01
# show versions
                Controller A Versions Controller B Versions
                --------------------- ---------------------
Bundle Version: GT280R014-01 GT280R014-01
Build Date: Mon Nov 20 02:24:06 MST 2023 Mon Nov 20 02:24:06 MST 2023

Success: Command completed successfully. (2025-10-02 11:16:12)
# exit

Connection to xxx closed.
xxx@xxx:~/ansible$

```

Thanks,

Mike
