====== 3.1 Namestitev ====== Navodila za namestitev OpenSSL 3.6 in .NET Runtime 8.0. ---- ===== Preverjanje predpogojev ===== # Preveri različico OpenSSL openssl version # Pričakovano: OpenSSL 3.6.0 ali novejši # Če je prisoten, vendar prestara različica: which openssl # Linux/macOS where openssl # Windows ---- ===== OpenSSL 3.6.0+ ===== OpenSSL 3.6.0+ je potreben za ML-DSA((NIST FIPS 204: https://csrc.nist.gov/pubs/fips/204/final)) in ML-KEM((NIST FIPS 203: https://csrc.nist.gov/pubs/fips/203/final)). ==== Windows ==== **Možnost 1: Predkompilirane binarne datoteke (priporočeno)** Prenos z: [[https://slproweb.com/products/Win32OpenSSL.html|Shining Light Productions]] * Izberite: ''Win64 OpenSSL v3.6.x'' (Full, ne Light) * Namestitev: ''C:\Program Files\OpenSSL'' **Možnost 2: Konfiguracija PATH** # Zaženite kot administrator [Environment]::SetEnvironmentVariable( "Path", $env:Path + ";C:\Program Files\OpenSSL\bin", "Machine") # Preverite (odprite novo PowerShell okno) openssl version **Možnost 3: Nastavitev okoljske spremenljivke** # Trajno nastavite [Environment]::SetEnvironmentVariable("OPENSSL_PATH", "C:\Program Files\OpenSSL\bin", "Machine") # Ali začasno v trenutni seji $env:OPENSSL_PATH = "C:\Program Files\OpenSSL\bin" ==== Linux ==== **Ubuntu/Debian (če je OpenSSL 3.6+ v repozitorijih):** sudo apt update sudo apt install openssl libssl-dev # Preverite različico openssl version **Kompilacija iz izvorne kode (če so repozitoriji prestari):** # Odvisnosti sudo apt install build-essential checkinstall zlib1g-dev # Prenos in kompilacija cd /usr/local/src sudo wget https://www.openssl.org/source/openssl-3.6.0.tar.gz sudo tar -xzf openssl-3.6.0.tar.gz cd openssl-3.6.0 sudo ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib sudo make -j$(nproc) sudo make install # Ustvarite simbolične povezave sudo ln -sf /usr/local/openssl/bin/openssl /usr/local/bin/openssl sudo ln -sf /usr/local/openssl/lib64/libssl.so.3 /usr/lib/x86_64-linux-gnu/ sudo ln -sf /usr/local/openssl/lib64/libcrypto.so.3 /usr/lib/x86_64-linux-gnu/ # Posodobite ldconfig echo "/usr/local/openssl/lib64" | sudo tee /etc/ld.so.conf.d/openssl.conf sudo ldconfig # Preverite openssl version ==== macOS ==== # Homebrew brew install openssl@3 # Izvozite pot export OPENSSL_PATH=$(brew --prefix openssl@3)/lib export PATH="$(brew --prefix openssl@3)/bin:$PATH" # Naredite trajno (v ~/.zshrc ali ~/.bash_profile) echo 'export OPENSSL_PATH=$(brew --prefix openssl@3)/lib' >> ~/.zshrc echo 'export PATH="$(brew --prefix openssl@3)/bin:$PATH"' >> ~/.zshrc # Preverite openssl version ---- ===== .NET Runtime 8.0 ===== ==== Windows ==== # Preverite nameščene runtime-e dotnet --list-runtimes # Če ni na voljo: Prenesite z # https://dotnet.microsoft.com/download/dotnet/8.0 # Izberite ".NET Runtime 8.0.x" (ne SDK, razen za razvoj) # Po namestitvi preverite dotnet --list-runtimes | Select-String "Microsoft.NETCore.App 8" ==== Linux ==== # Ubuntu/Debian wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb sudo apt update sudo apt install dotnet-runtime-8.0 # Preverite dotnet --list-runtimes | grep "Microsoft.NETCore.App 8" ==== macOS ==== # Homebrew brew install dotnet@8 # Ali prenesite z https://dotnet.microsoft.com/download/dotnet/8.0 # Preverite dotnet --list-runtimes | grep "Microsoft.NETCore.App 8" ---- ===== Po namestitvi: Preverjanje ===== Zaženite te ukaze za preverjanje namestitve: # 1. Različica in informacije o gradnji OpenSSL openssl version -a # 2. Ali so PQ-podpisi na voljo? openssl list -signature-algorithms | grep -i "ml-dsa" # Pričakovani izhod: ML-DSA-44, ML-DSA-65, ML-DSA-87 # 3. Ali je PQ-KEM na voljo? openssl list -kem-algorithms | grep -i "ml-kem" # Pričakovani izhod: ML-KEM-512, ML-KEM-768, ML-KEM-1024 # 4. Seznam ponudnikov openssl list -providers # Pričakovano: default, base (in opcijsko: fips) # 5. .NET Runtime dotnet --list-runtimes # Pričakovano: Microsoft.NETCore.App 8.x.x **Pričakovani izhod za OpenSSL 3.6:** OpenSSL 3.6.0 7 Nov 2024 built on: ... OPENSSLDIR: "/usr/local/openssl" ---- ===== Znane težave ===== ^ Težava ^ Vzrok ^ Rešitev ^ | ''libcrypto-3-x64.dll ni najdena'' | OpenSSL ni v PATH | Razširite PATH ali nastavite ''OPENSSL_PATH'' | | ''ML-DSA not found'' | Prestara različica OpenSSL | Namestite različico 3.6.0+ | | ''permission denied'' | Manjkajoče pravice | Uporabite ''sudo'' ali preverite dovoljenja | | Konflikti s sistemskim OpenSSL | Več različic | Nastavite eksplicitno pot v ''OPENSSL_PATH'' | ---- ===== Nadaljnje branje ===== * [[.:konfiguration|Konfiguracija]] – Okoljske spremenljivke, FIPS-način * [[.:betrieb|Obratovanje]] – Zdravstveni pregledi, certifikati * [[.:troubleshooting|Odpravljanje napak]] – Pogoste napake pri namestitvi ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional// {{tag>installation openssl dotnet setup}}