Cara memasang dan menjamin Apache di Ubuntu 20.04

Cara memasang dan menjamin Apache di Ubuntu 20.04

Tutorial ini akan membantu anda memasang pelayan web Apache di Ubuntu 20.04 LTS (Focal Fossa) Sistem Operasi. Anda juga akan belajar bagaimana untuk mengamankan domain anda menggunakan sijil SSL Let's Encrypt. Tutorial ini juga akan berfungsi pada Ubuntu 18.04, Ubuntu 16.04 dan Ubuntu 19.10 Sistem Linux.

Sebelum kita mula

Sebelum memulakan kerja anda:

  • Menjalankan Ubuntu 20.04 Sistem Dengan Keistimewaan Sudo Akses Shell.
  • Lengkapkan arahan persediaan pelayan awal
  • Nama domain yang didaftarkan dan menunjuk ke alamat IP awam pelayan anda. Untuk tutorial ini, kami menggunakan webhost.Tecadmin.bersih, yang ditunjuk ke pelayan kami.

Langkah 1 - Memasang Apache

Pakej Apache boleh didapati di bawah repositori perisian lalai di Ubunts. Anda boleh memasangnya dengan mudah menggunakan alat pengurusan pakej konvensional.

Pertama sekali, kemas kini indeks pakej tempatan untuk mencerminkan perubahan hulu terkini. Kemudian pasang pelayan web apache2.

sudo apt kemas kini sudo apt memasang apache2 

Selepas pengesahan, APT akan memasang Apache dan kebergantungan yang diperlukan pada sistem anda.

Langkah 2 - Uji pelayan web anda

Setelah pemasangan selesai, perkhidmatan Apache akan bermula secara automatik pada sistem Ubuntu anda. Anda boleh mencari status perkhidmatan Apache dengan menjalankan arahan berikut:

status sistem sudo apache2 

Output Contoh:

● Apache2.Perkhidmatan - pelayan http Apache dimuat: dimuatkan (/lib/systemd/system/apache2.perkhidmatan; didayakan; Pratetap Vendor: Diaktifkan) Aktif: Aktif (Berjalan) Sejak Sun 2020-04-26 05:28:08 UTC; 10min lalu Dokumen: https: // httpd.Apache.org/docs/2.4/ PID Utama: 15464 (Apache2) Tugas: 55 (Had: 2283) Memori: 6.9m cgroup: /sistem.Slice/Apache2.Perkhidmatan ├─15464/usr/sbin/apache2 -K Mula ├─18646/usr/sbin/apache2 -k start └─18647/usr/sbin/apache2 -k Mula 26 Apr 05:28:08 Tecadmin Systemd [1]: Memulakan pelayan HTTP Apache ... 26 Apr 05:28:08 Tecadmin Systemd [1]: Memulakan pelayan HTTP Apache. 

Status hasil seperti "Aktif: aktif (berjalan)" Bermakna perkhidmatan Apache telah bermula dengan jayanya. Walau bagaimanapun, cara terbaik untuk menguji pelayan web, minta halaman dari Apache dalam penyemak imbas web.

Anda akan melihat halaman pendaratan Apache lalai. Ini bermaksud pelayan web Apache berjalan dengan betul pada sistem anda.

Langkah 3 - Buat tuan rumah maya

Dengan bantuan tuan rumah maya, anda boleh menjadi tuan rumah lebih daripada satu domain dari satu pelayan. Tuan rumah maya merangkum konfigurasi domain kepadanya. Kami akan menyediakan tuan rumah maya dengan sub-domain yang dipanggil webhost.Tecamin.bersih, tetapi anda harus menggantikannya dengan nama domain anda sendiri.

Mari kita mulakan dengan direktori untuk domain kita seperti berikut:

sudo mkdir/var/www/webhost sudo chmod -r 755/var/www/webhost sudo chown -r www -data: www -data/var/www/webhost 

Seterusnya, buat indeks contoh.Halaman HTML untuk menjadi tuan rumah di subdomain ini. Edit fail ini dalam editor teks kegemaran anda seperti Vim atau Nano:

nano/var/www/webroot/indeks.html 

Tambahkan kandungan HTML sampel berikut:

Selamat datang ke Tecadmin.jaring!

Kejayaan!!!

12345678 Selamat datang ke Tecadmin.jaring!

Kejayaan!!!

Simpan fail dan tutupnya.

Dengan pelayan Apache yang baru dipasang, anda akan melihat fail konfigurasi host maya lalai yang terletak di ETC/APACHE2/Sites-tersedia/000-O-lalai.Conf. Tetapi ini adalah haba yang baik untuk membuat fail konfigurasi yang berasingan untuk setiap tuan rumah maya. Oleh itu, buat fail hos maya yang baru sebagai/etc/apache2/laman web/webhost.Tecadmin.jaring.Conf:

