Założenia poniższego wpisu są następujące:
- Mamy już działającego produkcyjnie CAPsMANa.
- Połączenie z istniejącymi CAP oparte jest na certyfikatach.
- Chcemy dodać kolejny CAP.
- Nie możemy przestawić ustawień certyfikatów CAPsMANa na
auto
.
Przy próbie przestawienia ustawień certyfikatów CAPsMANa na auto
, działająca produkcyjnie sieć WiFi rozgłaszana przez CAP przestaje być dostępna na kilkanaście – kilkadziesiąt sekund. Są wdrożenia, które nie mogą sobie pozwolić na taki przestój.
Pomocna będzie tutaj ręczna konfiguracja certyfikatów. Topologia sieci wygląda następująco:
CAPsMANem jest router o nazie MAN i IP: 10.0.0.1. Zarządzane przez niego accesspoint to AP1 i AP3. Dodajemy dodatkowy, zaznaczony na rysunku jako AP2 i IP: 10.0.0.254
Logujemy się na router MAN i odszukujemy certyfikat CA, jaki jest wygenerowany na tym routerze dla CAPsMAN. Można to zrobić z GUI Winbox (klikając po kolei CAPsMAN/Zakładka CAP Interface/przycisk Manager) lub z CLI za pomocą poniższego polecenia:
/caps-man manager print
Widać, że w moim przypadku w polu generated-ca-certificate
znajduje się wpis CAPsMAN-CA-789A181364A2
. Wyeksportuję teraz ten certyfikat (bez klucza prywatnego):
/certificate export-certificate CAPsMAN-CA-789A181364A2 file-name=CAPsMAN-CA-789A181364A2 type=pem
W powyższym poleceniu zmieniamy nazwę CAPsMAN-CA-789A181364A2
na taką, jaka aktualnie jest na naszym CAPsMANie. Skutkiem prawidłowego wykonania polecenia jest utworzenie pliku CAPsMAN-CA-789A181364A2.crt
:
Generujemy teraz (dalej na routerze MAN) certyfikat dla naszego nowego AP. Domyślnie CAPsMAN używa nazewnictwa CAP-AdresMAC
. Sprawdziłem i mój AP na interfejsie ether1 (tym interfejsem jest wpięty do MAN) ma adres: 6C:3B:6B:94:59:C8. Przepisuję ten adres do poniższego polecenia (pomijając dwukropki):
/certificate add name=CAP-6C3B6B9459C8 common-name=CAP-6C3B6B9459C8 days-valid=3650 key-usage=digital-signature,key-encipherment,data-encipherment
Następnie podpisujemy wygenerowany certyfikat za pomocą ustalonego wcześniej CA:
/certificate sign CAP-6C3B6B9459C8 ca=CAPsMAN-CA-789A181364A2
Oraz eksportujemy go do Files
:
/certificate export-certificate CAP-6C3B6B9459C8 file-name=CAP-6C3B6B9459C8 export-passphrase=12345678 type=pem
Kopiujemy wygenerowane pliki do naszego komputera np. na Pulpit. Można to zrobić za pomocą metody przeciągnij i upuść. Po tej operacji na pulpicie komputera powinniśmy mieć 3 pliki:
CAPsMAN-CA-789A181364A2.crt
CAP-6C3B6B9459C8.crt
CAP-6C3B6B9459C8.key
Kolej na konfigurację AP. Kopiujemy wszystkie 3 pliki do naszego AP do Files
. Oraz importujemy do certyfikatów za pomocą następujących poleceń:
/certificate import file-name=CAP-6C3B6B9459C8.crt passphrase=12345678
/certificate import file-name=CAP-6C3B6B9459C8.key passphrase=12345678
/certificate import file-name=CAPsMAN-CA-789A181364A2.crt
Zostało tylko dołączyć naszego AP do MAN:
/interface wireless cap set caps-man-addresses=10.0.0.1 discovery-interfaces=ether1 lock-to-caps-man=yes interfaces=wlan1 certificate=CAP-6C3B6B9459C8.crt_0 enabled=yes
To czy prawidłowo przyłączyliśmy AP do MAN można sprawdzić za pomocą polecenia:
/interface wireless cap print
W wyjściu polecenia powinna się pojawić wartość pola locked-caps-man-common-name
jako CAPsMAN-789A181364A2
.
Koniec 🙂
Jeżeli pomogłem to ,a będę miał więcej energii na pisanie kolejnych ciekawych wpisów.