Sin da quando google ha iniziato ad apprezzare siti https, avendo più massa installazione di SSL- e dove è possibile. Nel complesso, oltre alle altre molestie per server che abbiamo e il degrado in velocità. La cosa buona è, che HTTP2 lo standard per più di un anno e mezzo è integrato in tutti i principali browser e server e supporto http sufficientemente stabile. Purtroppo non c'è nessun pacchetti debian stabili per tenere i server http principale HTTP2. Le versioni che sono necessarie per noi operare HTTP2 sono come segue:

Mešanicata per me è grande e secondo da utilizzare dipende da apache o nginx. Ancora non sto giocando a scatenarsi su apache http2 debian 8 Da allora non hai mai avuto, ma averlo così repoto backports, Non sarà un grosso problema. Per nginx ha già giocato più volte. Nel complesso, i passaggi sono pochi e relativamente semplici:

  1. Aggiungere i repo ufficiale di nginx – Debian è 1,6 x vesiâta. 🙄
  2. Installare openssl te stesso da backports è attualmente 1.0.2 (k) – Quello che ci serve per ALPN manutenzione per tutto funziona ed è veloce
  3. si installa il devscripts – Questo è il momento di condividere che verrà bildnem il nostro pacchetto, poiché il funzionario viene compilato con openssl 1.0.1 t che non funziona ALPN e non il browser rispondere bene e funziona solo se giri http2 esso
  4. inkrementirame la versione di non tenere i pacchetti come ciganiâta e c'è una nuova versione solo per sinkenm sorsovete

Iniziamo passo dopo passo

Aggiungere i repo nginx

deb http://nginx.org/packages/debian/ codename nginx
deb-src http://nginx.org/packages/debian/ codename nginx

Aggiungere una libreria di k dev openssl 1.0.2 e altrimenti bildnem nuovo con 1.0.1 io t è la destinazione

echo 'deb http://ftp.debian.org/debian jessie-backports main' | tee /etc/apt/sources.list.d/backports.list

apt update && apt install libssl-dev -t jessie-backports

 

Ora attaccato al suo aggiungere le librerie necessarie per la compilazione di nginx

apt install devscripts

apt build-dep nginx

mkdir nginx-build

cd nginx-build

apt-get source nginx

Se si sta lavorando correttamente si dovrebbe avere una struttura come

~/nginx-build # ll
total 1004
drwxr-xr-x 10 root root   4096 Feb 21 18:37 nginx-1.10.3
-rw-r--r--  1 root root 103508 Jan 31 17:59 nginx_1.10.3-1~jessie.debian.tar.xz
-rw-r--r--  1 root root   1495 Jan 31 17:59 nginx_1.10.3-1~jessie.dsc
-rw-r--r--  1 root root 911509 Jan 31 17:59 nginx_1.10.3.orig.tar.gz

Entra papta in cui la sorgente decompresso di nginx nel mio caso e nginx-1.10.3 eseguire comandi con i quali incrementare la versione, Io personalmente preferisco aggiungere 1 Questa build

debchange --newversion 1.10.3-1

Dopo aver aggiunto un changelog e può procedere alla compilazione effettiva

debuild -us -uc -i -I -b -j6

Una piccola precisazione sulla configurazione del comando:

-noi - uc dicono che lo script non a “firmato” .file DSC e modifiche.. -Ho e -Ho rendere lo script per ignorare i file per il controllo della versione. -B per generare un pacchetto binario unico. -j come con fare quanti processo parallelo di ricompilare 🙂

 

Una volta che hai completato il processo di cui sopra dovremmo installare i nostri nuovi pacchetti. Se avete già installato nginx è meglio disinstallarlo

apt remove nginx nginx-*

Inoltre non è una cattiva idea di fare un backup della cartella di nginx in / etc. In generale, un aggiornamento da 1.6.5 a 1.10.3 Non avevo drammi, ma non si sa mai. Nuove paktei si trovano nella cartella dal piano superiore e devono essere installati con un comando come:

