CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin
CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.
HTTP / 2, HTTP protokolünün SPDY'yi temel alan en yeni sürümüdür. Geliştirilmesi Google tarafından başlatılmıştır ve HTTP / 2 büyük ölçüde SPDY'nin kod tabanına ve kavramlarına dayanmaktadır.
SPDY artık kullanımdan kaldırıldı ve HTTP / 2 için dünya çapında kabul görüyor. Birçok barındırma şirketi, ek hızı nedeniyle zaten HTTP / 2 için destek sağlamıştır.
Yazma sırasında, DirectAdmin HTTP / 2'yi etkinleştirmek için tek tıklatma yolu sağlamaz. Ancak, HTTP / 2 desteği almanın birden çok yolu vardır. Aşağıda özetlenen yöntemin en sağlam ve istikrarlı yaklaşım olduğu kanıtlanmıştır.
HTTP / 2'nin etkili olması için birkaç bileşenin güncellenmesi gerekir. Bu nedenle, bir fotoğraf çekmenizi şiddetle tavsiye ederim. Mümkünse, tamamen yeni bir sunucuda bu kılavuzu izleyin.
Bu kılavuz iki bölümden oluşmaktadır: istemciler (ziyaretçiler) için web sunucusunda (Apache) HTTP / 2 desteğinin etkinleştirilmesi ve cURL içinde HTTP / 2'nin etkinleştirilmesi. CURL için HTTP v2'yi etkinleştirmek, sunucunuzdan kaynaklanan cURL isteklerini mümkünse hedef sunucuları için HTTP / 2 kullanmaya zorlar.
HTTP / 2'nin kendisi için teknik bir gereklilik olmasa da, çoğu durumda HTTP / 2'yi kullanmak için bir SSL sertifikasına ihtiyacınız olacaktır. Belirtildiği gibi, HTTP / 2 teknik olarak bunu gerektirmez, ancak birçok tarayıcı (Safari, Chrome, Firefox vb.) Bu standardı oluşturmuştur. Bir sayfa bu tarayıcılar kullanılarak SSL olmadan yüklendiğinde içerik HTTP / 2 üzerinden sunulmayacaktır. Çoğu kullanıcının bu standarda da katılan bu tarayıcıları (ve diğerlerini) kullandığı göz önüne alındığında, bir SSL sertifikası kullanmalısınız.
Ücretsiz bir SSL sertifikası arıyorsanız, Let's Encrypt kılavuzlarımızdan birine göz atmalısınız:
Önerilen: DirectAdmin'e Şifreleyelim
Alternatif kontrol panelleri:
Genel kılavuzlar:
Bu kılavuz Brotli kurulumunu belgeliyor mu?
Hayır, bu makalede Brotli'yi HTTP / 2 ile birlikte yüklemek için özetlenen bir yöntem yoktur.
Derleme hiçbir nedenle başarısız olur ve bu makalede ana hatları verilen adımları tam olarak uyguladım. Bunu nasıl çözerim?
Farklı ortamlar ve benzerlerini hesaba katarak bunun birçok olası nedeni olsa da, muhtemelen yerel ayarlarınız doğru değildir. LC_ALL=CKomutlarınızın önüne koymayı deneyin , böylece Apache'yi yeniden derleme komutu şu şekilde görünecektir: ve komut LC_ALL=C ./build apache arasındaki boşluğu unutmayın LC_ALL=C!
Veri kaybedecek miyim?
Şu anda bir ters proxy kurulumu kullanıyorsanız, örneğin Apache ve Nginx ile, onu Apache'ye geri döndürmelisiniz, bu durumda Nginx yapılandırma dosyalarınızı gerçekten kaybedersiniz. Özel VirtualHost yapılandırmaları (komut satırı veya DirectAdmin'in kendisi aracılığıyla) yaptıysanız, Apache sürümlerinin etkin kalması için bunları etki alanı bazında değiştirmeniz gerekir. Kullanıcı verileri, web sitesi içeriği, veritabanları vb. İle ilgili hiçbir veri kaybetmezsiniz.
Bu özel sürümler gelecekte paketleri ve yazılımı güncellememi engeller mi?
Genel olarak, bu konuda endişelenmenize gerek yoktur. DirectAdmin'in modüler kurulumunu (ve dolayısıyla CustomBuild'leri) dikkate alarak, gelecekte herhangi bir sorun yaşamadan diğer yazılım sürümlerine geçebilir veya yükseltebilirsiniz. Gelecekte alternatif bir yükseltme yolu gerekmesi durumunda değişiklikleri belgelemenize rağmen, yeni yazılım sürümleriyle uyumsuzluk sürümleri hakkında endişelenmenize gerek yoktur.
DirectAdmin, kutunun dışında HTTP / 2 sunmaz; elbette ki bu uyumlu değil ya da olmama nedenleri var demektir. Bu geçici çözüm neden gereklidir?
Aşağıda açıklanan HTTP / 2'yi yükleme ve etkinleştirme yöntemleri çok fazla geçici çözüm değildir, yalnızca paket güncellemeleri ve yapılandırma değişiklikleriyle ilgilidir. DirectAdmin'in modüler kurulumu nedeniyle, bu değişiklikler mükemmel derecede iyidir ve sorunlara veya başka sorunlara neden olmamalıdır. Yazarların bunun için bir açıklama yapmadığı göz önüne alındığında, DirectAdmin'in bunu neden desteklemediğini belirlemek zordur. Bununla birlikte, oldukça sağlam bir sonuç, DirectAdmin'in sürüm paketlerini işletim sistemi tarafından kullanmasıdır. Bunlar genellikle aşağıdaki paketler kadar güncel değildir. HTTP / 2, teknolojinin kendisi ve uyumluluğu ile ilgili yanlış bir şey yoktur. Diğer birçok teknoloji gibi, yerel olarak uyum sağlamak biraz zaman alabilir.
HTTP / 2'yi Apache ile etkinleştirmenin olası riskleri nelerdir?
HTTP / 2'nin etkinleştirilmesinde (yükseltme ve yapılandırma işleminden oluşur) standart olmayan birçok değişken vardır. Ancak en büyük risk insan hatasıdır. Önceden bir fotoğraf çekin, bakımı kullanıcılarınıza duyurun (sunucuda kendinizden başka bir şey varsa) ve dikkatli olun. Ayrıca, ilk yaptıklarını düşünmeden komutları kopyalayıp yapıştırmayın.
DirectAdmin ile geçici olarak ayrı bir Vultr bulut örneği döndürmenizi ve adımlardan geçmenizi önemle tavsiye ederim. 'Yeni' bir kurulumda bir şeyler ters giderse, nerede ve nasıl hata ayıklayacağınızı bilirsiniz, böylece bir üretim ortamında uğraşmanıza gerek kalmaz.
Şu anda bir ters proxy kullanıyorsanız, yalnızca Apache ortamına geri dönmelisiniz. Bunun nedeni, bir şeyler ters giderse HTTP / 2'de hata ayıklamak çok zordur. Apache'nin entegre HTTP / 2 işlevinden yararlanarak, sorunun çok büyük bir bölümünü etkili bir şekilde ortadan kaldırabilirsiniz.
Çoğu durumda, OpenSSL sürümünüz HTTP / 2 için gerekli olan ALPN ile uyumlu değildir. Bu nedenle, OpenSSL'yi güncelleyerek ALPN'yi etkinleştirelim.
Öncelikle, OpenSSL sürümünüzün aşağıdakileri uygulayarak uyumlu olmadığından emin olalım:
openssl version
OpenSSL sürümünüz 1.1.0f'den küçükse, aşağıdakini root olarak yürütün. Aksi takdirde, 2. adıma geçin.
cd ~
wget ftp://ftp.openssl.org/source/openssl-1.1.0f.tar.gz
tar xzf openssl-1.1.0f.tar.gz
cd openssl-1.1.0f
./config --prefix=/usr/local/lib_http2 no-ssl2 no-ssl3 zlib-dynamic -fPIC
make depend
make install
HTTP / 2'nin çalışması için nghttp2'yi yüklememiz gerekiyor. Nghttp2, C'deki bir HTTP / 2 (ve HPACK) uygulamasıdır. Nghttp2, C'deki HTTP / 2 istemcisi, sunucusu ve proxy'nin birleştirilmiş sürümüdür.
Nghttp2'yi kurmak için aşağıdaki komutları yürütün. Neyse ki, nghttp2 doğrudan CustomBuild'den yapılabilir.
cd /usr/local/directadmin/custombuild
./build update
./build nghttp2
HTTP / 2'yi kullanabilmesi için Apache yapılandırma dosyasındaki birkaç değeri değiştirmemiz gerekiyor. Web sunucusu alternatif bir HTTP sürümü kullanmak için talimat almazsa, bundan yararlanamaz. Bu nedenle yapılandırma dosyasına HTTP / 2 eklememiz gerekir.
Bu değişikliklerin geçerli olması için CustomBuild aracılığıyla Apache'nin yeniden oluşturulması gerekir. Yazılım oluştururken CustomBuild tarafından kullanılan parametreler ve değerler özel bir yapılandırma dosyasında belirlendiğinden, en iyi uygulama bu değişiklikleri özel bir özel yapılandırma dosyasına koymaktır.
Not: Bu değişiklikleri özel bir dosyaya koymazsanız, büyük olasılıkla bunların üzerine yazılır ve kurulumunuz bozulur. Lütfen aşağıda belirtilen talimatları uygulayın.
Dosyayı oluşturmak için aşağıdaki komutları yürütün ve daha sonra değiştirebilmemiz için varsayılan değerlerle doldurun:
mkdir -p /usr/local/directadmin/custombuild/custom/ap2
cp -p /usr/local/directadmin/custombuild/configure/ap2/configure.apache /usr/local/directadmin/custombuild/custom/ap2/configure.apache
Şu an itibariyle, CustomBuild tarafından kullanılan Apache için varsayılan yapılandırma dosyasıyla aynı olan özel bir dosyamız var. Biz değiştirmek zorunda /usr/local/directadmin/custombuild/custom/ap2/configure.apacheaşağıdaki dizeyi değiştirerek dosyayı:
"--with-ssl=/usr" \
ile:
"--enable-http2" \
"--enable-ssl-staticlib-deps" \
"--with-ssl=/usr/local/lib_http2" \
Not: Ters eğik çizgilerden herhangi birinde beyaz boşluk olmadığından emin olun . Fazla boşluk orada yapının bozulmasına neden olur.
Ardından, Apache'yi yeniden oluşturun. CustomBuild az önce oluşturduğunuz özel yapılandırma dosyasını kullanacaktır:
./build apache
Apache, HTTP / 2 için gerekli modüller ve ayarlar dahil olmak üzere yeniden oluşturuldu. Bu, sunucumuzda HTTP / 2 desteğiyle yüklü bir Apache sürümümüz olduğu anlamına geliyor, ancak Apache'ye önce bunu kullanmasını söylememiz gerekiyor.
Aşağıdaki satırları ekleyin /etc/httpd/conf/extra/httpd-includes.conf:
ProtocolsHonorOrder On
Protocols h2 h2c http/1.1
Bu değişiklikleri kaydedin ve yapılandırma dosyalarını yeniden oluşturma işlemlerinde kalıcı olacak şekilde yeniden yazın:
cd /usr/local/directadmin/custombuild
./build rewrite_confs
HTTP / 2 artık web (Apache) sunucunuzda etkin olmalıdır.
Değişikliklerimizin yeniden başlatmalarda devam ettiğinden emin olmak için sunucuyu yeniden başlatın. Lütfen sunucuyu Vultr kontrol panelinden veya rebootkomutu uygulayarak yeniden başlatın .
HTTP / 2'nin işlevselliği aşağıdaki araç kullanılarak kolayca test edilebilir: HTTP / 2 Testi
HTTP / 2'nin sunucuya özgü olduğu ve belirli bir alan veya web sitesi çiftiyle sınırlanamayacağı düşünüldüğünde, sunucuyu işaret eden herhangi bir alan adı veya hatta sunucu IP adresi çalışmalıdır.
Test, HTTP / 2 üzerinden web sunucusuna erişip erişemeyeceğini size söyleyecektir. Aracın sunucunuzda HTTP / 2'nin etkinleştirilmiş olması durumunda, DirectAdmin web sitelerine artık HTTP / 1.1 veya HTTP / 2 üzerinden erişilebilir. İstemci (ziyaretçi) için HTTP / 2 desteğinin mevcut olmaması durumunda tarayıcısı HTTP / 1.1'e geri döner.
Aracın web sunucunuza HTTP / 2 üzerinden erişememesi durumunda yukarıdaki adımları tekrar uygulayın. Genellikle (yukarıdaki adımlar aktif olarak herhangi bir şeyin üzerine yazılmadığı için) bu, kurulumunuza zarar vermez veya bozulmaz.
HTTP / 2 desteğine sahip sunuculara erişebilmek için cURL'yi güncellemenizi öneririz. Bir sunucunun HTTP / 2'yi desteklememesi durumunda, HTTP / 1.1'e geri döner.
Tıpkı Apache gibi, CustomBuild tarafından oluşturulan cURL'nin özel ayarlarımızı kullanması için özel bir yapılandırma dosyası oluşturacağız.
Dizini oluşturun:
mkdir -p /usr/local/directadmin/custombuild/custom/curl
Dosyayı oluşturun:
touch /usr/local/directadmin/custombuild/custom/curl/configure.curl
Aşağıdaki içerikleri kopyalayıp dosyaya yapıştırın:
#!/bin/sh
perl -pi -e 's|CURL_CHECK_PKGCONFIG\(zlib\)|#CURL_CHECK_PKGCONFIG(zlib)|g' configure.ac
LIBS="-ldl" ./configure --with-nghttp2=/usr/local --with-ssl=/usr/local/lib_http2
Gördüğünüz gibi, bu içerikler cURL'ye lib_http2SSL kütüphanesi kullanılarak derlenmesini söyler .
Dosyayı kaydedin ve doğru izinleri verin:
chmod 700 /usr/local/directadmin/custombuild/custom/curl/configure.curl
Sonra, tek yapmamız gereken cURL oluşturmak.
cd /usr/local/directadmin/custombuild
./build curl
cURL artık HTTP 2 desteği ile derlenmiştir.
CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.
Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.
OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.
Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.