CentOS 6da Apache Sunucusunun Güvenliğini Sağlama

Bir sunucuyu güvenceye alırken kısayollar almak kolaydır, ancak bir saldırganın sunucularınızdan herhangi birine kök erişimi sağlaması durumunda veri kaybı riskiyle karşı karşıya kalırsınız. Basit kurulumlar için bile, sunucunuzu önceden güvenli hale getirmeniz gerekir. Sunucuların güvenliğini sağlamak geniş bir konudur ve üzerinde çalışan işletim sistemine ve uygulamalara bağlı olarak değişir.

Bu eğitici, Apache'yi CentOS 6 altında güvenli hale getirmeye odaklanıyor. Kendinizi ayrıcalık yükselmesinden ve ayrıcalıklı olmayan saldırılardan korumak için atabileceğiniz birkaç yükleme sonrası adım var.

Daha fazla uzatmadan başlayalım.

Adım 1 - Web sunucusunu kurma

Tabii ki, yüklü Apache veya PHP yoksa, şimdi yapmalısınız. Bu komutu kök kullanıcı olarak yürütün veya sudo kullanın:

yum install httpd php

Adım 2 - Ana dizinlerin güvenliğini sağlama

Şimdi Apache yüklendiğine göre, devam edip güvenliğini sağlamaya başlayalım. İlk olarak, diğer kullanıcıların dizinlerinin sahip dışındaki kişiler tarafından görülmediğinden emin olmak istiyoruz. Tüm ev dizinlerini 700 olarak değiştireceğiz, böylece ev dizinlerinin yalnızca ilgili sahipleri kendi dosyalarını görüntüleyebilir. Bu komutu root olarak çalıştırın veya sudo kullanın:

chmod 700 /home
chmod 700 /home/*
chmod 700 /home/*/*

Joker karakterler kullanarak, şu anda ana dizinde bulunan tüm dosyaları ele alıyoruz.

3. Adım - Kullanıcı ayrıcalığı ayırmak için Apache'ye bir güvenlik düzeltme eki uygulayın

Apache'yi yamalamadan önce, yamayı içeren paketi içeren havuzu yüklememiz gerekir. Aşağıdaki komutları root (veya sudo) olarak çalıştırın.

yum install epel-release
yum install httpd-itk

"Apache2-mpm-itk" ile, PHP'nin sanal ana bilgisayara göre hangi kullanıcı tarafından çalıştırılması gerektiğini söyleyebiliriz. AssignUserId virtualhost-user virtualhost-user-groupApache / PHP'ye belirli bir kullanıcı hesabı altında kullanıcı kodu yürütmesini söylememizi sağlayan yeni bir yapılandırma seçeneği ekler .

Bu sunucuyu paylaşıyorsanız, daha önce Apache için zaten bir sanal ana bilgisayar oluşturduğunuzu varsayıyorum. Bu durumda, 4. adıma atlayabilirsiniz.

3. Adım - İlk sanal ana makinenizi oluşturma

Apache'de sanal bir ana bilgisayar oluşturmak için aşağıdaki şablonu takip edebilirsiniz.

NameVirtualHost mytest.website

<VirtualHost mytest.website>

DocumentRoot /home/vhost-user/public_html
ServerName mytest.website
</VirtualHost>

En sevdiğiniz metin düzenleyicisini açın /etc/httpd/conf.d/example-virtualhost.confve ardından yukarıdaki içeriği içine ekleyin. İşte nano kullanma komutu:

nano /etc/httpd/conf.d/example-virtualhost.conf

Buradaki yapılandırmayı açıklayayım. Biz "NameVirtualHost" belirtirken, aslında biz barındırarak elde edeceğiniz web sunucusu söylüyorsun birden çok etki üzerinde bir IP . Şimdi, bu örnekte, mytest.websiteörnek bir etki alanı olarak kullandım . Bunu sizin veya seçtiğiniz bir alan adıyla değiştirin. DocumentRootApache'ye içeriğin nerede bulunduğunu söyleyen şeydir. ServerNameApache'ye web sitesinin alan adını söylemek için kullandığımız bir direktiftir. Ve </VirtualHost>Apache'ye sanal ana bilgisayar yapılandırmasının sonu olduğunu söyleyen son bir etiket .

Adım 4 - Apache'yi başka bir kullanıcı olarak çalışacak şekilde yapılandırma

Daha önce de belirtildiği gibi, sunucunuzun güvenliğini sağlamanın bir kısmı, her sanal ana bilgisayar için ayrı bir kullanıcı olarak Apache / PHP çalıştırmayı içerir. Düzeltme ekini uyguladıktan sonra Apache'ye bunu yapmasını söylemek kolaydır - tek yapmanız gereken eklemektir:

AssignUserId vhost-user vhost-user-group

... yapılandırmanıza. Bu seçeneği ekledikten sonra örnek sanal ana bilgisayarın nasıl görüneceği aşağıda açıklanmıştır:

NameVirtualHost mytest.website

<VirtualHost mytest.website>

DocumentRoot /home/vhost-user/public_html
ServerName mytest.website
AssignUserId vhost-user vhost-user-group

</VirtualHost>

Sihir ile başlayan çizgide AssignUserId. Bu seçenekle Apache / PHP'ye aşağıdaki kullanıcı / grup olarak çalışmasını söylüyoruz.

Adım 5 - Apache'nin sürümünü gizleme

Bu adım oldukça basit; kök kullanıcı olarak aşağıdaki komutu yürüterek Apache'nin yapılandırma dosyasını açmanız yeterlidir:

nano /etc/httpd/conf/httpd.conf

"ServerTokens" i bulun ve ardından seçeneği "ProductOnly" olarak değiştirin. Bu, Apache'ye "Apache / 2.2" veya benzer bir şey yerine "Apache" olduğunu göstermesini söyler.

Adım 6 - Değişiklikleri uygulamak için Apache'yi yeniden başlatma

Şimdi sunucuyu güvenli hale getirdiğimize göre, Apache sunucusunu yeniden başlatmalıyız. Bunu aşağıdaki komutu root olarak veya sudo ile çalıştırarak yapın:

service httpd restart

Sonuç

Bunlar sunucunuzu güvenceye almak için atabileceğiniz birkaç adımdır. Bir kez daha, sunucunuzda bir web sitesi barındıran güvendiğiniz biri olsa bile, korumayı planlamalısınız. Yukarıdaki senaryolarda, bir kullanıcı hesabının güvenliği ihlal edilmiş olsa bile, saldırgan tüm sunucuya erişemez.

Yorum bırak

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

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.

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

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.

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

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

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

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.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

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.

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

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.