בדיקת הקישוריות למשאב CoAP מאובטח באמצעות OT CLI

הצגת המקור ב-GitHub

ב-OpenThread יש גישה לשרת מאובטח של CoAP וגם פונקציונליות של לקוח, שמאפשר למכשירים להתחבר למשאבים בשרת Secure CoAP ולצפות בכל משאב כדי לראות שינוי במצבו הנוכחי.

התכונה Secure CoAP משתמשת ב-Datagram Transport Layer Security (DTLS) כדי ליצור חיבורים מאובטחים מקצה לקצה.

סוכן ה-CoAP המאובטח שניתן ב-CLI יכול לפעול כלקוח CoAP מאובטח או כשרת CoAP מאובטח.

במדריך הזה מפורטות משימות בסיסיות שנעשה בהן שימוש בכמה מהפקודות הנפוצות יותר של Secure CoAP (coaps).

פקודות CoAP מאובטחות

לרשימה של פקודות Secure CoAP, מקלידים help:

coaps help
connect
delete
disconnect
get
isclosed
isconnactive
isconnected
post
psk
put
resource
set
start
stop
x509
Done

מסמך עזר בנושא פקודות CLI

במסמכי העזר של הפקודות של CLI תוכלו לקרוא את התיאורים והתחביר של כל הפקודות. הפקודות של Secure CoAP מתחילות בסדר אלפביתי עם הקוד coaps connect.

דוגמה לשימוש בשרת מאובטח של CoAP ובפקודות לקוח

בדוגמה הזו נעשה שימוש בפקודות CLI בסיסיות כדי להפעיל שרת ולקוח מאובטח של CoAP, ליצור משאב בדיקה בשרת ה-CoAP המאובטח ולאפשר אינטראקציה של לקוח CoAP המאובטח עם המשאב. נתוני המדגם משמשים להמחשה.

הגדרת סטים של אלגוריתמים להצפנה (cipherSuite) של DTLS

ה-CLI של coaps מספק פקודות psk ו-x509 שניתן להשתמש בהן עם מפתח PSK ואישור X.509. למידע על תחביר ודוגמאות של פקודות, ראו coaps psk ו-coaps x509.

הגדרת שרת CoAP מאובטח

בצומת שרת ה-CoAP המאובטח, בצע את השלבים הבאים:

  1. מפעילים את סוכן ה-CoAP המאובטח.

    coaps start
    Done
    
  2. יוצרים משאב לבדיקה.

    coaps resource test-resource
    Done
    

הגדרת לקוח CoAP מאובטח

בצומת הלקוח המאובטח של CoAP, מבצעים את השלבים הבאים:

  1. מפעילים את סוכן CoAP המאובטח:

    coaps start
    Done
    
  2. מריצים את הפקודה connect כדי להתחיל סשן DTLS עם אפליקציה להשוואה:

    coaps connect fdde:ad00:beef:0:9903:14b:27e0:5744
    Done
    coaps connected
    
  3. מריצים את הפקודה get כדי לקבל מידע על המשאב:

    coaps get test-resource
    Done
    coaps response from fdde:ad00:beef:0:9903:14b:27e0:5744 with payload: 68656c6c6f576f726c6400
    

    החלק האחרון של תגובת השרת הוא המונח with payload: ואחריו כל הבייטים של המטען הייעודי (payload) בפורמט של ספרות הקסדצימליות. בדוגמה, with payload: 68656c6c6f576f726c6400 מציין שהמטען הייעודי (payload) הנוכחי של המשאב הוא הערך ההקסדצימלי 68656c6c6f576f726c6400, שממיר את הערך למחרוזת helloWorld. מידע נוסף על השימוש באפשרות payload זמין בפוסט Coaps.

  4. אפשר לשנות את המשאב באמצעות הפקודה put:

    coaps put test-resource con hellothere
    Done
    coaps response from fdde:ad00:beef:0:9903:14b:27e0:5744
    

    בדוגמה הזו, המשמעות של con היא שאתם רוצים שההודעה המהימנה שמתקבלת באמצעות הודעה ניתנת לאישור (con) תישלח לשרת של Secure CoAP. ברירת המחדל היא לשלוח הודעה שלא ניתן לאשר (non-con).

    המחרוזת hellothere היא דוגמה לשימוש בפרמטר האופציונלי payload כאשר הערך של type הוא con או non-con. למידע נוסף קראו את המאמר Coapsput.

    השרת מגיב באמצעות כתובת ה-IPv6 שלו כדי לציין שהבקשה טופלה.

התגובות נשלחו לשרת Secure CoAP

בשרת, הפלט מהדוגמה הזו יהיה דומה לפלט הבא:

coaps request from fdde:ad00:beef:0:9e68:576f:714c:f395 GET
coaps response sent
coaps request from fdde:ad00:beef:0:9e68:576f:714c:f395 PUT with payload: 68656c6c6f7468657265
coaps response sent

הערך payload של 68656c6c6f7468657265 הוא המחרוזת hellothere שהומרה לרצף של בייטים עם קוד ASCII.