Membuat host virtual, menghasilkan sertifikat & kunci SSL dan mengaktifkan CGI Gateway di Gentoo Linux

Membuat host virtual, menghasilkan sertifikat & kunci SSL dan mengaktifkan CGI Gateway di Gentoo Linux

Tutorial terakhir tentang Memasang lampu di gentoo linux Baru saja membahas proses instalasi dasar tanpa pengaturan tambahan yang tersedia untuk Apache untuk mengontrol domain Anda dengan lebih baik.

Buat host virtual Apache di gentoo

Tutorial ini sangat terhubung dengan yang sebelumnya Lampu Gentoo dan membahas pengaturan tambahan untuk LAMPU lingkungan seperti menciptakan Host virtual Di Apache, hasilkan SSL File dan kunci sertifikat, aktifkan aman SSL Protokol pada transaksi HTTP dan gunakan Apache Gateway CGI Jadi Anda bisa berlari Perl atau Pesta skrip di situs web Anda.

Persyaratan

  1. Pasang lampu di Gentoo Linux

Langkah 1: Buat host virtual apache

Topik ini menggunakan nama domain palsu - Gentoo.lan - diaktifkan melalui file host lokal, dengan file situs web yang disajikan dari /var/www/gentoo.lan - Root document Petunjuk, tanpa valid DNS Rekam, untuk menunjukkan bagaimana beberapa host virtual dapat diaktifkan di Gentoo menggunakan Apache Web Server.

1. Untuk memulai, buka file host gentoo untuk diedit dan tambahkan baris baru dengan nama domain Anda.

$ sudo nano /etc /host

Di akhir file membuatnya terlihat mirip dengan ini.

127.0.0.1 localhost gentoo 192.168.1.13 Gentoo.lan
Tambahkan nama domain di file host

2. Uji domain palsu Anda dengan ping Perintah dan domain harus merespons dengan alamat IP -nya.

$ ping -c2 gentoo.lan
Verifikasi Nama Domain

3. Proses mengaktifkan host virtual Apache cukup sederhana. Cukup buka file host virtual apache default yang terletak di /etc/apache2/vhosts.D/ jalan dan sebelum terakhir pernyataan, masukkan definisi host virtual baru Anda terlampir .. arahan. C

Berisi pengaturan khusus Anda seperti Nama server Dan Root document jalur. Gunakan templat file berikut sebagai panduan untuk host virtual baru dan sertakan di 00_default_vhost.conf File (untuk situs web non-SSL).

$ sudo nano/etc/apache2/vhosts.d/00_default_vhost.conf
## statem virtual host lainnya berakhir dengan ### servername gentoo.LAN Documentroot "/var/www/gentoo.lan "   Buat Apache Virtual Host di Gentoo 

Seperti yang dapat Anda lihat dengan memvisualisasikan konten file ini, file tersebut sangat dikomentari dengan penjelasan dan juga terus localhost Definisi host virtual - yang dapat Anda gunakan sebagai panduan.

4. Setelah menyelesaikan file pengeditan dengan host virtual khusus Anda, restart Apache untuk menerapkan pengaturan dan pastikan Anda membuat Root document direktori jika Anda telah mengubah arahan ini dan jalur tidak ada secara default (dalam hal ini diubah menjadi /var/www/gentoo.lan). Saya juga membuat file php kecil untuk menguji konfigurasi server web.

$ sudo mkdir/var/www/gentoo.lan $ su "echo ''>/var/www/gentoo.LAN/INFO.php "$ sudo /etc /init.D/Apache2 restart

5. Untuk memverifikasinya, buka browser dan arahkan nama domain virtual Anda http: // gentoo.LAN/INFO.php.

Verifikasi konfigurasi PHP

Menggunakan prosedur ini, Anda dapat menambahkan sebanyak mungkin situs web non-SSL yang Anda inginkan menggunakan host virtual Apache, tetapi untuk mesin yang menghadap ke internet yang nyata memastikan bahwa domain Anda terdaftar dan Anda menggunakan catatan server DNS yang valid.

