Jak zainstalować i skonfigurować Apache na Centos/Rhel 8
- 4249
- 1009
- Seweryn Augustyniak
Centos 8 to najnowsza wersja systemu operacyjnego Centos Linux, opartego na Red Hat Enterprise Linux 8. W tym samouczku pomożemy Ci zainstalować serwer WWW Apache w systemie Centos 8 lub RHEL 8 z dodatkową konfiguracją i bezpieczeństwem.
PRZYKŁADY
- SSH Dostęp do systemu Centos/RHEL 8
- Użytkowania sudo do instalowania pakietów
Krok 1 - Zainstaluj Apache na Centos 8
Przede wszystkim zaloguj się do systemu CentOS 8 lub RHEL 8 za pośrednictwem SSH. Następnie zainstaluj pakiety serwera HTTP Apache2 za pomocą następującego polecenia. Spowoduje to również zainstalowanie dodatkowych wymaganych pakietów w twoim systemie.
sudo dnf instaluj httpd
Poczekaj na zakończenie instalacji
Krok 2 - Zarządzaj usługą Apache
Usługa Apache jest zarządzana z wierszem poleceń SystemCtl na Centos/RHEL 8. Po instalacji użyj następującego polecenia, aby włączyć usługę Apache, a następnie uruchom ją.
sudo systemctl włącz HTTPD.serwis sudo systemctl start httpd.praca
Oto inne polecenia, które można zatrzymać i ponownie uruchomić usługę Apache za pośrednictwem wiersza poleceń.
Sudo Systemctl Stop Apache2.Service Sudo Systemctl restart apache2.praca
Krok 3 - Przetestuj konfigurację Apache
Możesz wyświetlić zainstalowane szczegóły wersji Apache za pomocą następującego polecenia.
Wersja serwera httpd -v: Apache/2.4.37 (centos) Serwer Zbudowany: 7 października 2019 21:42:02
Utwórz stronę Test HTML w Domyślnym katalogu głównym dokumentu (/var/www/html).
sudo echo "hello tecadmin.net ">/var/www/html/index.html
Teraz uzyskaj dostęp do serwera Apache za pomocą adresu IP serwera lub domeny wskazanej na adres IP serwera.
Krok 4 - Tworzenie VirtualHost
Utwórzmy pierwszy wirtualny host na serwerze Apache. W samouczku używamy przykładowej domeny „przykład.com ”. Tutaj utworzymy na przykład wirtualny host.com na porcie 80.
Utwórz przykładowy plik indeksu w katalogu:
sudo mkdir -p/var/www/przykład.COM ECHO „Witaj przykład.com "| sudo tee/var/www/przykład.com/indeks.html
Następnie utwórz plik konfiguracyjny VirtualHost i edytuj w edytorze:
sudo vim/etc/httpd/conf.d/przykład.com.conf
Dodaj następującą zawartość na końcu pliku konfiguracyjnego. Możesz zmienić nazwę domeny zgodnie z domeną.
ServerAdmin [email protected] dokumentroot/var/www/przykład.Com Servername Przykład.com serveralias www.przykład.com #AllOWOVERRIDE All ### Uznowienie w razie potrzeby, w razie potrzeby logi/przykład błędu.com_error.Zaloguj dzienniki/przykład CustomLog.com_access.Log łącznie12345678910111213 |
Zapisz plik konfiguracyjny VirtualHost i ponownie załaduj usługę Apache za pomocą następujących poleceń:
sudo systemCtl RELOOD HTTPD.praca
Krok 5 - Skonfiguruj SSL VirtualHost
Możesz pominąć ten krok, jeśli nie potrzebujesz SSL. Ale bezpieczeństwo jest zawsze głównym problemem dla każdej strony internetowej. Aby użyć SSL z Apache, zainstaluj pakiet MOD_SSL w swoim systemie.
sudo dnf instalacja mod_ssl
W samouczku postępowałem zgodnie z tymi instrukcjami, aby wygenerować certyfikat SSL dla naszej domeny.
Możesz albo użyć /etc/httpd/conf/ssl.conf Dla wirtualnego hosta SSL lub możesz użyć osobnego wirtualnego pliku konfiguracyjnego hosta dla swojej domeny. Na przykład:
sudo vim/etc/httpd/conf.d/przykład.com_ssl.conf
Z następującą zawartością:
ServerAdmin [email protected] dokumentroot/var/www/przykład.Com Servername Przykład.com serveralias www.przykład.com #AllOWOORRide All ### Uznowienie w razie potrzeby SSLENGINE na SSLCertificateFile/etc/pki/tls/certs/przykład.com.crt sslcertificateKeKeyFile/etc/pki/tls/certs/przykład.com.Kluczowe dzienniki/przykład.com_ssl-error.Zaloguj dzienniki/przykład CustomLog.COM_SSL-ACCESS.Log łącznie123456789101112131415161718 |
Oto trzy terminy używane do konfigurowania SSL VirtualHost:
- Sslengine - Ustaw to na „włączone”
- SslcertificateFile - Ustaw ścieżkę certyfikatu SSL
- SSLCertificateKeyeyFile - To są pliki prywatne używane do generowania certyfikatu SSL
Następnie włącz VirtualHost i ponownie załaduj usługę Apache za pomocą następujących poleceń:
Sudo Systemctl RELOOD APACHE2.praca
Krok 6 - Bezpieczny serwer Apache
Bezpieczeństwo jest najważniejszą częścią hostingu. Hakerzy są gotowi do wykorzystania Twojego serwera WWW. Edytuj główny plik konfiguracyjny Apache
sudo vim/etc/httpd/conf/httpd.conf
Dodaj następujące wartości na końcu pliku:
Servertokens Prod Serversignature Off Traceenable Off123 | Servertokens Prod Serversignature Off Traceenable Off |
Następnie edytuj domyślny plik konfiguracyjny SSL Apache:
sudo vim/etc/httpd/conf.D/SSL.conf
Oto wiele ustawień związanych z bezpieczeństwem. Dodaj lub zaktualizuj następujące ustawienia. Nie podchodzimy do szczegółowych opisów na ten temat, ale te ustawienia są bardzo przydatne dla serwerów produkcyjnych.
#Rules pobrane z https: // cipherli.ST/ SSLCIPHERSUITE EECDH+AESGCM: EDH+AESGCM # wymaga Apache 2.4.36 i Openssl 1.1.1 sslprotocol -all +tlsv1.3 +TLSV1.2 sslopensslconfcmd krzywe x25519: secp521r1: secp384r1: prime256v1 # Starsze wersje # sslprotocol All -sslv2 -sslv3 -tlsv1 -tlsv1.1 sslhonorcipherorder On nagłówek zawsze ustawiaj ścisłe transport-security "Max-eage = 63072000; Obejmuje brzuszny; nagłówek wstępny" zawsze ustawiaj opcję X-Frame-Options zawsze ustawiaj x-content-typ-opcję nosniff #.4 SSLCompression Off SsLusEstapling na SSLstaplingCache „SHMCB: Logs/Stapling-Cache (150000)” # wymaga apache> = 2.4.11 SSLSessionTickets Off123456789101112131415161718 | #Rules pobrane z https: // cipherli.ST/ SSLCIPHERSUITE EECDH+AESGCM: EDH+AESGCM# wymaga Apache 2.4.36 i Openssl 1.1.1SSLPROTOCOL -ALL +TLSV1.3 +TLSV1.2sslopensslConfcmd krzywe x25519: Secp521r1: Secp384r1: Prime256v1# Starsze wersje# sslprotocol All -sslv2 -sslv3 -tlsv1 -tlsv1.1sslhonorcipherorder Onheader zawsze ustawiaj ścisłe transport-security "Max-Age = 63072000; Obejmuje się nagłówek; nagłówek wstępny" zawsze ustawiaj x-frame-options denyheader zawsze ustawić x-content-opcję nosniff#.4SSLCompression OffssLusEstapling onsslStaplingCache „SHMCB: Logs/Stapling-Cache (150000)”# wymaga apache> = 2.4.11sssessionTickets Off |
Po wprowadzeniu zmian uruchom usługi Apache, aby zastosować nową konfigurację.
Sudo Systemctl RELOOD APACHE2.praca
Wniosek
Wszystko skończone, uruchamiasz zabezpieczony serwer Apache w systemie CentOS 8 lub RHEL 8 Linux.
- « Jak zainstalować Apache z PHP-FPM na Ubuntu 18.04 LTS
- Jak zabić proces działający na określonym porcie »