Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
O co chodzi z GDB czy Strace?
To sam zobacz:
gdb ldapsearch set args "cmdline dla ldapsearch" run
GDB działa tylko z programami typu elf czyli binarnymi, nie działa ze skryptami typu bash czy perl.
strace -f -o /tmp/lddapsearch.log ldapsearch "cmdline dla ldapsearch"
np u mnie:
strace -f -o /tmp/ldapsearch.log ldapsearch "chooj doopa i kamieni kupa" ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
Tu masz wyjście /tmp/ldapsearch.log u mnie:
https://pastebin.com/raw/Rg49QeeW
Co do testowania połączenia przez openssl przy certyfikatach self-sigend, to rzuć okiem na to:
https://stackoverflow.com/questions/22304564/cant-v … r-cafile-used
Reasumując:
Alleluja i do do roboty ;)
Ostatnio edytowany przez Jacekalex (2019-07-17 16:59:18)
Offline
gdb jedyne co mi dao to
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1) [Inferior 1 (process 11577) exited with code 0377]
Wiec nic specjalnego. Za to strace wypluł, że plik konfiguracyjny ma błąd więc go naprawiłem i teraz poszło dalej ale nie znajdywał nic w bazie. Dlatego zmodyfikowałem zapytanie i wypluł!!!
Bardzo dziękuje za pomoc! Serio życie mi ratujesz. Teraz muszę wymyślić komunikację z telefonami. Telefony są w stanie pobierać certyfikat ze wskazanego źródła HTTP/HTTPS ub FTP/SFTP.
Nie wiem jak to ugryźć, teleofny potrzebują ściezek do:
ROOT_CERT
CIENT_CERT
CLIENT_CERT_KEY
i pytanie czy wystawiać dla każdego osobno (500 urządzeń), czy dla wszystkich po kolei (będę musiał zastrugać python script)
Ewentualnie jak ma nie być mutualTLS to samo CA. Co lepiej/bezpieczniej? I jak dystrybuować.
Offline
500 telefonów do ldapa?
Kupić baseballa i gruntownie i z najwyższą starannością obić gada, który to wymyślił.
Do cegłofonów z Andkiem czy IOS są uslugi sieciowe typu caldav i carddav.
Masz w Linuxie ze trzy skrypty PHP, które gadają z Mysql czy Postgresem, jak Baikal, Davical, Radicale,
a ich implementacja w cegłofonach ogranicza się do zainstalowania i skonfigurowania np na Andku programiku DavDroid.
W ten sposób bezpiecznie i bez problemu rozwiążesz książkę adresową i kalendarz firmowy.
Co się tyczy obecnego LDAPa, to najpierw zestaw dwa cegłofony (Andek i IOS) , a potem roześlesz CA mailem po pacjentach z instrukcją, jak certa zainstalować w systemie fona.
Chyba, że chcesz za pacjentami ganiać i im to instalować ręcznie, ale to idiotyczny horror.
Andek ma zasadniczo systemowy magazyn certyfikatów, z którego wszystkie programy powinny korzystać.
Zainstalowanie certa pkcs#12 w Davdroidzie wymagało u mnie ustawienia pinu blokady w Andku.
Nie wiem tylko, co w tych ceglofonach gada z tym ldapem, czy programy zgodne z API systemu
czy jakieś rękodzieła artystyczne.
Ostatnio edytowany przez Jacekalex (2019-07-18 13:59:55)
Offline
Ale to nie do teefonów mobilnych :D Się uparłeś na nie. To do teefonów stacjonarnych VoIP, na własnym systemie, obsługujących tyko LDAP, Wszystko lata po LAN.
Dlatego co robić, każdemu generować i na wspólny http ub ftp i sobie każdy pobierze przy próbie rejestracji, czy tylko na CA.
Offline
Stacjonarne VOIP?
Konfigurujesz Voip z LDAPem w Muzeum Narodowym czy w Ministerstwie Cyfryzacji? xD
Nie znam tego systemu w tych cegłofonach, ale pewnie to jest jakiś Linux 2.4 sprzed 20 lat.
I może miejscami nie gadać z certami, bo generujesz certy z hashem SHA2.
Tymczasem np Xerox Workcentre do wysyłania maili przez SSL wymagał aktualizacji firmware, bo nie gadał z obecnymi standardami szyfrowania, a serwer SMTP nie pozwalał na logowanie bez szyfrowania.
Taki przypadek miałem kilka tygodni temu, i to przypadek, wobec którego dwa serwisy autoryzowane Xeroxa były bezradne.
Dlatego musisz wziąć pod uwagę, że w takich urządzeniach Voip nikt nigdy nie aktualizuje softu,
a producent go nie dostarcza po okresie gwarancji najczęściej.
Zwłaszcza jak np na pudełku pisze Siemens, "produkował" Benq, a wyprodukowała fizycznie grupa 3 Chińczyków w jakiejś piwnicy.
To że masz certyfikaty i szyfrowanie, nie oznacza, że Voipy będą z nim gadać.
Zobacz to:
https://www.ssllabs.com/ssltest/analyze.html?d=dug.net.pl
Konkretnie tytuł: Handshake Simulation
To zobaczysz, jaki jest problem z algorytmami szyfrowania w starszych systemach.
Albo sprawdź, który program do księgowości potrafi wysłać Jendolity Plik Kontrolny z Windows XP.
To też się dowiesz, jakie zagrożenia kryje szyfrowanie.
Pozdro
Ostatnio edytowany przez Jacekalex (2019-07-18 14:51:06)
Offline
Spokojnie nie zakładaj najgorszego. Telefony są ogarnięte i posiadają systemy nowsze: Linux 3.4.20 #1 PREEMPT RT Fri Dec 9 22:09:45 JST 2016 armv5tejl. Seryjnie ogarniają nowe certyfikaty i są aktualizowane przy każdym restarcie. Takie było założenie, że maja ogarnąć sha2. Tylko pytanie o dystrybucje klucza. Bo zrobienie skryptu aby było indywiduanie, albo użycie easy-rsa nie zajmie wiele więcej czasu niż tyko po CA. Pytanie jak lepiej? Wydajniej/bezpieczniej.
Offline
3.4.20 to nowe jajo?
Żartujesz chyba.
Tu piszą coś zupełnie innego:
https://www.kernel.org/category/releases.html
Naskrob sobie skrypta, który Ci będzie generował certyfikaty od kopa.
Komendy SSL da się całkowicie zaktualizować.
Np kiedyś zbudowałem taki skrypt do certów PKCS#12 dla Pacjentów:
#!/bin/bash #set x PACJENT="$1" EMAIL="$2" PASS=$(pwgen -c1 -s -n 25) KEYDL="4096" DAYS="1825" KRAJ="PL" REGION="Silesia" NAZWA="Nazwa" DOMENA="domena.tld" mkdir -p $PWD/${PACJENT} echo $PASS > $PWD/${PACJENT}/password echo " Create ${PACJENT} key ${PACJENT}.key for a client" openssl genrsa -aes256 -passout pass:${PASS} -out ${PACJENT}/${PACJENT}.key ${KEYDL} echo " Remove passphrase " openssl rsa -passin pass:${PASS} -in ${PACJENT}/${PACJENT}.key -out ${PACJENT}/${PACJENT}.key echo " Create CSR for the client." openssl req -config openssl.cnf -new -subj "/C=${KRAJ}/L=${NAZWA}/O=${PACJENT}/CN=${EMAIL}" \ -key ${PACJENT}/${PACJENT}.key -out ${PACJENT}/${PACJENT}.csr echo "Create client certificate." #openssl ca -batch -config openssl.cnf -days ${DAYS} -in ${PACJENT}/${PACJENT}.csr -out ${PACJENT}/${PACJENT}.crt \ #-keyfile CA/${NAZWA}CA.key -cert CA/${NAZWA}CA.crt -policy policy_anything # openssl req -new -x509 -key privkey.pem -out cacert.pem -days 1095 openssl x509 -req -days ${DAYS} -in ${PACJENT}/${PACJENT}.csr -CA CA/${NAZWA}CA.crt -CAkey CA/${NAZWA}CA.key \ -set_serial 01 -out ${PACJENT}/${PACJENT}.crt file ${PACJENT}/${PACJENT}.crt openssl verify -CAfile CA/${NAZWA}CA.crt ${PACJENT}/${PACJENT}.crt echo " Export the client certificate to pkcs12 for import in the browser "; openssl pkcs12 -export -passout pass:${PASS} -in ${PACJENT}/${PACJENT}.crt \ -inkey ${PACJENT}/${PACJENT}.key -certfile CA/${NAZWA}CA.crt -out ${PACJENT}/${PACJENT}.p12 #openssl pkcs12 -export -out ${PACJENT/${PACJENT}.p12 -inkey ${PACJENT}/${PACJENT}.key \ #-in ${PACJENT}/${PACJENT}.crt -certfile CA/${NAZWA}CA.crt
Użycie typu:
./clientcert "pacjent" "pacjent@domena.tld"
i cert Pacjenta się buduje i podpisuje automatycznie, a hasełko zapisuje razem z certami w osobnym folderze w ścieżce:
$PWD/pacjent/
Jest w nim sporo zakomentowanych komend, bo razem z wersjami OpenSSL/LibreSSL,
API mutowalo, i co chwilka nie działało coś innego.
Powstał do wersji używalnej czasie, kiedy do Linuxa Gentoo zawędrowało Libressl 2.2,
bo na OpenSSL wiecznie miałem jakieś problemy z certami.
W każdym razie w zeszłym roku na Libressl 2.7.2 i 2.8.3 jeszcze działał bez błędów,
był dużo bardziej niezawodny i łatwiejszy niż Easy-RSA.
Do dystrybucji certów po urządzeniach możesz użyć Basha, Perla lub Pythona, nie wiem, jaki tam masz wjazd do tych urządzeń,
w przypadku np Perla, telnet, http, ftp czy SSH to kwestia użycia odpowiedniego modułu.
Np Perl:
logowanie do routera:
https://www.perlmonks.org/?node_id=1127159
tu przykład ładowania pliku przez http/POST:
https://www.perlmonks.org/bare/?node_id=303259
Pozdro
Ostatnio edytowany przez Jacekalex (2019-07-27 01:40:05)
Offline