pan-os-python
pan-os-python copied to clipboard
The Class definition for ntp-servers is missing the "authentication-type" parameter.
Describe the bug
The Class definition for ntp-servers is missing the "authentication-type" parameter.
Expected behavior
When I modify or instantiate an NTPServerPrimary of NTPServerSecondary object, and apply it to the firewall, it should be reflected in the configuration as such:
ntp-servers {
primary-ntp-server {
ntp-server-address <address>;
authentication-type {
none;
}
}
}
Current behavior
If I modify an existing object, the "authentication-type" block disappears. If I instantiate a new object, adds it to the systemSettings object as a child, the "authentication-type" block is never made.
Possible solution
Steps to reproduce
Firewall:
firewall# show deviceconfig system ntp-servers
ntp-servers {
primary-ntp-server {
ntp-server-address ntp1.example.com;
authentication-type {
none;
}
}
}
Python:
firewall = panos.firewall.Firewall(<parameters>)
sysset = panos.device.SystemSettings.refreshall(firewall)
ntpobj = sysset.children[0]
print (ntpobj.address)
>> 'ntp1.example.com'
ntpobj.address="ntp2.example.com"
ntpobj.apply()
Firewall:
firewall# show deviceconfig system ntp-servers
ntp-servers {
primary-ntp-server {
ntp-server-address ntp2.example.com;
}
}
Screenshots
Context
I have about 20 firewalls with a wrong ntp configuration. I would love to edit it via Python code instead of logging into each one to fix them by CLI.
Your Environment
Python 3.11.2 pan-os-python 1.8.1
Tested on two firewalls: model: PA-5220 sw-version: 10.2.3-h4
model: PA-220 sw-version: 9.1.12-h3