sudo nano/etc/apache2/laman web yang tersedia/web.Tecadmin.jaring.Conf 

Tambahkan konfigurasi berikut ke fail hos maya. Pastikan untuk menukar alamat e -mel ServerAdmin yang betul, ServerName ke nama domain anda. Anda juga boleh memasukkan Serveralias untuk menambah lebih banyak domain atau subdomain. Kemudian tetapkan dokumen yang betul seperti yang dibuat di atas.

Webmaster [email protected] ServerName Webhost.Tecadmin.Net #serveralias www.Webhost.Tecadmin.Net ## Uncomment It untuk menggunakan Documentroot/Var/www/WebHost AllowOverRide All ERRORLOG $ APACHE_LOG_DIR/ERROR.log customlog $ APACHE_LOG_DIR/akses.log digabungkan
1234567891011 Webmaster [email protected] ServerName Webhost.Tecadmin.Net #serveralias www.Webhost.Tecadmin.Net ## Uncomment untuk menggunakan Documentroot/Var/www/Webhost Allowoverride semua Errorlog $ APACHE_LOG_DIR/ralat.log customlog $ APACHE_LOG_DIR/akses.log digabungkan

Simpan fail dan tutupnya.

Secara lalai Apache membaca fail konfigurasi hos maya di bawah/etc/apache2/direktori yang tersedia tapak. Gunakan alat A2ensite untuk membolehkan tuan rumah maya ini:

Sudo A2ensite Webhost.Tecadmin.jaring.Conf 

Perintah di atas akan mencipta webhost pautan simbolik.Tecadmin.jaring.fail conf ke direktori yang tersedia di laman web.

Setelah selesai, jalankan arahan di bawah untuk mengesahkan fail konfigurasi:

SUDO APACHE2CTL CONFIGTEST 

Anda harus melihat output berikut:

Sintaks OK 

Seterusnya, mulakan semula perkhidmatan Apache untuk menerapkan perubahan anda:

SURDO SYSTEMCTL Mulakan semula Apache2 

Apache sudah bersedia untuk melayani kandungan anda pada nama domain anda yang dikonfigurasikan. Anda boleh menguji ini dengan menavigasi ke http: // webhost.Tecadmin.jaring,

Langkah 4 - Konfigurasikan mari enkripsi SSL

Kami menggunakan Let's Encrypt Sijil SSL untuk mendapatkan laman web di Apache Web Server. Certbot adalah utiliti baris arahan untuk bekerja dengan sijil Let's Encrypt. Jalankan arahan berikut untuk memasang binari certbot:

sudo apt memasang python3-sertbot-apache 

Ini akan memasang semua pakej yang diperlukan untuk CertBot.

Setelah proses pemasangan selesai. Jalankan arahan di bawah untuk meminta Let's menyulitkan kuasa sijil untuk mengeluarkan sijil untuk webhost domain kami.Tecadmin.jaring. Anda boleh menambah pelbagai domain atau subdomain menggunakan parameter "-d" berasingan.

Certbot -d Webhost.Tecadmin.jaring 

Wizard akan meminta alamat e -mel anda untuk menghantar kemas kini anda. Kemudian terima terma perkhidmatan untuk diteruskan. Berikut adalah log lengkap arahan:

