-
Vai a link e invia feedback chiedendo di aggiornare Server e OS X per supportare TLS 1.2. È ridicolo che non lo faccia, specialmente considerando che in iOS 9 e El Capitan richiedono che gli sviluppatori Apple rilasciano software che parla solo con i server TLS 1.2. Anche se è possibile applicare patch al server per operare con TLS 1.2, cosa succede quando Apple aggiorna nuovamente il server e ancora non supporta TLS 1.2? Quando installi quell'aggiornamento, sovrascriverà tutto ciò che hai posto?
-
Nel frattempo, suppongo, l'unica vera opzione che hai, è installare OpenSSL 1.0.1 o successivo, scaricare il codice sorgente di Apache e quindi costruirlo collegandolo a OpenSSL 1.0.1, e poi sostituisci l'Apache di OS X con quello appena creato. Questo richiederà quasi certamente di disabilitare la protezione dell'integrità del sistema perché non è possibile modificare i file del sistema operativo principale come apache2. Potresti essere in grado di farla franca semplicemente cambiando mod_ssl.so dopo aver fatto la tua build. Ma è ridicolo che dovremmo anche ricorrere a questo! Apple ha bisogno di risolvere questo !!! (vedi link )
-
Scarica VirtualBox e installa CentOS o un altro ambiente Linux avanzato per la sicurezza, ed esegui il tuo server su Mac. Perché, evidentemente, l'Apple CBA si masturba e cammina allo stesso tempo.
UPDATE:
Ecco i passaggi esatti che ho fatto per ottenere (2.) sopra per funzionare.
In questo modo OS X Server 5 funziona con TLS 1.2 e inoltra la segretezza su 10.11.1, rendendo ATS perfettamente felice (specialmente se sei uno sviluppatore, questo è davvero interessante).
- Installa Homebrew e prepara installsl, installa PCRE
- Scarica l'ultima versione di Apache, apr e apr-util
- Estrai il sorgente di Apache in /usr/local/src/httpd-2.4.17
- Estrai gli archivi apr e apr-util a /usr/local/src/httpd-2.4.17/srclib/apr e /usr/local/src/httpd-2.4.17 / srclib / apr-util
- Sostituisci il carattere "+" con la parola "apache2" nel file config.layout all'interno delle directory apr e apr-util
-
In Terminale, esegui i seguenti comandi:
cd /usr/local/src/httpd-2.4.17
CFLAGS="-arch x86_64"
./configure --prefix=/usr/local/apache-2.4.17 --with-included-apr --with-included-apr-util -with-mpm=prefork --with-ssl=/usr/local/opt/openssl --enable-mods-shared=reallyall --enable-layout=Darwin
make
make install
-
Copia mod_hfs_apple.so, mod_authnz_ldap.so e mod_ldap.so da / usr / libexec in /usr/local/apache-2.4.17/libexec/apache2/
- Disabilita SIP: riavvia in modalità Ripristina (comando-R), apri Terminale e digita
csrutil disable
. (Questo ti permette di essere in grado di apportare modifiche all'interno delle directory / usr / sbin e / usr, necessarie per sostituire l'Apache predefinito non sicuro con il nuovo sicuro che creerai.)
-
Riavvia in modalità normale, apri Terminale e digita i seguenti comandi:
sudo mv /usr/sbin/httpd /usr/sbin/httpd.old
sudo mv /usr/libexec/apache2 /usr/libexec/apache2.old
sudo ln -s /usr/local/apache-2.4.17/sbin/httpd /usr/sbin/httpd
sudo ln -s /usr/local/apache-2.4.17/libexec/apache2/ /usr/libexec/apache2
- Riattiva SIP: riavvia in modalità Ripristina, apri Terminale e digita
csrutil enable
.
- Riavvia la modalità normale e scarica la sorgente più recente per PHP, quindi estraila in /usr/local/src/php-5.6.16 (o in qualsiasi altra versione; 7.0 è appena uscito, woot , ma non so se romperebbe gli usi di PHP di OS X Server
-
Configura PHP con il seguente comando (modifica se necessario, ma ha funzionato per il mio stack LAMP con OS X Server 5):
ln -s /usr/local/opt/openssl /usr/local/openssl
cd /usr/local/src/php-5.6.16
CFLAGS="-arch x86_64"
./configure --with-openssl=/usr/local/opt/openssl --with-pcre-regex=/usr/local/opt/pcre --with-curl=/usr/bin/curl --enable-exif --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-pdo-mysql --enable-opcache --with-apxs2=/usr/local/apache-2.4.17/bin/apxs --prefix=/usr/local/apache-2.4.17/php/ --enable-sockets --enable-zip --with-pear=/usr/local/apache-2.4.17/lib/php --enable-mbstring --with-mysqli
make
make install
-
In un editor di testo, modifica il file:
/Library/Server/Web/Config/Proxy/servermgr_serviceproxy_customsites.plist
A partire dalla riga 65, esegui questi cambiamenti (linee per cancella , nuove linee ):
SSLCipherSuite "ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM"
SSLCipherSuite "ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS"
SSLHonorCipherOrder On
SSLProtocol -ALL +TLSv1
SSLProtocol -SSLv2 -SSLv3
SSLProxyProtocol -ALL +TLSv1
SSLProxyProtocol -SSLv2 -SSLv3
-
Successivamente, apporta una modifica simile in apache_serviceproxy_customsites.conf, iniziando dalla riga 13 (linee per elimina , nuove linee ):
SSLCipherSuite "ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM"
SSLHonorCipherOrder On
SSLCipherSuite "ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS"
SSLProtocol -ALL +TLSv1
SSLProtocol ALL -SSLv2 -SSLv3
SSLProxyProtocol -ALL +TLSv1
SSLProxyProtocol ALL -SSLv2 -SSLv3
-
Quindi, esegui esattamente le stesse modifiche del punto 14., in apache_serviceproxy.conf, a partire dalla riga 198.
-
Avvia il server OS X ed esegui il seguente comando per verificare che tu abbia avuto successo:
/ usr / bin / nscurl --ats-diagnostics https: // [[https del tuo sito personalizzato url]]
Nota: l'URL dovrà ovviamente essere formattato correttamente. Metto uno spazio in più prima dei due punti perché altrimenti questo post verrà inviato a moderazione.
Nel mio caso TUTTI i test sono tornati con un "PASS".
Posso fornirti un file di patch git per apportare le modifiche ai tuoi file .conf presumendo che tu abbia ancora un'installazione vergine e che tu sia sulla stessa versione di me.