nelze zkompilovat ProFTPd s OpenSSL z portu

Miroslav Lachman 000.fbsd at quip.cz
Mon Jul 4 21:34:33 CEST 2005


Petr Rehor wrote:
> 
> Ve vypise na http://www.quip.cz/1/nyx2/freebsd/proftpd-mysql.config.log
> se pise, ze gcc nedokaze najit knihovnu libssl.so (parametr -lssl). Za
> normalnich okolnosti je v /usr/lib a pro jeji pouziti se nemusi delat
> nic. Pokud chcete pouzit OpenSSL z portu, tak se knihovna libssl.so
> nachazi v /usr/local/lib a gcc se musi rict, ze v nem ma hledat
> knihovnu parametrem -L. Ve vasem vypisu gcc takovy parametr nedostalo,
> takze hledalo pouze v /usr/lib.
> 
> Podivejte se s jakymi paramtery se spoustelo gcc s pouzitim
> WITH_OPENSSL_PORT=yes - jake adresare jsou mu predavany pomoci
> parametru -L.
> 

config.log po pouziti WITH_OPENSSL_PORT=yes je naprosto identicky jako 
ten bez pouziti WITH_OPENSSL_PORT=yes, zadny parametr -L v nem navic neni.

> 
>> Mozna jsem mezi tim nekde neco "procistil"...
> 
> 
> Zkontrolujte si, ze ve vasem systemu existuje /usr/local/lib/libssl.so
> - je to link na soubor /usr/local/lib/libssl.so.N kde N je cislo verze
> knihovny. Oba musi existovat. Taky se podivejte do /usr/lib kde by
> mela byt verze OpenSSL ze systemu.
> 
> P.
> 
V systemu existuji knihovny libssl.so na tech mistech, ktera jsem uvadel 
v prvnim e-mailu, konkretne ta z portu vypada nasledovne:
---------------------
# ls -al /usr/local/lib/libssl.so
lrwxr-xr-x  1 root  wheel  11 Apr 23 20:38 /usr/local/lib/libssl.so -> 
libssl.so.3
---------------------

V /usr/lib jiz neni, protoze diky volbe NO_OPENSSL v /etc/make.conf byla 
zastarala (v podstate z puvodni instalace FreeBSD 4.5), tu jsem tedy 
mozna odstranil prave po tom, co se jeste podarilo zkompilovat 
proftpd-1.2.10_1 - duvodem bylo tusim hlaseni rkhunter, ze mam v systemu 
dve verze OpenSSL a jedna z nich (prave ta systemova) je vulnerable

Zarazi me ovsem fakt, ze
---------------------
# ldd /usr/local/libexec/proftpd
---------------------
ukazuje (u soucasne nainstalovane verze) na /usr/local/lib/libssl.so.3 
(opet viz prvni e-mail) - tedy bych ocekaval, ze nejakym zpusobem se o 
umisteni teto knihovny dozvedet muselo...

Pokud udelam symlink z do /usr/local/lib/libssl.so.3 /usr/lib, tak se 
chyba v config.logu zmeni na:
---------------------
configure:1846: cc -O -pipe -march=pentiumpro -DHAVE_OPENSSL 
conftest.c -lssl -lcrypto >&5
/usr/libexec/elf/ld: cannot find -lcrypto
---------------------

libcrypto je opet jen v /usr/local/lib, kdybych i na ni udelal symlink 
do /usr/lib, tak by kompilace mozna prosla, ale tohle reseni mi 
nepripada jako to spravne. Nebo snad ano? :(

-- 
Miroslav Lachman
Webapplication Developer



More information about the Users-l mailing list