Untuk menghapus host virtual, hanya berkomentar atau menghapus arahan yang terlampir di bawah .. pada 00_default_vhost.conf mengajukan.

Langkah 2: Menghasilkan sertifikat dan kunci SSL untuk host virtual

SSL adalah protokol kriptografi yang digunakan untuk bertukar informasi melalui saluran komunikasi yang aman di internet atau di dalam jaringan menggunakan sertifikat dan kunci simetris/asimetris.

6. Untuk menyederhanakan proses pembuatan sertifikat dan kunci, gunakan skrip bash berikut yang bertindak sebagai perintah dan secara otomatis membuat semua yang Anda butuhkan dengan pengaturan nama domain SSL Anda.

Mulailah pertama dengan membuat skrip bash menggunakan perintah berikut.

$ sudo nano/usr/local/bin/apache_gen_ssl

Tambahkan konten file berikut.

#!/bin/bash mkdir/etc/apache2/ssl cd/etc/apache2/ssl echo -e "Masukkan nama untuk sertifikat ini: \ nex: mydomain.LAN "Baca sertifikat OpenSSL Genpkey -algorithm RSA -PKeyOpt RSA_KEYGEN_BITS: 2048 -OUR $ CERT.kunci chmod 600 $ sertifikat.Kunci openssl req -new -key $ sertifikat.kunci -out $ sertifikat.CSR OPENSSL X509 -REQ -DARI 365 -in $ CERT.CSR -SIGNKEY $ CERT.kunci -out $ sertifikat.crt echo -e "sertifikat $ sertifikat telah dihasilkan!\ nPlease tautkan ke situs web Apache SSL!"ls -all/etc/apache2/ssl/keluar 0
Buat skrip bash untuk menghasilkan SSL

7. Setelah file dibuat, tambahkan izin menjalankannya dan jalankan untuk menghasilkan kunci dan sertifikat SSL.

$ sudo chmod +x/usr/local/bin/apache_gen_ssl $ sudo apache_gen_ssl
Menghasilkan sertifikat dan keysa SSL

Saat Anda menjalankannya saat pertama kali, akan meminta Anda masuk domain nama. Masukkan domain Nama yang Anda buat pengaturan SSL dan isi sertifikat dengan informasi yang diperlukan, yang paling penting, Nama yang umum, Gunakan server Anda FQDN.

Lokasi default di mana semua sertifikat dan kunci Anda di -host menggunakan metode ini /etc/apache2/ssl/.

8. Sekarang saatnya untuk membuat Gentoo.lan Virtual Host SSL Equivalent. Gunakan metode yang sama seperti untuk host virtual non-SSL tetapi kali ini mengedit /etc/apache2/vhosts.d/00_default_ssl_vhosts.conf file dengan sedikit perubahan.

Pertama -tama buka file untuk mengedit dan buat perubahan berikut.

$ sudo nano/etc/apache2/vhosts.d/00_default_ssl_vhosts.conf

Di bawah Dengarkan 443 Petunjuk Tambahkan konten berikut.

Namevirtualhost *: 443
Aktifkan port https

Gunakan template berikut untuk host virtual baru dan tambahkan sertifikat SSL baru + jalur dan nama.

## statem virtual host lainnya berakhir dengan ### servername gentoo.LAN Documentroot "/var/www/gentoo.LAN "ERRORLOG/VAR/LOG/APACHE2/GENOO.lan-ssl_error_log transferlog/var/log/apache2/gentoo.lan-ssl_access_log sslengine di sslciphersuite semua:!ADH:!Ekspor56: RC4+RSA:+Tinggi:+Medium:+Rendah:+SSLV2:+Exp:+Enull ## Edit dengan sertifikat SSL yang dihasilkan baru dan kunci dan ubah jalur ke/etc/apache2/ssl/sslcertificateFile/etc/apache2/ SSL/Gentoo.lan.crt sslcertificateKeyFile/etc/apache2/ssl/gentoo.lan.Indeks Opsi Utama Mengikuti Symlinks ExecCGI Multiviews Termasuk AlloVerRide Semua Pesanan, Ditolak Izinkan dari semua SSLOPTIONS +STDENVVARS SSLOPTIONS +STDENVVARS BROWSERMATCH ".*MSIE.*"\ nokeepalive SSL-UNCLEAN-SHUTDOWN \ downgrade-1.0 force-response-1.0 CustomLog/Var/Log/APACHE2/SSL_REQUEST_LOG \ " %t %h %ssl_protocol x %ssl_cipher x \" %r \ "" %b"" ## pernyataan host virtual lain #########
Buat SSL Virtual Host

