hello,

i resolve the issue .
 i see that ansible check " https://192.168.1.136:443/logincheck"; , but in 
fortinet the port:443 is use for the sslvpn.
So the best practice is to use new port for the management admin exemple: 
4433 and configure a certificat (in system setting fortigate)  and enable 
https on the phisycal port.

So ansible can https for the connection to the FW
just change:
ansible_httpapi_port: 443 --> ansible_httpapi_port: 4433 



Le jeudi 18 août 2022 à 20:15:38 UTC+2, ibrahim camara a écrit :

> Hello,
>
> I need help with an ansible deployment I would like to create a user 
> account (admin) on fortinet. 
> but when I play the playbook I have an error that I can't debug if someone 
> in the group has already encountered this error when deploying on fortinet 
> could he help me.
>
> i share my simple test configuration below:
>
> *inventary hosts:*
> [forti]
> 192.168.1.136
>
> *testForti.yml*
> ---
> - name: configure user admin
>   hosts: forti
>   connection: httpapi
>   collections:
>   - fortinet.fortios
>   tasks:
>   - debug: var=ansible_host
>   - name: task Configure admin users.
>     fortios_system_admin:
>       vdom:  "{{ vdom }}"
>       state: "present"
>       system_admin:
>         accprofile: "super_admin"
>         accprofile_override: "enable"
>         allow_remove_admin_session: "enable"
>         comments: "test ansible"
>         email_to: "[email protected]"
>         force_password_change: "disable"
>         name: "test"
>         password: "test123"
>
> *groupe_vars > forti.yml*
> ---
> ansible_python_interpreter: /usr/bin/python3
> vdom: "root"
> ansible_httpapi_use_ssl: yes
> ansible_httpapi_validate_certs: no
> ansible_httpapi_port: 443
> ansible_network_os: fortinet.fortios.fortios
> ssl_verify: "false"
> ansible_user: "admin"
> ansible_password: "password"
>
>
> *playbook*
> ansible-playbook testForti.yml -vvv
>
> output:
>
> p3-virtualenv-ansible) [user@ansible Automation-Stuff]$ ansible-playbook 
> testForti.yml -vvv
> [DEPRECATION WARNING]: Ansible will require Python 3.8 or newer on the 
> controller starting with Ansible 2.12. Current version: 3.6.8 (default, Nov 
> 16 2020, 16:55:22) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]. This feature 
> will
>  be removed from ansible-core in version 2.12. Deprecation warnings can be 
> disabled by setting deprecation_warnings=False in ansible.cfg.
> /home/user/p3-virtualenv-ansible/lib64/python3.6/site-packages/ansible/parsing/vault/__init__.py:44:
>  
> CryptographyDeprecationWarning: Python 3.6 is no longer supported by the 
> Python core team. Therefore, support for it is deprecated in cryptography 
> and will be removed in a future release.
>   from cryptography.exceptions import InvalidSignature
> ansible-playbook [core 2.11.12] 
>   config file = /home/user/Automation-Stuff/ansible.cfg
>   configured module search path = ['/home/user/.ansible/plugins/modules', 
> '/usr/share/ansible/plugins/modules']
>   ansible python module location = 
> /home/user/p3-virtualenv-ansible/lib64/python3.6/site-packages/ansible
>   ansible collection location = 
> /home/user/.ansible/collections:/usr/share/ansible/collections
>   executable location = 
> /home/user/p3-virtualenv-ansible/bin/ansible-playbook
>   python version = 3.6.8 (default, Nov 16 2020, 16:55:22) [GCC 4.8.5 
> 20150623 (Red Hat 4.8.5-44)]
>   jinja version = 3.0.3
>   libyaml = True
> Using /home/user/Automation-Stuff/ansible.cfg as config file
> host_list declined parsing /home/user/Automation-Stuff/hosts as it did not 
> pass its verify_file() method
> script declined parsing /home/user/Automation-Stuff/hosts as it did not 
> pass its verify_file() method
> auto declined parsing /home/user/Automation-Stuff/hosts as it did not pass 
> its verify_file() method
> Parsed /home/user/Automation-Stuff/hosts inventory source with ini plugin
> Skipping callback 'default', as we already have a stdout callback.
> Skipping callback 'minimal', as we already have a stdout callback.
> Skipping callback 'oneline', as we already have a stdout callback.
>
> PLAYBOOK: testForti.yml 
> *********************************************************************************************************************************************************************************************************
> 1 plays in testForti.yml
>
> PLAY [configure user admin] 
> *****************************************************************************************************************************************************************************************************
> META: ran handlers
>
> TASK [debug] 
> ********************************************************************************************************************************************************************************************************************
> task path: /home/user/Automation-Stuff/testForti.yml:9
> redirecting (type: connection) ansible.builtin.httpapi to 
> ansible.netcommon.httpapi
> ok: [192.168.1.136] => {
>     "ansible_host": "192.168.1.136"
> }
>
> TASK [task Configure admin users.] 
> **********************************************************************************************************************************************************************************************
> task path: /home/user/Automation-Stuff/testForti.yml:10
> redirecting (type: connection) ansible.builtin.httpapi to 
> ansible.netcommon.httpapi
> <192.168.1.136> ESTABLISH LOCAL CONNECTION FOR USER: user
> <192.168.1.136> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo 
> /home/user/.ansible/tmp/ansible-local-21526q5jr4zz0 `"&& mkdir "` echo 
> /home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789
>  
> `" && echo ansible-tmp-1660791972.256035-21571-153360967314789="` echo 
> /home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789
>  
> `" ) && sleep 0'
> Using module file 
> /home/user/.ansible/collections/ansible_collections/fortinet/fortios/plugins/modules/fortios_system_admin.py
> <192.168.1.136> PUT 
> /home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/tmp43du_hoy TO 
> /home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/AnsiballZ_fortios_system_admin.py
> <192.168.1.136> EXEC /bin/sh -c 'chmod u+x 
> /home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/
>  
> /home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/AnsiballZ_fortios_system_admin.py
>  
> && sleep 0'
> <192.168.1.136> EXEC /bin/sh -c 
> '/home/user/p3-virtualenv-ansible/bin/python3 
> /home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/AnsiballZ_fortios_system_admin.py
>  
> && sleep 0'
> <192.168.1.136> EXEC /bin/sh -c 'rm -f -r 
> /home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/
>  
> > /dev/null 2>&1 && sleep 0'
> The full traceback is:
> Traceback (most recent call last):
>   File 
> "/home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/AnsiballZ_fortios_system_admin.py",
>  
> line 100, in <module>
>     _ansiballz_main()
>   File 
> "/home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/AnsiballZ_fortios_system_admin.py",
>  
> line 92, in _ansiballz_main
>     invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
>   File 
> "/home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/AnsiballZ_fortios_system_admin.py",
>  
> line 41, in invoke_module
>     run_name='__main__', alter_sys=True)
>   File "/usr/lib64/python3.6/runpy.py", line 205, in run_module
>     return _run_module_code(code, init_globals, run_name, mod_spec)
>   File "/usr/lib64/python3.6/runpy.py", line 96, in _run_module_code
>     mod_name, mod_spec, pkg_name, script_name)
>   File "/usr/lib64/python3.6/runpy.py", line 85, in _run_code
>     exec(code, run_globals)
>   File 
> "/tmp/ansible_fortios_system_admin_payload_lbrhtsap/ansible_fortios_system_admin_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_system_admin.py",
>  
> line 3592, in <module>
>   File 
> "/tmp/ansible_fortios_system_admin_payload_lbrhtsap/ansible_fortios_system_admin_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_system_admin.py",
>  
> line 3555, in main
>   File 
> "/tmp/ansible_fortios_system_admin_payload_lbrhtsap/ansible_fortios_system_admin_payload.zip/ansible_collections/fortinet/fortios/plugins/module_utils/fortios/fortios.py",
>  
> line 217, in check_schema_versioning
>   File 
> "/tmp/ansible_fortios_system_admin_payload_lbrhtsap/ansible_fortios_system_admin_payload.zip/ansible/module_utils/connection.py",
>  
> line 200, in __rpc__
> ansible.module_utils.connection.ConnectionError: Could not connect to 
> https://192.168.1.136:443/logincheck: [Errno 104] Connection reset by peer
> fatal: [192.168.1.136]: FAILED! => {
>     "changed": false,
>     "module_stderr": "Traceback (most recent call last):\n  File 
> \"/home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/AnsiballZ_fortios_system_admin.py\",
>  
> line 100, in <module>\n    _ansiballz_main()\n  File 
> \"/home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/AnsiballZ_fortios_system_admin.py\",
>  
> line 92, in _ansiballz_main\n    invoke_module(zipped_mod, temp_path, 
> ANSIBALLZ_PARAMS)\n  File 
> \"/home/user/.ansible/tmp/ansible-local-21526q5jr4zz0/ansible-tmp-1660791972.256035-21571-153360967314789/AnsiballZ_fortios_system_admin.py\",
>  
> line 41, in invoke_module\n    run_name='__main__', alter_sys=True)\n  File 
> \"/usr/lib64/python3.6/runpy.py\", line 205, in run_module\n    return 
> _run_module_code(code, init_globals, run_name, mod_spec)\n  File 
> \"/usr/lib64/python3.6/runpy.py\", line 96, in _run_module_code\n   
>  mod_name, mod_spec, pkg_name, script_name)\n  File 
> \"/usr/lib64/python3.6/runpy.py\", line 85, in _run_code\n    exec(code, 
> run_globals)\n  File 
> \"/tmp/ansible_fortios_system_admin_payload_lbrhtsap/ansible_fortios_system_admin_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_system_admin.py\",
>  
> line 3592, in <module>\n  File 
> \"/tmp/ansible_fortios_system_admin_payload_lbrhtsap/ansible_fortios_system_admin_payload.zip/ansible_collections/fortinet/fortios/plugins/modules/fortios_system_admin.py\",
>  
> line 3555, in main\n  File 
> \"/tmp/ansible_fortios_system_admin_payload_lbrhtsap/ansible_fortios_system_admin_payload.zip/ansible_collections/fortinet/fortios/plugins/module_utils/fortios/fortios.py\",
>  
> line 217, in check_schema_versioning\n  File 
> \"/tmp/ansible_fortios_system_admin_payload_lbrhtsap/ansible_fortios_system_admin_payload.zip/ansible/module_utils/connection.py\",
>  
> line 200, in __rpc__\nansible.module_utils.connection.ConnectionError: 
> Could not connect to https://192.168.1.136:443/logincheck: [Errno 104] 
> Connection reset by peer\n",
>     "module_stdout": "",
>     "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
>     "rc": 1
> }
>
> PLAY RECAP 
> **********************************************************************************************************************************************************************************************************************
> 192.168.1.136              : ok=1    changed=0    unreachable=0   
>  failed=1    skipped=0    rescued=0    ignored=0   
>
>
> does anyone have an idea about this issue ?
>
>  thanks
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/aa3f94e6-9f43-4485-8968-5bfa0bdd5a03n%40googlegroups.com.

Reply via email to