dpkg -i ../*.deb

Se tutto è andato bene si rimane solo per eseguire processo di nginx e può essere configurato HTTP2 non è più obiettivo di questo articolo.

Possiamo facilmente uccidere tutte le query di mysql ad un utente specifico con elegante:

select concat('KILL ',id,';') from information_schema.processlist where user='user123';

User123 sostituto con noi gli utenti vogliono e implementiamo in mysql e tutto è OK 🙂

il nuovo Debian Stable un fatto circa una settimana e le mani prudeva aggiornare virtualkata ad esso, ma non ho avuto il tempo di oggi. Dal momento che il giorno in cui ho iniziato presto, ho deciso di dedicare il mio tempo per l'aggiornamento. Промених сорс листа ми като промених wheezy на jessie

sed -i "s/wheezy/jessie/g" /etc/apt/sources.list && apt-get update

qui ruggì 2 specchi:

  • MariaDB – sullo specchio non è più necessario Jessie include la versione 10.0.6 in me stesso non ho siedo bene molti. poi 5.5 michetodb e MySQL non sono del tutto coerenti, perché al momento si voltò di nuovo a mysql 5.5.42 – è il Jessie predefinita
  • DotDeb – L'ho usato prima per php55 Anche qui è inutile perché viene fornito con Jessie 5.6.7-1

Dopo calci gli specchietti aggiuntivi e voltato da MariaDB a MySQL apt-get dist-upgrade mio pulita, riavviare e ho dovuto Debian 8.0. Ho aperto il mio server e web con mia grande sorpresa lavorato qui una lunga storia – poche parole Nginx e ho compilato dai sorgenti ulteriormente con le direttive supplementari. dpkg -l nginx-pieno 1.2 Sì qualcuno ha dimenticato di pacchetti Riprendi, non. Riattiva e l'aggiornamento è tutto nei tempi previsti e nginx-rottura 😆 . Nginx-e lavorare processi query e processi php-fpm è e runnign ma codice php non viene eseguito e non sputare errori 🙄 miei preferiti.

Dopo una ricerca di informazioni sulle modifiche che ho trovato il seguente brano

problemi di configurazione FastCGI ============================

nginx spedito un fastcgi_params modificati, che ha dichiarato SCRIPT_FILENAME fastcgi_param. Questa linea è stato rimosso. D'ora in poi ci sono anche spedendo fastcgi.conf dal repository upstream, che include un valore di parametro SCRIPT_FILENAME sano di mente.

Così, se si utilizza fastcgi_params, si può provare a passare a fastcgi.conf o impostare manualmente i params rilevanti.

tombola. Ho cambiato gli host virtuali da utilizzare fastcgi.conf invece fare intrusioni maleducati e tutto acceso. Poi ha colpito un rapido diff per vedere qual è la differenza tra il 2 config

diff /etc/nginx/fastcgi_params /etc/nginx/fastcgi.conf
1a2
> fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;

Che mi ha ricordato che versando grandi configurazioni di host virtuali sono grande idea. Resta da nuovo ricompilato Nginx-e-ons che vogliono mod_sec + Page Speed ​​ma che può attendere. Molto più importante, че правилото ми се повтори ако нямаш огледа от 3-ти източници и кастъм изпълнения Debian не се чупи при dist-upgrade!

https://www.youtube.com/watch?v=gEQCny6zNF0

Chiunque si occupa di web hosting sa che cosa minaccia sono infettati da malware utenti, conchiglie web ecc. Nei casi in questo uso generale h non è una cattiva sceneggiatura. È dotato di 3 cose

  1. È terribilmente lento
  2. E 'terribilmente lento e se lasciato in modalità di monitoraggio si izgavri del server
  3. Mantiene il proprio database di definizione md5 / esadecimale del codice cattivo.

Proprio ultima caratteristica lo rende utile, perché oltre a qualsiasi altra cosa può sabmitvash i file che non sono stati rilevati fino ad ora, e in una fase successiva entrerà in banche dati. Come ho condiviso al punto 1 e 2 la velocità è incredibilmente basso – a basso carico il file della macchina 70K viene sottoposto a scansione per circa un'ora e mezza. Per questo motivo ho iniziato ad aiutare il mio buon amico con ShadowX Malmo – maldet alternativa scritto in python con poca flessibilità. Purtroppo, la mancanza di tempo (principalmente ma non solo) Non abbiamo finito il progetto, che al momento non è molto utilizzabile – ci sono molti bug che devono essere liquidati. Nei giorni scorsi ho avuto problemi con i clienti infetti da CryptoPHP che avevano file di grandi dimensioni public_html ~ 60K + inod-and User. Dal totale doveva essere scansionato più di 200k file di cui circa prenderebbe 5+ ore ho deciso di mettere a punto la configurazione di maldet, per ridurre i file che verranno esaminati da un numero e il tempo più ragionevole. Mentre la raccolta confit notato le seguenti linee

# Attempt to detect the presence of ClamAV clamscan binary
# and use as default scanner engine; up to four times faster
# scan performance and superior hex analysis. This option
# only uses ClamAV as the scanner engine, LMD signatures
# are still the basis for detecting threats.
# [ 0 = disabled, 1 = enabled; enabled by default ]
clamav_scan=1

È interessante notare che… Apparentemente vi è la possibilità di utilizzare ClamAV – che dispone anche di grande velocità, ma perché non provare. Una rapida installazione

/scripts/update_local_rpm_versions --edit target_settings.clamav installed

/scripts/check_cpanel_rpms --fix --targets=clamav

Maldet-corsa e su una piccola cartella – Non vedo alcuna differenza in termini di velocità e del comportamento – Si sta usando la sua sua scanner perl-sci al posto di quello di ClamAV. Dopo una breve spulciando tra fonte di maldet trovato le seguenti linee

 clamscan=`which clamscan 2> /dev/null`
 if [ -f "$clamscan" ] && [ "$clamav_scan" == "1" ]; then
        eout "{scan} found ClamAV clamscan binary, using as scanner engine..." 1
    for hit in `$clamscan -d $inspath/sigs/rfxn.ndb -d $inspath/sigs/rfxn.hdb $clamav_db -r --infected --no-summary -f $find_results 2> /dev/null | tr -d ':' | sed 's/.UNOFFICIAL//' | awk '{print$2":"$1}'`; do

Yep fatto un che clamscan и за моя голяма изненада открих че clamav изобщо не е в PATH-a ами тъпият Cpanel го е оставил само в /usr/local/cpanel/3rdparty/bin/ от където той си използва бинарките. Един бърз ln реши проблема:

ln -s /usr/local/cpanel/3rdparty/bin/clamscan /usr/bin/clamscan

При повторно сканиране maldet вече горно съобщава

{scan} found ClamAV clamscan binary, using as scanner engine...

След като вече използва ClamAV maldet приключва сканирането си 3-4-5 пъти по бързо в сравнение с преди. Теста показа – 70к inod-а ги изтъркла за около 25 мин което си е около 3 пъти и половина по бързо в сравнение с преди.

Prima ha iniziato con un altro odio casuale 50 OS s'tinki intendo, che ogni giorno devo amministrare il suo sapere in prima persona singolare piuttosto bene. Oggi ho passato il tempo a iztestvam nuova magia funzionalità inedite e invisibili aggiornamento distrubitiven (pseudo-) 😀 . La prima cosa che mi ha stupito è, che RedHat nella sua infinita saggezza ha deciso di interrompere il supporto per l'architettura x86 🙄 . Напълно съм наясно че сме 2014-та година и сървърни процесори с 32 lunga istruzione po 'mancante. Мда ама какво правят потребителите на малки VPS-и – x64 zampa di RAM, Come si guarda a se avete sottile macchina virtuale con 512 MB-1 GB di RAM si batterà per ogni megabay e non sprecare 20-30% Tanto per usare un grande insieme di istruzioni. Prepsuvah perché ero instalil CentOS x86 e x64 tirato uno. Immediatamente ho visto una differenza di ISO-esimo – ~ Minima при 100MB 6.5. Prepsuvah ancora una volta. Ho installato di nuovo virtualkata ho deciso di vedere come RedHat hanno fatto il loro lavoro – Ho dato / var e partizioni LVM separati usr / 😈 . Dopo l'installazione aggiornata tutti i pacchetti installati e Apache, PHP, mysql и bind – è stato interessante che cattura vigili del fuoco. Aperto come buona leadership studente di CentOS per aggiornare e cominciò diligentemente di seguire passo dopo passo. Quando ho raggiunto il momento di iniziare l'aggiornamento vero e proprio questa montagna leoni scolpiti me, че имам критичен проблем 🙄 . Commenta output dettagliato – mdaaaa / usr non è possibile è una partizione separata 😆 sapevo, че няма да бъда разочарован от Jim Whitehurst и компания. salvare “екстремниятпроблем имаше доста съобщения за неподписани пакети, файлове за конфизи които не съответстват и прочие. WTF дори не бях ползват 3-ти хранилища всичко от техните огледала смъкнах не бях правил никакви настройки просто елементарен yum install. Вече всичко беше ясно затова съвсем безцеремонно форсирах upgrade. Рестартирах отново прилежно както ме подкани накрая скрипта и всичко приключи заради /usr дяла. Бях твърде мързелив, че се пробвам да го фиксна, comunque era solo per scopi scientifici nessun prodotto server modo di aggiornare al momento. Ho preso reinstallare il vostro virtualkata questa volta tutto spingerlo in 1 quota. Inoltre ho preso una lezione, Nessun aggiornamento qualsiasi ulteriore sarvasi, dopo l'installazione aggiornamento diretto. Il passo finale ancora una volta si avvicinò DOSA dialogo che mi ha detto, Ho un sacco di guai alta – pacchetti non validi, konfizi ecc ma potrebbe continuare. Sapevo che all'inizio non li rende le cose sbagliate. Ho riavviato di nuovo e aspettai – oh che un aggiornamento del miracolo completato con successo. E ha funzionato, o almeno di avvio e non ha cercato di installare pacchetti aggiuntivi, ma il comando halt dipende – SYS doveva ancora essere un bug 💡 . Dopo tutta questa Tarapoto ha deciso di installare un Centos pulito 7 per vedere se siamo ringhiando per la partizione / boot di LVM – 6.5 non consente tale arroganza. ISO-lo lancio e sono stato leggermente scioccata dall'installatore – non era estremamente confortevole “ordinato”, completamente illogico bella. След известна борба успях със заветната цел и аха да се инсталира и гръмна, че трябва да си изнеса /boot-а извън LVM-a 👿 Това е крайно не сериозно и досадно, ако поради някаква причина забравиш да си увеличиш размера на boot дяла от 200МБ и понатрупаш стари ядра какво се случва.

В общи линии нищо не очаквах и пак съм разочарован от CentOS.