mgmt/pve/nuc12-pve-access-diagnosis.yml

101 lines
2.7 KiB
YAML

---
- name: NUC12 to PVE Web Access Diagnosis
hosts: nuc12
gather_facts: yes
tasks:
- name: Test DNS resolution
command: nslookup pve
register: dns_test
ignore_errors: yes
- name: Display DNS resolution
debug:
msg: "{{ dns_test.stdout_lines }}"
- name: Test ping to PVE
command: ping -c 3 pve
register: ping_test
ignore_errors: yes
- name: Display ping results
debug:
msg: "{{ ping_test.stdout_lines }}"
- name: Test port connectivity
command: nc -zv pve 8006
register: port_test
ignore_errors: yes
- name: Display port test results
debug:
msg: "{{ port_test.stdout_lines }}"
- name: Test HTTP access with different methods
uri:
url: "https://pve:8006"
method: GET
validate_certs: no
timeout: 10
register: http_test
ignore_errors: yes
- name: Display HTTP test results
debug:
msg: |
Status: {{ http_test.status if http_test.status is defined else 'FAILED' }}
Content Length: {{ http_test.content | length if http_test.content is defined else 'N/A' }}
- name: Test with different hostnames
uri:
url: "https://{{ item }}:8006"
method: GET
validate_certs: no
timeout: 10
register: hostname_tests
loop:
- "pve"
- "pve.tailnet-68f9.ts.net"
- "100.71.59.40"
- "192.168.31.4"
ignore_errors: yes
- name: Display hostname test results
debug:
msg: "{{ item.item }}: {{ 'SUCCESS' if item.status == 200 else 'FAILED' }}"
loop: "{{ hostname_tests.results }}"
- name: Check browser user agent simulation
uri:
url: "https://pve:8006"
method: GET
validate_certs: no
timeout: 10
headers:
User-Agent: "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36"
register: browser_test
ignore_errors: yes
- name: Display browser test results
debug:
msg: |
Browser Simulation: {{ 'SUCCESS' if browser_test.status == 200 else 'FAILED' }}
Status Code: {{ browser_test.status }}
- name: Check SSL certificate details
command: openssl s_client -connect pve:8006 -servername pve < /dev/null 2>/dev/null | openssl x509 -noout -subject -issuer
register: ssl_cert
ignore_errors: yes
- name: Display SSL certificate info
debug:
msg: "{{ ssl_cert.stdout_lines }}"
- name: Check network routing to PVE
command: traceroute pve
register: traceroute_test
ignore_errors: yes
- name: Display traceroute results
debug:
msg: "{{ traceroute_test.stdout_lines }}"