raspberry-pi-macsec
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
raspberry-pi-macsec [2025/10/04 16:11] – angelegt benny | raspberry-pi-macsec [2025/10/04 20:22] (aktuell) – [PKI mit OpenSSL erzeugen] benny | ||
---|---|---|---|
Zeile 26: | Zeile 26: | ||
Updating files: 100% (87559/ | Updating files: 100% (87559/ | ||
benny@debian: | benny@debian: | ||
+ | benny@debian: | ||
benny@debian: | benny@debian: | ||
HOSTCC | HOSTCC | ||
Zeile 82: | Zeile 83: | ||
</ | </ | ||
+ | ===== Neuen Kernel auf dem Pi nutzen ===== | ||
+ | |||
+ | [[https:// | ||
+ | < | ||
+ | pi@MACsecPi: | ||
+ | kernel-macsec.tar.gz | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | </ | ||
+ | |||
+ | ===== PKI mit OpenSSL erzeugen ===== | ||
+ | |||
+ | Passwort: demoDEMOdemoOnly | ||
+ | |||
+ | my-openssl.cnf | ||
+ | < | ||
+ | [ ca ] | ||
+ | default_ca = CA_default | ||
+ | |||
+ | [ CA_default ] | ||
+ | dir = ./demoCA | ||
+ | certs = $dir/certs | ||
+ | new_certs_dir | ||
+ | database | ||
+ | serial | ||
+ | private_key | ||
+ | certificate | ||
+ | default_days | ||
+ | default_md | ||
+ | policy | ||
+ | x509_extensions | ||
+ | |||
+ | [ policy_strict ] | ||
+ | commonName | ||
+ | countryName | ||
+ | stateOrProvinceName | ||
+ | organizationName | ||
+ | organizationalUnitName | ||
+ | |||
+ | [ req ] | ||
+ | default_bits | ||
+ | distinguished_name | ||
+ | string_mask | ||
+ | default_md | ||
+ | x509_extensions | ||
+ | |||
+ | [ req_distinguished_name ] | ||
+ | commonName | ||
+ | |||
+ | [ v3_ca ] | ||
+ | subjectKeyIdentifier=hash | ||
+ | authorityKeyIdentifier=keyid: | ||
+ | basicConstraints = critical, | ||
+ | keyUsage = critical, | ||
+ | |||
+ | [ v3_server ] | ||
+ | basicConstraints = CA:FALSE | ||
+ | keyUsage = critical, | ||
+ | extendedKeyUsage = serverAuth | ||
+ | subjectKeyIdentifier=hash | ||
+ | authorityKeyIdentifier=keyid, | ||
+ | |||
+ | [ v3_client ] | ||
+ | basicConstraints = CA:FALSE | ||
+ | keyUsage = critical, | ||
+ | extendedKeyUsage = clientAuth | ||
+ | subjectKeyIdentifier=hash | ||
+ | authorityKeyIdentifier=keyid, | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % ls | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % touch my-openssl.cnf | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % vi my-openssl.cnf | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % mkdir -p demoCA/ | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % touch demoCA/ | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % echo 1000 > demoCA/ | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % openssl req -new -x509 -days 3650 -extensions v3_ca \ | ||
+ | -keyout demoCA/ | ||
+ | -config my-openssl.cnf -subj "/ | ||
+ | Generating a 4096 bit RSA private key | ||
+ | ...................................................++++ | ||
+ | ...................................++++ | ||
+ | writing new private key to ' | ||
+ | Enter PEM pass phrase: | ||
+ | Verifying - Enter PEM pass phrase: | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % openssl req -new -nodes -out server.csr -newkey rsa:4096 -keyout server.key \ | ||
+ | -subj "/ | ||
+ | Generating a 4096 bit RSA private key | ||
+ | ................++++ | ||
+ | ...........................++++ | ||
+ | writing new private key to ' | ||
+ | ----- | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % openssl ca -config my-openssl.cnf -extensions v3_server \ | ||
+ | -in server.csr -out server.crt -days 1825 | ||
+ | Using configuration from my-openssl.cnf | ||
+ | Enter pass phrase for ./ | ||
+ | Check that the request matches the signature | ||
+ | Signature ok | ||
+ | The Subject' | ||
+ | commonName | ||
+ | Certificate is to be certified until Oct 3 18:02:51 2030 GMT (1825 days) | ||
+ | Sign the certificate? | ||
+ | |||
+ | |||
+ | 1 out of 1 certificate requests certified, commit? [y/n]y | ||
+ | Write out database with 1 new entries | ||
+ | Data Base Updated | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % openssl req -new -nodes -out client.csr -newkey rsa:4096 -keyout client.key \ | ||
+ | -subj "/ | ||
+ | Generating a 4096 bit RSA private key | ||
+ | .................................++++ | ||
+ | ......++++ | ||
+ | writing new private key to ' | ||
+ | ----- | ||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % openssl ca -config my-openssl.cnf -extensions v3_client \ | ||
+ | -in client.csr -out client.crt -days 730 | ||
+ | Using configuration from my-openssl.cnf | ||
+ | Enter pass phrase for ./ | ||
+ | Check that the request matches the signature | ||
+ | Signature ok | ||
+ | The Subject' | ||
+ | commonName | ||
+ | Certificate is to be certified until Oct 4 18:04:46 2027 GMT (730 days) | ||
+ | Sign the certificate? | ||
+ | |||
+ | |||
+ | 1 out of 1 certificate requests certified, commit? [y/n]y | ||
+ | Write out database with 1 new entries | ||
+ | Data Base Updated | ||
+ | |||
+ | benny@Bennys-MacBook-Pro-8 MACsecCA % openssl rsa -aes256 -in server.key -out server-enc.key | ||
+ | writing RSA key | ||
+ | Enter PEM pass phrase: | ||
+ | Verifying - Enter PEM pass phrase: | ||
+ | </ | ||
+ | |||
+ | ===== wpa_supplicant v2.11 kompilieren ===== | ||
+ | |||
+ | Wurde offenbar ohne MACsec kompiliert in Raspberry Pi OS Trixie, daher mal manuell probieren. | ||
+ | wpa_supplicant v2.11 reagiert nicht auf den "Key Server" | ||
+ | |||
+ | < | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | pi@MACsecPi: | ||
+ | </ | ||
+ | |||
+ | <WRAP center round alert 60%> | ||
+ | wpa_supplicant reagiert nicht auf den "Key Server" | ||
+ | </ | ||
raspberry-pi-macsec.1759594272.txt.gz · Zuletzt geändert: von benny