Fehlerbehebung bei Junos PyEZ-Verbindungsfehlern
Fehlerbehebung bei verweigerten Verbindungsfehlern
Problem
Beschreibung
Bei der Verwendung von Junos PyEZ zur Verwaltung von entfernten Junos-Geräten generiert der Code eine Fehlermeldung, die besagt, dass die Verbindung abgelehnt wurde. Zum Beispiel:
jnpr.junos.exception.ConnectRefusedError
Verursachen
NETCONF ist auf dem Gerät nicht aktiviert oder die Anzahl der Verbindungen überschreitet den Grenzwert.
Die wahrscheinlichste Ursache für einen Fehler bei der Verbindungsverweigerung ist, dass NETCONF über SSH auf dem Junos-Gerät nicht aktiviert ist. Um schnell zu testen, ob NETCONF aktiviert ist, stellen Sie sicher, dass das Benutzerkonto erfolgreich eine NETCONF-Sitzung mit dem Gerät starten kann.
[user@server]$ ssh user@R1.example.com -p 830 -s netconf
Lösung
Wenn NETCONF auf dem Junos-Gerät nicht aktiviert ist, aktivieren Sie NETCONF.
[edit] user@R1# set system services netconf ssh user@R1# commit
Wenn die Anzahl der NETCONF-Sitzungen den Grenzwert überschreitet, erhöhen Sie die maximale Anzahl der zulässigen Sitzungen auf bis zu 250. Der Standardwert ist 75.
[edit] user@R1# set system services netconf ssh connection-limit limit user@R1# commit
Beheben von Junos PyEZ-Verbindungsfehlern in Onbox-Ereignisskripts
Problem
Beschreibung
Wenn Sie Junos PyEZ in einem Onbox-Python-Ereignisskript verwenden, generiert der Code eine ConnectError-Meldung, die auf den Benutzer "nobody" verweist. Zum Beispiel:
ConnectError(host: None, msg: user "nobody" does not have access privileges.)
Verursachen
Um die Ausführung von nicht autorisiertem Python-Code zu verhindern, führen Junos-Geräte standardmäßig Python-Ereignisskripte mit den Zugriffsrechten des generischen, unprivilegierten Benutzers und der Gruppe nobodyaus.
Lösung
Um Ereignisskripts mit den Zugriffsrechten eines bestimmten Benutzers auszuführen, müssen Sie die python-script-user Anweisung für dieses Ereignisskript konfigurieren und einen Benutzer angeben. Der konfigurierte Benutzer muss über ein lokales Benutzerkonto auf dem Gerät verfügen.
[edit] user@host# set event-options event-script file filename python-script-user user user@host# commit
Sie können Python-Ereignisskripts nicht so konfigurieren, dass sie mit Root-Zugriffsrechten ausgeführt werden.
Zum Beispiel:
[edit] user@host# set event-options event-script file bgp-neighbors.py python-script-user admin user@host# commit