Menyimpan log debug ke/var/log/letsencrypt/letsencrypt.Plugin Log Dipilih: Pengesahan Apache, Pemasang Apache Masukkan Alamat E -mel (Digunakan untuk Pembaharuan dan Notis Keselamatan Segera) (Masukkan 'C' untuk membatalkan): [dilindungi e -mel] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Sila baca Syarat Perkhidmatan di https: // letsencrypt.org/dokumen/le-sa-v1.2-November-15-2017.pdf. Anda mesti bersetuju untuk mendaftar dengan pelayan ACME di https: // acme-v02.API.Letsencrypt.org/direktori - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (a) Gree/(C ) Ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Adakah anda bersedia untuk berkongsi alamat e-mel anda dengan Yayasan Frontier Elektronik, rakan kongsi pengasas projek Let's Encrypt dan organisasi bukan keuntungan yang membangunkan CertBot? Kami ingin menghantar e -mel mengenai kerja kami menyulitkan web, berita eff, kempen, dan cara untuk menyokong kebebasan digital. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Ya tidak: Y Mendapatkan sijil baru yang melaksanakan cabaran berikut: Cabaran HTTP-01 untuk Webhost.Tecadmin.Modul Penulisan Apache Bersih Bersih Menunggu Pengesahan ... Membersihkan Cabaran Mencipta SSL VHOST AT/ETC/APACHE2/SITES-ABPABLE/Webhost.Tecadmin.net-le-ssl.Conf Enabled Apache SOCACHE_SHMCB Modul Diaktifkan Modul SSL Apache SSL Menggunakan Sijil ke VirtualHost/ETC/APACHE2/Sites-Awailable/Webhost.Tecadmin.net-le-ssl.Confling Laman yang tersedia:/etc/apache2/laman web yang tersedia/webhost.Tecadmin.net-le-ssl.CONF Sila pilih sama ada atau tidak untuk mengalihkan trafik HTTP ke HTTPS, mengeluarkan akses HTTP. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: Tiada Redirect - Jangan membuat perubahan selanjutnya pada konfigurasi webserver. 2: Redirect - Buat semua permintaan Redirect untuk mengamankan akses HTTPS. Pilih ini untuk laman web baru, atau jika anda yakin laman web anda berfungsi di HTTPS. Anda boleh membatalkan perubahan ini dengan mengedit konfigurasi pelayan web anda. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Pilih nombor yang sesuai [1-2] kemudian [enter] (tekan 'c' untuk membatalkan): 2 Diaktifkan Apache Rewrite Modul Mengalihkan VHost Dalam/ETC/APACHE2/SITES-MELAKUKAN/Webhost.Tecadmin.jaring.conf ke ssl vhost in/etc/ap ache2/sites-tersedia/webhost.Tecadmin.net-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Tahniah! Anda telah berjaya mengaktifkan https: // webhost.Tecadmin.bersih Anda harus menguji konfigurasi anda di: https: // www.ssllabs.com/ssltest/analisis.html?D = Webhost.Tecadmin.Net - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -! Sijil dan rantaian anda telah disimpan di:/etc/letsencrypt/live/webhost.Tecadmin.bersih/penuh.PEM Fail utama anda telah disimpan di:/etc/letsencrypt/live/webhost.Tecadmin.bersih/privkey.PEM CERT anda akan tamat pada 2020-07-25. Untuk mendapatkan versi baru atau tweak dari sijil ini pada masa akan datang, hanya jalankan Certbot lagi dengan pilihan "Certonly". Untuk memperbaharui * semua * sijil anda, jalankan "Certbot Renew" - kelayakan akaun anda telah disimpan dalam direktori konfigurasi certbot anda di /etc /letsencrypt. Anda harus membuat sandaran selamat folder ini sekarang. Direktori konfigurasi ini juga akan mengandungi sijil dan kekunci peribadi yang diperolehi oleh Certbot sehingga membuat sandaran tetap folder ini sesuai. - Jika anda suka Certbot, sila pertimbangkan untuk menyokong kerja kami dengan: menderma kepada ISRG/Let's Encrypt: https: // Letsencrypt.org/menderma menderma kepada eff: https: // eff.org/menderma-le 

Anda telah berjaya mengkonfigurasi domain anda dengan sijil SSL. Sekarang, anda boleh mengakses domain anda melalui protokol HTTPS seperti yang ditunjukkan dalam tangkapan skrin di bawah:

Langkah 5 - Laraskan peraturan firewall

Anda boleh menggunakan nama perkhidmatan seperti "http" atau "https" untuk membenarkan di firewalld. Untuk membuka port HTTP dan HTTPS di Firewalld menjalankan arahan di bawah:

sudo firewall-cmd --permanent --add-service = http sudo firewall-cmd --permanent --add-service = https 

Sebaik sahaja anda menambahkan peraturan, tambah semula perubahan menggunakan arahan berikut.

Sudo Firewall-CMD-Reload 

Langkah 6 - Urus Perkhidmatan Apache

Sekarang, anda mempunyai pelayan web Apache anda, mari kita pergi dengan arahan pengurusan perkhidmatan Apache.

Untuk menghentikan pelayan web Apache, taipkan:

SUDO Systemctl Stop Apache2 

Untuk memulakan pelayan web Apache (jika dihentikan), taipkan:

SUDO Systemctl Mula Apache2 

Untuk memulakan semula (berhenti dan kemudian mulakan) perkhidmatan Apache, taipkan:

SURDO SYSTEMCTL Mulakan semula Apache2 

Daripada berhenti kemudian mulakan pelayan berjalan, gunakan pilihan tambah nilai untuk menggunakan perubahan fail konfigurasi tanpa menjatuhkan sambungan semasa. Tetapi ini tidak akan membaca sebarang fail konfigurasi baru:

SUDO Systemctl Reload Apache2 

Untuk melumpuhkan perkhidmatan Apache ke Auto START ON SYSTEM BOOT, Taipkan:

sudo systemctl melumpuhkan apache2 

Untuk membolehkan perkhidmatan Apache untuk memulakan automatik pada boot sistem, taipkan:

sudo systemctl membolehkan apache2 

Kesimpulan

Pelayan Web Apache sedang berjalan di Ubuntu 20 anda.04 sistem operasi LTS.