Hướng dẫn cấu hình và sử dụng REST API trên thiết bị Juniper JunOS

Hướng dẫn cấu hình và sử dụng REST API trên thiết bị Juniper JunOS

 

Hướng dẫn cấu hình REST API

Ví dụ này hướng dẫn cách cấu hình REST API trên thiết bị Junos OS.

Yêu cầu

  • Cần có thiết bị định tuyến (router), chuyển mạch (switch), hoặc bảo mật (security) chạy hệ điều hành Junos OS phiên bản 14.2 trở lên.

Tổng quan

Ví dụ này cấu hình REST API trên thiết bị Juniper Networks M10i Multiservice Edge Router. Ví dụ cấu hình cả truy cập HTTP và HTTPS, với lighttpd và juise tracing được bật.

Cấu hình

Cấu hình nhanh bằng CLI

Để nhanh chóng cấu hình ví dụ này, hãy sao chép các lệnh sau: Dán chúng vào một tệp văn bản, Xóa bất kỳ dấu ngắt dòng nào, Thay đổi các chi tiết cần thiết để phù hợp với cấu hình mạng của bạn, Sao chép và dán các lệnh vào CLI ở cấp độ [edit], Nhập lệnh commit trong chế độ cấu hình để áp dụng cấu hình.

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

Cấu hình REST API

Quy trình từng bước

Để cấu hình REST API, hãy thực hiện các bước sau:

- Chỉ định các địa chỉ IP được phép cho các kết nối HTTP và HTTPS đến.

[edit]

user@R1# set system services rest control allowed-sources [192.0.2.0 198.51.100.0]

- Chỉ định số lượng kết nối tối đa được phép cho cả HTTP và HTTPS.

[edit]

user@R1# set system services rest control connection-limit 100

- Đặt cổng TCP cho các kết nối đến HTTP.

[edit]

user@R1# set system services rest http port 3000

- Đặt địa chỉ mà máy chủ sẽ lắng nghe cho các kết nối HTTP đến.

[edit]

user@R1# set system services rest http addresses [203.0.113.0 203.0.113.1]

- Đặt cổng TCP cho các kết nối đến HTTPS.

[edit]

user@R1# set system services rest https port 3443

- Đặt địa chỉ mà máy chủ sẽ lắng nghe cho các kết nối đến HTTPS.

[edit]

user@R1# set system services rest https addresses [203.0.113.2 203.0.113.3]

- Đặt chứng chỉ máy chủ.

[edit]

user@R1# set system services rest https server-certificate testcert

- Cấu hình bộ mã hóa mà máy chủ có thể sử dụng để thực hiện chức năng mã hóa và giải mã.

[edit]

user@R1# set system services rest https cipher-list rsa-with-3des-ede-cbc-sha

- (Tùy chọn) Thiết lập xác thực hai chiều TLS trên cả máy chủ và máy khách bằng chứng chỉ.

[edit]

user@R1# set system services rest https mutual-authentication certificate-authority testca

- (Tùy chọn) Cấu hình tùy chọn ghi vết (trace) cho lighttpd, juise hoặc cả hai.

[edit]

user@R1# set system services rest traceoptions flag all

- (Tùy chọn) Bật REST API Explorer.

[edit]
user@R1# set system services rest enable-explorer

- Lưu và áp dụng cấu hình.

[edit]

user@R1# commit and-quit

Kết quả

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;}}}}

Xác minh

Xác minh cấu hình REST API

Mục đích 

Xác nhận rằng cấu hình REST API đang hoạt động đúng trên thiết bị.

Thao tác

Hiển thị cấu hình REST API bằng cách sử dụng lệnh sau trong chế độ vận hành (operational mode): show configuration system services rest

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;

Ý nghĩa

