AUF DIESER SEITE
Beispiel: Konfigurieren der REST-API
Dieses Beispiel zeigt, wie die REST API auf einem Junos OS-Gerät konfiguriert wird.
Anforderungen
Ein Routing-, Switching- oder Sicherheitsgerät mit Junos OS Version 14.2 oder höher ist erforderlich.
Überblick
In diesem Beispiel wird die REST-API auf einem Juniper Networks M10i Multiservice Edge-Router konfiguriert. Im Beispiel wird sowohl der HTTP- als auch der HTTPS-Zugriff konfiguriert, wobei sowohl lighttpd als auch juise tracing verwendet werden.
Konfiguration
CLI Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle erforderlichen Details, um sie an Ihre Netzwerkkonfiguration anzupassen, kopieren Sie die Befehle, fügen Sie sie auf der [edit] Hierarchieebene in die CLI ein, und wechseln Sie commit dann aus dem Konfigurationsmodus.
set system services rest control allowed-sources [192.0.2.0 198.51.100.0] set system services rest control connection-limit 100 set system services rest http port 3000 set system services rest http addresses [203.0.113.0 203.0.113.1] set system services rest https port 3443 set system services rest https addresses [203.0.113.2 203.0.113.3] set system services rest https server-certificate testcert set system services rest https cipher-list rsa-with-3des-ede-cbc-sha set system services rest https mutual-authentication certificate-authority testca set system services rest traceoptions flag all set system services rest enable-explorer
Konfigurieren der REST-API
Schritt-für-Schritt-Anleitung
So konfigurieren Sie die REST-API:
Geben Sie zulässige IP-Adressen für eingehende HTTP- und HTTPS-Verbindungen an.
[edit] user@R1# set system services rest control allowed-sources [192.0.2.0 198.51.100.0]
Geben Sie die maximale Anzahl zulässiger Verbindungen über HTTP und HTTPS an.
[edit] user@R1# set system services rest control connection-limit 100
Legen Sie den TCP-Port für eingehende HTTP-Verbindungen fest.
[edit] user@R1# set system services rest http port 3000
Legen Sie die Adressen fest, an denen der Server auf eingehende HTTP-Verbindungen lauscht.
[edit] user@R1# set system services rest http addresses [203.0.113.0 203.0.113.1]
Legen Sie den TCP-Port für eingehende HTTPS-Verbindungen fest.
[edit] user@R1# set system services rest https port 3443
Legen Sie die Adressen fest, an denen der Server auf eingehende HTTPS-Verbindungen lauscht.
[edit] user@R1# set system services rest https addresses [203.0.113.2 203.0.113.3]
Legen Sie das Serverzertifikat fest.
[edit] user@R1# set system services rest https server-certificate testcert
Konfigurieren Sie den Satz von Chiffren, die der Server zum Ausführen von Verschlüsselungs- und Entschlüsselungsfunktionen verwenden kann.
[edit] user@R1# set system services rest https cipher-list rsa-with-3des-ede-cbc-sha
(Optional) Richten Sie die gegenseitige TLS-Authentifizierung sowohl auf dem Server als auch auf dem Client mit einem Zertifikat ein.
[edit] user@R1# set system services rest https mutual-authentication certificate-authority testca
(Optional) Konfigurieren Sie Ablaufverfolgungsoptionen für lighttpd, juise oder beides.
[edit] user@R1# set system services rest traceoptions flag all
(Optional) Aktivieren Sie den REST API-Explorer.
[edit] user@R1# set system services rest enable-explorer
Bestätigen Sie die Konfiguration.
[edit] user@R1# commit and-quit
Befund
system {
services {
rest {
control {
allowed-sources [ 192.0.2.0 198.51.100.0 ];
connection-limit 100;
}
enable-explorer;
http {
addresses [ 203.0.113.0 203.0.113.1 ];
port 3000;
}
https {
port 3443;
addresses [ 203.0.113.2 203.0.113.3 ];
server-certificate testcert;
cipher-list rsa-with-3des-ede-cbc-sha;
mutual-authentication {
certificate-authority testca;
}
}
traceoptions {
flag all;
}
}
}
}
Wenn Trace-Optionen für die REST-API aktiviert sind, werden die Protokolle unter: /var/chroot/rest-api/var/log/lighttpd gespeichert.
Dieser Speicherort gilt für Plattformen wie ACX7100, auf denen Junos OS ausgeführt werden. Die Ablaufverfolgungsprotokolle können bei der Behebung von Problemen im Zusammenhang mit REST APIs helfen.
Verifizierung
Überprüfen der REST API-Konfiguration
Zweck
Vergewissern Sie sich, dass die REST API-Konfiguration auf dem Gerät ordnungsgemäß funktioniert.
Aktion
Zeigen Sie die REST API-Konfiguration an, indem Sie den show configuration system services rest Befehl operational mode eingeben.
user@R1> show configuration system services rest
http {
port 3000;
addresses [ 203.0.113.0 203.0.113.1 ];
}
https {
port 3443;
addresses [ 203.0.113.2 203.0.113.3 ];
server-certificate testcert;
cipher-list rsa-with-3des-ede-cbc-sha;
mutual-authentication {
certificate-authority testca;
}
}
control {
allowed-sources [ 192.0.2.0 198.51.100.0 ];
connection-limit 100;
}
traceoptions {
flag all;
}
enable-explorer;
Bedeutung
In diesem Beispiel wurde sowohl der HTTP- als auch der HTTPS-Zugriff auf einem Juniper Networks M10i Multiservice Edge-Router konfiguriert. Für den HTTP-Zugriff lauscht das Gerät auf Port 3000 und lässt Datenverkehr von den IP-Adressen 192.0.2.0, 198.51.100.0, 203.0.113.0 und 203.0.113.1 zu. Für eine sicherere Verbindung wurde der HTTPS-Zugriff mit gegenseitiger Authentifizierung über Port 3443 und die zugelassenen IP-Adressen 192.0.2.0, 198.51.100.0, 203.0.113.2 und 203.0.113.3 konfiguriert. Sowohl für HTTP als auch für HTTPS wurde ein Verbindungslimit von 100 konfiguriert, und sowohl die juise- als auch die lighttpd-Ablaufverfolgung wurden aktiviert. Standardmäßig ist der REST API-Explorer deaktiviert (siehe Beispiel: Verwenden des REST API-Explorers).