Plánuji nainstalovat qt 5.5.1 na můj ubuntu 14.04 běžící na virtuálním počítači. Stáhl jsem si instalační program z qt-io a když se pokusím nainstalovat nastavení, všiml jsem si níže uvedeného varování na svém terminálu a poté se objevil instalační program.
qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv2_server_method
Musím si s tímto varováním dělat velké starosti? Při instalaci qt 5.3.1 na stejný počítač nevidím žádnou chybu tohoto druhu.
Existuje způsob, jak toto varování vyřešit? Jakákoli pomoc je oceňována. Děkuji.
Toto je aktuální verze openSSL na mém počítači.
openssl version -v
OpenSSL 1.0.1f 6 Jan 2014
Přijatá odpověď:
Nyní je OpenSSL v Ubuntu zkompilován bez sslv2, protože je nezabezpečený, ale Qt 5.5.x to stále vyžaduje. Aby bylo možné povolit sslv2, je třeba balíček překonfigurovat bez příznaku no-sslv2.
Nainstalujte nezbytné balíčky
sudo apt-get update
sudo apt-get install libssl-dev devscripts dpkg-dev cdbs debhelper dh-autoreconf libev-dev libpcre3-dev pkg-config
A pak uchopte zdroj
cd ~/Downloads
sudo apt-get update
apt-get source openssl
Nyní musíme upravit soubor v openssl-1.0.1f/debian/rules. Najděte řádek 44 (možná se číslo řádku bude v různých verzích lišit) a odstraňte no-ssl2
takže to bude jako níže:
cd openssl-1.0.1f
nano debian/rules
CONFARGS = --prefix=/usr --openssldir=/usr/lib/ssl --libdir=lib/$(DEB_HOST_MULTIARCH) no-idea no-mdc2 no-rc5 no-zlib enable-tlsext no-ssl3 enable-unit-test $(ARCH_CONFARGS)
Dále přidáme komentář a provedeme změnu. Pak znovu sestavte balíček, bude to chvíli trvat, takže přeskočte dolů k části nmap a stáhněte si zdroj.
Možná se vám zobrazí nějaká chyba, že nebylo možné ověřit autorská práva, ignorujte to. Navíc kompilace může chvíli trvat, takže buďte trpěliví.
dch –n 'Allow SSLv2'
dpkg-source --commit
debuild -uc -us
Nyní zpět do ~/Downloads
uvidíte všechny vytvořené deb balíčky. Nainstalujte je:
cd ..
sudo dpkg -i *ssl*.deb
Nyní znovu proveďte instalaci Qt 5.5.1, abyste zjistili, zda varování přetrvávají.