14.4.2. Ön koşullar: OpenSSL ve saat¶
Uygulamalı sayfaların herhangi biri çalışmadan önce iki parçanın yerinde olması gerekir: geliştirme makinenizdeki OpenSSL komut satırı aracı ve her TLS el sıkışması anında kameradaki doğru bir saat.
14.4.2.1. OpenSSL kurulumu¶
Bu bölümdeki komutlar, kamerada değil, geliştirme makinenizde çalıştırılan openssl komut satırı aracını kullanır. Genellikle zaten kuruludur; şununla kontrol edin:
openssl version
Eksikse, işletim sisteminiz için kurun:
Linux – paket yöneticisini kullanın, örn.
sudo apt install openssl(Debian/Ubuntu),sudo dnf install openssl(Fedora/RHEL) veyasudo pacman -S openssl(Arch).macOS – Homebrew kullanarak
brew install openssl.Windows – Win32/Win64 OpenSSL gibi bir derleme kurun, bir paket yöneticisi kullanın (
winget install ShiningLight.OpenSSL.Lightveyachoco install openssl) ya da Git for Windows ile gelenopensslaracını kullanın (Git Bash’ten çalıştırın).
14.4.2.2. Saatin ayarlanması¶
ssl.CERT_REQUIRED her sertifikanın geçerlilik süresini kontrol eder, bu nedenle kameranın saati doğru olmalıdır, aksi takdirde doğrulama başarısız olur (yeni açılmış bir kameranın saatin kaç olduğu hakkında hiçbir fikri yoktur). Çalışan bir ağ bağlantısıyla, ntptime modülü zamanı NTP üzerinden alır ve kart üzerindeki RTC’yi (machine.RTC) UTC olarak ayarlar:
import ntptime
ntptime.settime() # query NTP and set machine.RTC (UTC)
Bundan sonra, time.localtime() ve machine.RTC geçerli UTC zamanını yansıtır. Ağ arayüzünü etkinleştirmek karta özgüdür ve burada gösterilmemiştir; sonraki sayfalardaki örnekler kameranın zaten bağlı olduğunu varsayar.