Ví dụ này đã cấu hình cả truy cập HTTP và HTTPS trên thiết bị Juniper Networks M10i Multiservice Edge Router. Truy cập HTTP: Thiết bị lắng nghe trên cổng 3000, cho phép lưu lượng từ các địa chỉ IP: 192.0.2.0, 198.51.100.0, 203.0.113.0, 203.0.113.1. Truy cập HTTPS (bảo mật hơn): 192.0.2.0, 198.51.100.0, 203.0.113.2, 203.0.113.3. Đã cấu hình xác thực hai chiều (mutual authentication), sử dụng cổng 3443, cho phép lưu lượng từ các địa chỉ IP. Đã đặt giới hạn 100 kết nối cho cả HTTP và HTTPS. Bật tính năng ghi vết (tracing), đã kích hoạt juise và lighttpd tracing. REST API Explorer, mặc định bị vô hiệu hóa.

Sử dụng REST API Explorer

Ví dụ này hướng dẫn cách tùy chọn sử dụng REST API Explorer trên thiết bị Junos OS đã được cấu hình REST API.

Yêu cầu

  • Cần có thiết bị thuộc dòng M Series, MX Series, T Series, hoặc PTX Series chạy hệ điều hành Junos OS phiên bản 14.2 trở lên.

Tổng quan

REST API Explorer cho phép bạn dễ dàng kiểm tra các lệnh RPC đơn lẻ hoặc nhiều lệnh RPC. Giao diện đồ họa (GUI) cung cấp các tùy chọn sau: Chọn phương thức HTTP (GET hoặc POST), chọn định dạng đầu ra (XML, JSON hoặc văn bản thuần), nhập URL RPC, xác định loại dữ liệu đầu vào khi sử dụng yêu cầu POST (XML hoặc văn bản thuần), cấu hình điều kiện dừng khi có lỗi (exit-on-error). Sau khi gửi yêu cầu, REST API Explorer sẽ hiển thị: Tiêu đề yêu cầu (request header), tiêu đề phản hồi (response header), nội dung phản hồi (response body), lệnh cURL tương đương. Tất cả thông tin trên đều hữu ích cho quá trình phát triển của bạn.

Cấu hình

Để sử dụng REST API Explorer trên thiết bị đã cấu hình REST API, thực hiện các bước sau:

  • Bật REST API Explorer.
  • Mở REST API Explorer.
  • Thực hiện một lệnh RPC đơn lẻ bằng HTTP GET.
  • Thực hiện một lệnh RPC đơn lẻ bằng HTTP POST.
  • Thực hiện nhiều lệnh RPC.
  • Xem thông báo lỗi.

Bật REST API Explorer

Quy trình từng bước

- Cấu hình REST API trên thiết bị.

Xem hướng dẫn trong phần Configuring the REST API và Example: Configuring the REST API để biết chi tiết.

- Kiểm tra xem REST API Explorer đã được bật hay chưa.

Dùng lệnh show để kiểm tra xem có dòng enable-explorer; trong cấu hình REST API hay không. Nếu có, REST API Explorer đã được bật. Nếu không, bạn cần bật REST API Explorer.

[edit]

user@R1# show system services rest

http;

traceoptions {

    flag all;}

enable-explorer;

- Bật REST API Explorer nếu cần.

Sử dụng lệnh set để đảm bảo rằng enable-explorer; xuất hiện trong cấu hình REST API.

[edit]

user@R1# set system services rest enable-explorer

Mở REST API Explorer

Quy trình từng bước

Để mở REST API Explorer: Đảm bảo rằng REST API Explorer đã được bật -> Mở trình duyệt web -> Truy cập URL sau: scheme://device-name:portVí dụ: https://mydevice:3000  

Thực hiện một lệnh RPC đơn lẻ bằng HTTP GET

Quy trình từng bước

Để thực hiện một lệnh RPC đơn lẻ bằng HTTP GET:

- Trong danh sách thả xuống của phương thức HTTP, chọn GET.

- Nhập điểm cuối URL của RPC.

Ví dụ: Nhập /rpc/get-software-information.

- Nhập tên người dùng và mật khẩu.

- Nhấn Submit.

Trong ví dụ này, định dạng đầu ra mặc định là XML và được hiển thị trong Response Body.

Thực hiện một lệnh RPC đơn lẻ bằng HTTP POST

Quy trình từng bước

Để thực hiện một lệnh RPC đơn lẻ bằng HTTP POST:

Trong danh sách thả xuống của phương thức HTTP, chọn POST.

- Trong danh sách thả xuống của định dạng đầu ra, chọn JSON.

