czwartek, 28 lutego 2013

Self signed ssl certificate dla apache2

Zdziwiłem się ostatnio jak przeczytałem jakie automaty daje Apache2 do tworzenia fake'owych certyfikatów do połączeń ssl.

Jak dla Apache2 zrobić szyfrowane połączenia po ssl na podrobiony (samopodpisanym) certyfikacie

W dzisiejszych czasach sprawa wygląda banalnie prosto (apache na Ubuntu):
1) Trzeba włączyć w apache moduły do ssl:

a2ensite default-ssl
a2enmod ssl

2) Zrestartować apache:

/etc/init.d/apache2 restart

3) Wygenerować certyfikaty:

make-ssl-cert generate-default-snakeoil --force-overwrite

dla wielu serwerów wirtualnych:

make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /path/to/cert-file.crt


No i to wszystko - prawda, że proste? :)

sobota, 2 lutego 2013

Debian php5.3 downgrade to php5.2

Ostatnio stanąłem przed problemem downgradu php5.3 na debianie do wersji 5.2. Było to na tyle skomplikowane, że postanowiłem opisać to na blogu. Problem polega na tym, że część oprogramowania na Debianie Squeeze trzeba zastąpić pakietami z poprzedniej wersji Debiana Lenny. W tym celu należy:
1. W pliku /etc/apt/sources.list dopisać repozytorium Debiana lenny dodając linijkę:
deb http://archive.debian.org/debian/ lenny main contrib non-free
2. W  pliku /etc/apt/preferences.d zaznaczyć, które pakiety będą brane z której dystrybucji (często ten plik jest pusty albo w ogóle go nie ma):
Package: libkrb5*
Pin: release a=lenny
Pin-Priority: 700 
 
Package: openssh*
Pin: release a=lenny
Pin-Priority: 700
 
Package: mysql-server-*
Pin: release a=lenny
Pin-Priority: 700
 
Package: php5*
Pin: release a=lenny
Pin-Priority: 700
 
Package: *
Pin: release a=stable
Pin-Priority: 600:x

Jak widać powyżej, żeby zainstalować pakiety php5* z poprzedniej wersji Debiana należy również zainstalować, z wersji lenny, serwer mysql, openssh i libkrb5.

3. Dokonujemy to co zaplanowaliśmy komendą:
aptitude remove pakiet
Czyli po kolei:
aptitude remove mysql-server
aptitude remove openssh
aptitude remove libkrb5
oraz wszystkie pakiety związane z php5:
aptitude remove `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
4. Teraz zwykłe odświeżenie listy pakietów:
 apt-get update
5. No i sama instalacja:
apt-get -t lenny install `dpkg -l | grep php5| awk '{print $2}' |tr "\n" " "`
6. Podejrzewam, że możecie potrzebować odinstalowanych pakietów. Zwłaszcza serwera ssh i mysql. Proponuję ich instalację:
apt-get -t lenny install openssh
apt-get -t lenny install mysql-server
7. No i możemy sprawdzić czy mamy odpowiednie wersje php:
   7.1. dpkg -l | grep php
   7.2 php -v
   7.3 wyświetlając, w przeglądarce phpinfo
phpinfo();
?>
Mam nadzieję, że moje informacje pomogą Ci uporać się z problemem.