Definisi host virtual harus berakhir sebelum tiga pernyataan terakhir ini.

  
Verifikasi host virtual

9. Setelah menyelesaikan pengeditan file host virtual, restart layanan Apache dan arahkan browser Anda ke domain Anda menggunakan protokol https https: // gentoo.lan.

$ sudo /etc /init.D/Apache2 restart
Verifikasi protokol https

Menggunakan prosedur ini, Anda dapat menambahkan situs web SSL dengan sertifikat dan kunci mereka sendiri menggunakan host virtual Apache. Untuk menghapus komentar host virtual SSL atau menghapus arahan yang terlampir di bawah .. pada /etc/apache2/vhosts.d/00_default_ssl_vhosts.conf mengajukan.

Langkah 3: Aktifkan Antarmuka CGI

Itu CGI (Antarmuka gateway umum) Ini memungkinkan Apache untuk berinteraksi dengan program eksternal, primer yang terdiri dalam skrip perl atau bash, yang dapat menambahkan konten dinamis ke situs web Anda.

10. Sebelum mengaktifkan CGI Gateway, pastikan Apache disusun Gunakan CGI Dukungan Bendera Modul di Portage membuat.conf mengajukan: CGI CGID. Untuk mengaktifkan dukungan GCI untuk Apache Open /etc/conf.d/apache2 File dan Tambahkan Modul CGI di Apache2_opts garis.

$ sudo nano /etc /conf.d/apache2

Memastikan bahwa baris ini memiliki konten yang sama.

Apache2_opts = "" -d default_vhost -d info -d ssl -d ssl_default_vhost -d bahasa -d status -d cgi""
Aktifkan CGI untuk Apache

11. Setelah modul CGI diaktifkan, buka host definisi situs web Anda, Anda ingin mengaktifkan antarmuka CGI dan menambahkan konten berikut di dalam arahan host virtual.

 Indeks Opsi +EXECCGI Multiviews AddHandler CGI-Script .CGI .Indeks Direktori PL.Indeks CGI.Indeks PHP.Indeks HTML.PL Allowoverride semua urutan, tolak izinkan dari semua 
Aktifkan CGI di host virtual

12. Jika Anda memiliki direktori di dalam dokumen Anda (/var/www/gentoo.LAN/) Jalur yang memegang skrip CGI Anda dapat mengaktifkan direktori itu untuk melayani skrip Perl atau Bash dinamis.

Scriptalias/cgi-bin//var/www/gentoo.LAN/ CGI-BIN/ OPTION +EXECCGI ADDHANDLER CGI-SCRIPS .CGI .Indeks Direktori PL.Indeks CGI.Indeks PHP.Indeks HTML.pl 

13. Untuk SSI (sisi server termasuk) tambahkan +Termasuk pernyataan tentang Pilihan dan tambahkan .shtml ekstensi file.

 Indeks Opsi +EXECCGI +Termasuk skrip CGI AddHandler .CGI .PL ADDTYPE TEXT/HTML .SHTML AddoutputFilter termasuk .Indeks Direktori SHTML.Indeks SHTML.Indeks CGI.indeks PL.Indeks PHP.HTML Alloverride semua urutan, tolak izinkan dari semua 

14. Untuk menguji beberapa sederhana .CGI Dan .pl Skrip di Apache CGI Gateway Buat skrip berikut di dalam Anda Virtual Host DocumentRoot (/var/www/gentoo.LAN/).

Skrip perl
$ sudo nano/var/www/gentoo.lan/env.pl

Tambahkan konten perl berikut.

#!/usr/bin/perl cetak ""tipe konten: teks/html \ n \ n""