- Nhập điểm cuối URL của RPC: /rpc/get-software-information 

- Nhập tên người dùng và mật khẩu.

- Nhập yêu cầu được định dạng dưới dạng XML vào vùng văn bản của Request body.

Ví dụ:

 

- Nhấn Submit.

Trong ví dụ này, định dạng đầu ra JSON sẽ được hiển thị trong Response Body.

- Nếu bạn muốn sử dụng một định dạng đầu ra khác, hãy chọn một trong các tùy chọn có sẵn trong danh sách thả xuống Required output format.

Ví dụ, bạn có thể chọn Plain text. Khi nhấn Submit, bạn sẽ thấy kết quả dưới dạng văn bản thuần trong Response Body.

Tương tự, nếu bạn chọn XML trong danh sách thả xuống Required output format, nội dung phản hồi (Response Body) sẽ chứa thông tin được định dạng dưới dạng XML.

Thực hiện nhiều lệnh RPC

Quy trình từng bước

Để thực hiện nhiều lệnh RPC:

- Trong danh sách thả xuống của phương thức HTTP, chọn POST. Bắt buộc phải sử dụng POST khi thực hiện nhiều lệnh RPC.

- Để thiết lập điều kiện dừng khi xảy ra lỗi, chọn hộp kiểm Exit on error.

- Chọn định dạng đầu ra trong danh sách Required output format.

Ví dụ: Bạn có thể chọn JSON.

- Điểm cuối URL của RPC sẽ tự động được điền: /rpc?exit-on-error=1 

- Nhập tên người dùng và mật khẩu.

- Nhập yêu cầu được định dạng dưới dạng XML vào vùng văn bản của Request body.

Ví dụ:

 

- Nhấn Submit.

Trong ví dụ này, định dạng đầu ra JSON sẽ được hiển thị trong Response Body.

Xem thông báo lỗi

Quy trình từng bước

Khi thực hiện nhiều lệnh RPC, lỗi có thể xảy ra. Nếu bạn chọn hộp kiểm Exit on error, một thông báo lỗi sẽ xuất hiện trong đầu ra khi có lỗi.

Để xem thông báo lỗi:

- Trong danh sách thả xuống của phương thức HTTP, chọn POST.

Bắt buộc phải sử dụng POST khi thực hiện nhiều lệnh RPC.

- Để thiết lập điều kiện dừng khi xảy ra lỗi, chọn hộp kiểm Exit on error.

- Chọn định dạng đầu ra trong danh sách Required output format.

Ví dụ: Bạn có thể chọn JSON.

- Điểm cuối URL của RPC sẽ tự động được điền: /rpc?exit-on-error=1 

- Nhập tên người dùng và mật khẩu.

- Nhập yêu cầu được định dạng dưới dạng XML có chứa lỗi vào vùng văn bản của Request body.

Ví dụ:

 

- Nhấn Submit.

Trong ví dụ này, định dạng đầu ra JSON sẽ được hiển thị trong Response Body, và bạn có thể thấy thông báo lỗi được định dạng dưới dạng XML ở cuối Response Body.

Nếu bạn không chọn hộp kiểm Exit on error, một thông báo lỗi sẽ xuất hiện trong Response Body khi có lỗi xảy ra. Quá trình thực thi sẽ tiếp tục sau khi lỗi được xử lý, và kết quả cũng sẽ được hiển thị trong Response Body.

Chúc các bạn thực hiện thành công. Hi vọng bài viết này sẽ giúp ích cho các bạn trong công việc. Nếu bạn có vấn đề gì thắc mắc đừng ngần ngại liên hệ với chúng tôi theo thông tin dưới đây để được hỗ trợ thêm.

Hẹn gặp lại các bạn trong các bài viết tiếp theo !

 

CÔNG TY CỔ PHẦN DỊCH VỤ CÔNG NGHỆ DATECH

• Địa chỉ: Số 23E4 KĐT Cầu Diễn, Tổ 7, Phú Diễn, Bắc Từ Liêm, Hà Nội

• Điện thoại: 02432012368

• Hotline: 098 115 6699

• Email: info@datech.vn

• Website: https://datech.vn