One place for hosting & domains

      dengan

      Cara Menginstal Java dengan Apt pada Ubuntu 20.04


      [*]

      Pengantar

      Java dan JVM (mesin virtual Java) diperlukan untuk berbagai jenis perangkat lunak, termasuk Tomcat, Jetty, Glassfish, Cassandra, dan Jenkins.

      Dalam panduan ini, Anda akan menginstal berbagai versi Java Runtime Environment (JRE) dan Java Developer Kit (JDK) dengan menggunakan apt. Anda akan menginstal OpenJDK serta JDK resmi dari Oracle. Kemudian, Anda akan memilih versi yang ingin digunakan untuk proyek Anda. Saat Anda selesai, Anda akan dapat menggunakan JDK untuk mengembangkan perangkat lunak atau menggunakan Java Runtime untuk menjalankan perangkat lunak.

      Prasyarat

      Untuk mengikuti tutorial ini, Anda akan membutuhkan:

      Menginstal JRE/JDK Asali

      Pilihan termudah untuk menginstal Java adalah dengan menggunakan versi yang dikemas beserta Ubuntu. Secara asali, Ubuntu 20.04 meliputi Open JDK 11, yang merupakan varian sumber terbuka dari JRE dan JDK.

      Untuk menginstal versi ini, perbarui indeks paket terlebih dahulu:

      Selanjutnya, periksa apakah Java sudah terinstal:

      Jika Java belum terinstal, Anda akan melihat keluaran berikut ini:

      Output

      Command 'java' not found, but can be installed with: sudo apt install default-jre # version 2:1.11-72, or sudo apt install openjdk-11-jre-headless # version 11.0.7+10-3ubuntu1 sudo apt install openjdk-13-jre-headless # version 13.0.3+3-1ubuntu2 sudo apt install openjdk-14-jre-headless # version 14.0.1+7-1ubuntu1 sudo apt install openjdk-8-jre-headless # version 8u252-b09-1ubuntu1

      Jalankan perintah berikut untuk menginstal Java Runtime Environment (JRE) asali yang akan menginstal JRE dari OpenJDK 11:

      • sudo apt install default-jre

      JRE akan membuat Anda dapat menjalankan hampir semua perangkat lunak Java.

      Lakukan verifikasi instalasi dengan:

      Anda akan melihat keluaran berikut:

      Output

      openjdk version "11.0.7" 2020-04-14 OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1) OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

      Selain JRE, Anda mungkin membutuhkan Java Development Kit (JDK) sebagai tambahan untuk mengompilasi dan menjalankan beberapa perangkat lunak berbasis Java yang spesifik. Untuk menginstal JDK, jalankan perintah berikut, yang juga akan menginstal JRE:

      • sudo apt install default-jdk

      Lakukan verifikasi bahwa JDK sudah terinstal dengan memeriksa versi javac, pengompilasi Java:

      Anda akan melihat keluaran berikut:

      Output

      javac 11.0.7

      Selanjutnya, mari kita lihat cara menginstal JDK dan JRE resmi dari Oracle.

      Menginstal Oracle JDK 11

      Perjanjian lisensi Oracle untuk Java tidak mengizinkan instalasi otomatis melalui manajer paket. Untuk menginstal Oracle JDK, yang merupakan versi resmi yang didistribusikan oleh Oracle, Anda harus membuat akun Oracle dan mengunduh JDK secara manual untuk menambahkan repositori paket baru pada versi yang Anda ingin gunakan. Kemudian, Anda dapat menggunakan apt untuk menginstalnya dengan bantuan dari skrip instalasi pihak ketiga.

      Versi JDK Oracle yang Anda perlu unduh harus sesuai dengan versi skrip penginstal. Untuk mengetahui versi mana yang Anda butuhkan, kunjungi laman oracle-java11-installer.

      Cari paket untuk Focal, seperti yang ditunjukkan dalam gambar berikut:

      Paket penginstal untuk Ubuntu 2.04

      Pada gambar ini, versi skripnya adalah 11.0.7. Dalam kasus ini, Anda akan membutuhkan Oracle JDK 11.0.7. Anda tidak perlu mengunduh apa pun dari laman ini, karena Anda akan segera mengunduh skrip instalasi melalui apt.

      Kemudian, kunjungi laman Unduhan dan cari versi yang cocok dengan versi yang Anda butuhkan.

      Oracle Java 11

      Klik tombol JDK Download dan Anda akan dibawa ke layar yang menunjukkan versi-versi yang tersedia. Klik paket .tar.gz untuk Linux.

      Unduhan Linux

      Anda akan ditunjukkan suatu layar yang meminta Anda untuk menerima perjanjian lisensi Oracle. Pilih kotak centang untuk menerima perjanjian lisensi dan tekan tombol Download. Unduhan Anda akan dimulai. Anda mungkin perlu log masuk ke akun Oracle Anda sekali lagi sebelum unduhan dimulai.

      Setelah berkas diunduh, Anda perlu mentransfernya ke server Anda. Pada mesin lokal Anda, unggah berkas tersebut ke server Anda. Pada macOS, Linux, atau Windows yang menggunakan Windows Subsystem untuk Linux, gunakan perintah scp untuk mentransfer berkas ke direktori rumah dari pengguna sammy Anda. Perintah berikut mengasumsikan Anda telah menyimpan berkas Oracle JDK ke folder Downloads di mesin lokal Anda:

      • scp Downloads/jdk-11.0.7_linux-x64_bin.tar.gz sammy@your_server_ip:~

      Saat unggahan berkas selesai, kembali ke server Anda dan tambahkan repositori pihak ketiga yang akan membantu Anda menginstal Java dari Oracle.

      Instal paket software-properties-common, yang menambahkan perintah add-apt-repository ke sistem Anda:

      • sudo apt install software-properties-common

      Selanjutnya, impor kunci penandatanganan untuk melakukan verifikasi perangkat lunak yang akan Anda instal:

      • sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EA8CACC073C3DB2A

      Anda akan melihat keluaran ini:

      Output

      gpg: key EA8CACC073C3DB2A: public key "Launchpad PPA for Linux Uprising" imported gpg: Total number processed: 1 gpg: imported: 1

      Kemudian, gunakan perintah add-apt-repository untuk menambahkan repositori ke daftar sumber paket Anda:

      • sudo add-apt-repository ppa:linuxuprising/java

      Anda akan melihat pesan ini:

      Output

      Oracle Java 11 (LTS) and 12 installer for Ubuntu, Linux Mint and Debian. Java binaries are not hosted in this PPA due to licensing. The packages in this PPA download and install Oracle Java 11, so a working Internet connection is required. The packages in this PPA are based on the WebUpd8 Oracle Java PPA packages: https://launchpad.net/~webupd8team/+archive/ubuntu/java Created for users of https://www.linuxuprising.com/ Installation instructions (with some tips), feedback, suggestions, bug reports etc.: . . . Press [ENTER] to continue or ctrl-c to cancel adding it

      Tekan ENTER untuk melanjutkan instalasi. Anda mungkin melihat suatu pesan tentang no valid OpenPGP data found, tetapi Anda dapat mengabaikan ini dengan aman.

      Perbarui daftar paket Anda supaya perangkat lunak baru tersedia untuk instalasi:

      Penginstal akan mencari Oracle JDK yang sudah Anda unduh di /var/cache/oracle-jdk11-installer-local. Buat direktori ini dan pindahkan arsip Oracle JDK ke sana:

      • sudo mkdir -p /var/cache/oracle-jdk11-installer-local/
      • sudo cp jdk-11.0.7_linux-x64_bin.tar.gz /var/cache/oracle-jdk11-installer-local/

      Terakhir, instal paket:

      • sudo apt install oracle-java11-installer-local

      Penginstal akan meminta Anda untuk menerima perjanjian lisensi Oracle terlebih dahulu. Terima perjanjian, kemudian penginstal akan mengekstrak paket Java dan menginstalnya.

      Sekarang, mari kita lihat cara memilih versi Java yang Anda ingin gunakan.

      Mengelola Java

      Anda dapat memiliki beberapa instalasi Java pada satu server. Anda dapat mengonfigurasi versi mana yang menjadi versi asali untuk digunakan pada baris perintah dengan menggunakan perintah update-alternatives.

      • sudo update-alternatives --config java

      Seperti inilah keluaran yang akan terlihat jika Anda telah menginstal kedua versi Java dalam tutorial ini:

      Output

      There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode * 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode Press <enter> to keep the current choice[*], or type selection number:

      Pilih angka yang terasosiasi dengan versi Java untuk menggunakannya sebagai versi asali, atau tekan ENTER untuk keluar dari pengaturan saat ini.

      Anda dapat melakukan ini untuk perintah Java lainnya, seperti pengompilasi (javac):

      • sudo update-alternatives --config javac

      Perintah lain seperti ini yang dapat dijalankan meliputi, tetapi tidak terbatas pada: keytool, javadoc, dan jarsigner.

      Mengatur Variabel Lingkungan JAVA_HOME

      Banyak program yang ditulis dengan Java menggunakan variabel lingkungan JAVA_HOME untuk menentukan lokasi instalasi Java.

      Untuk mengatur variabel lingkungan ini, pertama-tama tentukan lokasi instalasi Java. Gunakan perintah update-alternatives:

      • sudo update-alternatives --config java

      Perintah ini menunjukkan setiap instalasi Java serta jalur instalasinya:

      Output

      There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode * 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode Press <enter> to keep the current choice[*], or type selection number:

      Dalam hal ini, jalur instalasinya sebagai berikut:

      1. OpenJDK 11 terletak di /usr/lib/jvm/java-11-openjdk-amd64/bin/java.
      2. Oracle Java terletak di /usr/lib/jvm/java-11-oracle/jre/bin/java.

      Salin jalur dari instalasi pilihan Anda. Kemudian, buka /etc/environment menggunakan nano atau editor teks favorit Anda:

      • sudo nano /etc/environment

      Di akhir berkas ini, tambahkan baris berikut ini, pastikan untuk mengganti jalur yang disoroti dengan jalur yang telah Anda salin, tetapi jangan menyertakan bagian bin/ dari jalur itu:

      /etc/environment

      JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
      

      Memodifikasi berkas ini akan menentukan jalur JAVA_HOME untuk semua pengguna di sistem Anda.

      Simpan berkas dan keluar dari editor.

      Sekarang, muat ulang berkas ini untuk menerapkan perubahan pada sesi ini:

      Lakukan verifikasi bahwa variabel lingkungan sudah diatur:

      Anda akan melihat jalur yang baru saja Anda atur:

      Output

      /usr/lib/jvm/java-11-openjdk-amd64

      Pengguna lain akan perlu menjalankan perintah source /etc/environment atau log keluar dan log masuk kembali untuk menerapkan pengaturan ini.

      Kesimpulan

      Dalam tutorial ini, Anda telah menginstal beberapa versi Java dan mempelajari cara mengelolanya. Sekarang, Anda dapat menginstal perangkat lunak yang berjalan pada Java, seperti Tomcat, Jetty, Glassfish, Cassandra, atau Jenkins.

      [*]
      [*]Source link

      Cara Mengamankan Nginx dengan Let’s Encrypt pada Ubuntu 20.04


      Pengantar

      Let’s Encrypt adalah Otoritas Sertifikat (CA) yang menyediakan cara mudah untuk memperoleh dan menginstal sertifikat TLS/SSL gratis, yang dengan demikian mengaktifkan HTTPS terenkripsi pada server web. Ini menyederhanakan proses dengan menyediakan klien perangkat lunak, Certbot, yang berusaha mengotomatiskan sebagian besar (jika bukan semua) langkah yang diperlukan. Saat ini, seluruh proses memperoleh dan menginstal sertifikat secara sepenuhnya berjalan otomatis baik pada Apache dan Nginx.

      Dalam tutorial ini, Anda akan menggunakan Certbot untuk memperoleh sertifikat SSL gratis untuk Nginx pada Ubuntu 20.04 dan menyiapkan sertifikat Anda untuk diperbarui secara otomatis.

      Tutorial ini akan menggunakan berkas konfigurasi server Nginx terpisah, alih-alih berkas asali. Kami menyarankan menciptakan berkas blok server Nginx baru untuk setiap domain karena hal ini membantu menghindari kesalahan umum dan mempertahankan berkas asali sebagai konfigurasi fallback.

      Prasyarat

      Untuk mengikuti tutorial ini, Anda akan membutuhkan:

      • Satu server Ubuntu 20.04 yang disiapkan dengan mengikuti tutorial penyiapan server awal untuk Ubuntu 20.04 ini, termasuk satu pengguna non-root yang mendukung sudo dan satu firewall.

      • Nama domain yang terdaftar. Tutorial ini akan menggunakan example.com di seluruh bagiannya. Anda dapat membeli nama domain dari Namecheap, mendapatkan nama domain gratis dengan Freenom, atau menggunakan registrar domain pilihan Anda.

      • Kedua catatan DNS berikut disiapkan untuk server Anda. Jika Anda menggunakan DigitalOcean, silakan lihat dokumentasi DNS kami untuk detail tentang cara menambahkannya.

        • Catatan A dengan example.com yang menunjuk ke alamat IP publik server Anda.
        • Catatan A dengan www.example.com yang menunjuk ke alamat IP publik server Anda.
      • Nginx yang terinstal dengan mengikuti Cara Menginstal Nginx pada Ubuntu 20.04. Pastikan Anda memiliki blok server untuk domain Anda. Tutorial ini akan menggunakan /etc/nginx/sites-available/example.com sebagai contoh.

      Langkah 1 — Menginstal Certbot

      Langkah pertama untuk menggunakan Let’s Encrypt untuk memperoleh sertifikat SSL adalah dengan menginstal perangkat lunak Certbot pada server Anda.

      Instal Certbot dan plugin Nginx dengan apt:

      • sudo apt install certbot python3-certbot-nginx

      Certbot kini siap digunakan, namun agar Certbot dapat mengonfigurasi SSL secara otomatis untuk Nginx, kita perlu memverifikasi beberapa konfigurasi Nginx.

      Langkah 2 — Mengonfirmasi Konfigurasi Nginx

      Certbot harus mampu menemukan blok server yang benar pada konfigurasi Nginx Anda agar dapat mengonfigurasi SSL secara otomatis. Secara khusus, Certbot melakukan ini dengan mencari arahan server_name yang sesuai dengan domain yang sertifikatnya Anda mintakan.

      Jika Anda mengikuti langkah penyiapan blok server dalam tutorial instalasi Nginx, Anda seharusnya memiliki blok server untuk domain Anda di /etc/nginx/sites-available/example.com dengan arahan server_name yang sudah disiapkan dengan benar.

      Untuk memeriksa, buka berkas konfigurasi untuk domain Anda dengan menggunakan nano atau editor teks favorit Anda:

      • sudo nano /etc/nginx/sites-available/example.com

      Cari baris server_name yang sudah ada. Baris itu akan terlihat seperti ini:

      /etc/nginx/sites-available/example.com

      ...
      server_name example.com www.example.com;
      ...
      

      Jika terlihat seperti itu, keluar dari editor Anda dan lanjutkan ke langkah selanjutnya.

      Jika tidak, perbarui supaya sesuai. Lalu simpan berkas itu, keluar dari editor Anda, dan lakukan verifikasi sintaks dari editan konfigurasi Anda:

      Jika Anda mendapat pesan kesalahan, buka kembali berkas blok server dan periksa adanya salah tik atau karakter yang hilang. Setelah sintaks berkas konfigurasi Anda benar, muat ulang Nginx untuk memuat konfigurasi baru:

      • sudo systemctl reload nginx

      Certbot sekarang dapat menemukan blok server yang benar dan memperbaruinya secara otomatis.

      Selanjutnya, mari kita perbarui firewall untuk mengizinkan lalu lintas HTTPS.

      Langkah 3 — Mengizinkan HTTPS Melewati Firewall

      Jika firewall ufw Anda sudah diaktifkan, seperti yang disarankan oleh panduan prasyarat, Anda perlu menyesuaikan pengaturan untuk mengizinkan lalu lintas HTTPS. Untungnya, Nginx mendaftarkan beberapa profil dengan ufw pada saat instalasi.

      Anda dapat melihat pengaturan saat ini dengan mengetik:

      Mungkin akan terlihat seperti ini, artinya bahwa hanya lalu lintas HTTP yang diizinkan ke server web:

      Output

      Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere Nginx HTTP ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) Nginx HTTP (v6) ALLOW Anywhere (v6)

      Untuk menambahkan lalu lintas HTTPS yang masuk, mengizinkan profil Nginx Full, dan menghapus izin profil HTTP Nginx yang lewah:

      • sudo ufw allow 'Nginx Full'
      • sudo ufw delete allow 'Nginx HTTP'

      Status Anda sekarang akan terlihat seperti ini:

      Output

      Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere Nginx Full ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) Nginx Full (v6) ALLOW Anywhere (v6)

      Selanjutnya, mari kita jalankan Certbot dan ambil sertifikat kita.

      Langkah 4 — Memperoleh Sertifikat SSL

      Certbot menyediakan berbagai cara untuk memperoleh sertifikat SSL melalui plugin. Plugin Nginx akan menangani konfigurasi ulang Nginx dan memuat ulang konfigurasi itu ketika diperlukan. Untuk menggunakan plugin ini, ketik yang berikut ini:

      • sudo certbot --nginx -d example.com -d www.example.com

      Ini menjalankan certbot dengan plugin --nginx, menggunakan -d untuk menentukan nama domain yang kita ingin sertifikatnya valid digunakan.

      Jika ini adalah pertama kalinya Anda menjalankan certbot, Anda akan diminta memasukkan alamat email dan menyetujui persyaratan layanan. Setelah melakukan itu, certbot akan berkomunikasi dengan server Let’s Encrypt, lalu menjalankan tantangan untuk memverifikasi bahwa Anda mengontrol domain yang Anda mintakan sertifikatnya.

      Jika itu berhasil, certbot akan bertanya bagaimana Anda ingin mengonfigurasi pengaturan HTTPS Anda.

      Output

      Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel):

      Tentukan pilihan Anda lalu tekan ENTER. Konfigurasi akan diperbarui, dan Nginx akan memuat ulang untuk menerapkan pengaturan baru. certbot akan merangkum dengan pesan yang memberi tahu Anda bahwa proses berhasil dan di mana tempat sertifikat Anda disimpan:

      Output

      IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/example.com/privkey.pem Your cert will expire on 2020-08-18. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le

      Sertifikat Anda sudah diunduh, terinstal, dan dimuat. Coba muat ulang situs Anda dengan menggunakan https:// dan perhatikan indikator keamanan di peramban Anda. Seharusnya ada indikasi bahwa situs itu sudah diamankan dengan benar, biasanya dengan ikon kunci. Jika Anda menguji server Anda menggunakan SSL Labs Server Test, server akan mendapat nilai A.

      Mari kita selesaikan dengan menguji proses pembaruan ini.

      Langkah 5 — Memverifikasi Pembaruan Otomatis Certbot

      Sertifikat Let’s Encrypt hanya berlaku selama 90 hari. Ini dimaksudkan untuk mendorong pengguna untuk mengotomatiskan proses pembaruan sertifikat mereka. Paket certbot yang kita instal akan mengurus ini untuk kita dengan menambahkan pengatur waktu systemd yang akan berjalan dua kali sehari dan secara otomatis memperbarui sertifikat apa pun yang akan kedaluarsa dalam waktu 30 hari.

      Anda dapat menanyakan status pengatur waktu dengan systemctl:

      • sudo systemctl status certbot.timer

      Output

      ● certbot.timer - Run certbot twice daily Loaded: loaded (/lib/systemd/system/certbot.timer; enabled; vendor preset: enabled) Active: active (waiting) since Mon 2020-05-04 20:04:36 UTC; 2 weeks 1 days ago Trigger: Thu 2020-05-21 05:22:32 UTC; 9h left Triggers: ● certbot.service

      Untuk menguji proses pembaruan, Anda dapat melakukan uji coba dengan certbot:

      • sudo certbot renew --dry-run

      Jika Anda tidak melihat kesalahan, Anda sudah siap. Ketika diperlukan, Certbot akan memperbarui sertifikat Anda dan memuat ulang Nginx untuk menerapkan perubahan itu. Jika proses pembaruan otomatis itu terus-menerus gagal, Let’s Encrypt akan mengirim pesan ke surel yang Anda tentukan, memperingatkan Anda saat sertifikat Anda akan berakhir.

      Kesimpulan

      Dalam tutorial ini, Anda telah menginstal certbot klien Let’s Encrypt, mengunduh sertifikat SSL untuk domain Anda, mengonfigurasi Nginx untuk menggunakan sertifikat ini, dan menyiapkan pembaruan sertifikat otomatis. Jika Anda memiliki pertanyaan lebih lanjut tentang cara menggunakan Certbot, dokumentasi resmi ini adalah tempat yang baik untuk memulai.



      Source link

      Penyiapan Server Awal dengan Ubuntu 20.04


      Pengantar

      Ketika Anda menciptakan server Ubuntu 20.04 yang baru untuk pertama kali, Anda harus melakukan beberapa langkah konfigurasi penting sebagai bagian dari persiapan dasar. Langkah-langkah ini akan meningkatkan keamanan dan penggunaan server Anda, serta memberikan Anda suatu fondasi yang kuat untuk berbagai tindakan berikutnya.

      Langkah 1 — Log masuk sebagai root

      Untuk log masuk ke server Anda, Anda perlu mengetahui alamat IP publik server Anda. Anda juga membutuhkan kata sandi atau — jika Anda menginstal kunci SSH untuk autentikasi — kunci privat untuk akun pengguna root. Jika Anda belum log masuk ke server, Anda mungkin ingin mengikuti panduan kami tentang cara terhubung ke Droplet dengan SSH, yang membahas proses ini secara mendetail.

      Jika Anda belum terhubung ke server Anda, log masuk sekarang sebagai pengguna root dengan menggunakan perintah berikut (ganti bagian perintah yang disorot dengan alamat IP publik server Anda):

      Terima peringatan tentang autentikasi hos jika peringatan itu muncul. Jika Anda menggunakan autentikasi kata sandi, berikan kata sandi root Anda untuk log masuk. Jika Anda menggunakan kunci SSH yang dilindungi frasa sandi, Anda mungkin diminta memasukkan frasa sandi saat kali pertama Anda menggunakan kunci pada setiap sesi. Jika ini bukan kali pertama Anda log masuk ke server dengan kata sandi, Anda juga dapat diminta mengubah kata sandi root.

      Tentang root

      Pengguna root adalah pengguna administratif dalam suatu lingkungan Linux yang memiliki privilese sangat luas. Karena privilese akun root telah ditingkatkan, Anda tidak disarankan untuk menggunakannya secara teratur. Hal ini dikarenakan salah satu kekuatan yang melekat pada akun root adalah kemampuan membuat perubahan yang sangat dekstruktif, sekalipun dilakukan secara tidak sengaja.

      Langkah berikutnya adalah membuat akun pengguna baru dengan privilese yang lebih sedikit untuk penggunaan sehari-hari. Nantinya, kami akan mengajarkan cara mendapatkan privilese yang ditingkatkan hanya sewaktu Anda membutuhkannya.

      Langkah 2 — Menciptakan Pengguna Baru

      Setelah log masuk sebagai root, kita siap untuk menambah akun pengguna baru. Nantinya, kita akan log masuk dengan akun baru ini alih-alih root.

      Ini adalah contoh penciptaan pengguna baru yang bernama sammy, tetapi Anda harus menggantinya dengan nama pengguna yang Anda suka:

      Anda akan diminta menjawab beberapa pertanyaan, mulai dari kata sandi akun.

      Masukkan kata sandi yang kuat dan, secara opsional, isi informasi tambahan jika Anda mau. Ini tidak wajib diisi dan Anda dapat langsung menekan ENTER pada bidang apa pun yang ingin dilewati.

      Langkah 3 — Memberikan Privilese Administratif

      Sekarang, kita punya akun pengguna baru dengan privilese akun reguler. Namun, kadang kala kita perlu melakukan tugas-tugas administratif.

      Agar tidak perlu log keluar dari pengguna biasa dan log masuk kembali sebagai akun root, kita dapat membuat sesuatu yang disebut sebagai superpengguna atau privilese root untuk akun biasa kita. Ini akan membuat pengguna biasa kita menjalankan berbagai perintah yang mengandung privilese administratif dengan memasukkan kata sudo sebelum setiap perintah.

      Untuk menambahkan privilese ini kepada pengguna baru, kita perlu menambahkan pengguna ke grup sudo. Secara asali, pada Ubuntu 20.04, pengguna yang menjadi anggota grup sudo diperkenankan untuk menggunakan perintah sudo.

      Sebagai root, jalankan perintah ini untuk menambahkan pengguna baru ke grup sudo (ganti nama pengguna yang disorot dengan pengguna baru Anda):

      Sekarang, saat log masuk sebagai pengguna reguler, Anda dapat mengetik sudo sebelum perintah untuk melakukan tindakan dengan privilese superpengguna.

      Langkah 4 — Mengatur Firewall Dasar

      Server Ubuntu 20.04 dapat menggunakan firewall UFW untuk memastikan hanya koneksi ke layanan tertentu yang diizinkan. Kita dapat mengatur firewall dasar secara sangat mudah menggunakan aplikasi ini.

      Catatan: Jika server Anda beroperasi di DigitalOcean, Anda dapat menggunakan DigitalOcean Cloud Firewalls alih-alih firewall UFW. Kami menyarankan menggunakan satu firewall saja untuk menghindari pertentangan aturan yang mungkin sulit diawakutu.

      Aplikasi dapat mendaftarkan profilnya di UFW saat instalasi. Profil-profil ini memungkinkan UFW untuk mengelola aplikasi berdasarkan nama. OpenSSH, suatu layanan yang memungkinkan kita terhubung ke server kita sekarang, memiliki profil yang terdaftar dengan UFW.

      Anda dapat melihatnya dengan mengetik:

      Output

      Available applications: OpenSSH

      Kita harus memastikan firewall mengizinkan koneksi SSH sehingga kita dapat log masuk lagi di kesempatan selanjutnya. Kita dapat mengizinkan koneksi ini dengan mengetik:

      Setelah itu, kita dapat mengaktifkan firewall dengan mengetik:

      Ketik y dan tekan ENTER untuk melanjutkan. Anda dapat melihat bahwa koneksi SSH masih diizinkan dengan mengetik:

      Output

      Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6)

      Jika Anda menginstal dan mengonfigurasi layanan tambahan, Anda akan perlu menyesuaikan pengaturan firewall untuk mengizinkan lalu lintas masuk, karena firewall masih memblokir semua koneksi kecuali untuk SSH. Anda dapat mempelajari beberapa operasi UFW yang umum dalam panduan UFW Essentials kami.

      Langkah 5 — Mengaktifkan Akses Eksternal untuk Pengguna Reguler Anda

      Karena kita telah memiliki pengguna reguler untuk penggunaan sehari-hari, kita perlu memastikan bahwa kita dapat melakukan SSH secara langsung ke akun tersebut.

      Catatan: Sampai Anda sudah memastikan bahwa Anda bisa log masuk dan menggunakan sudo dengan pengguna baru Anda, kami menyarankan untuk tetap log masuk sebagai root. Dengan begitu, jika ada masalah, Anda dapat memecahkan masalah dan membuat perubahan yang diperlukan sebagai root. Jika Anda menggunakan DigitalOcean Droplet dan mengalami masalah dengan koneksi SSH root, Anda dapat log masuk ke Droplet menggunakan DigitalOcean Console.

      Proses untuk mengonfigurasi akses SSH bagi pengguna baru Anda tergantung apakah akun root server Anda menggunakan kata sandi atau kunci SSH untuk autentikasi.

      Jika Akun Root Menggunakan Autentikasi Kata Sandi

      Jika Anda log masuk ke akun root menggunakan kata sandi, maka autentikasi kata sandi akan diaktifkan untuk SSH. Anda dapat melakukan SSH ke akun pengguna baru Anda dengan membuka sesi terminal baru dan menggunakan SSH dengan nama pengguna baru Anda:

      Setelah memasukkan kata sandi pengguna reguler Anda, Anda akan log masuk. Ingat, jika Anda perlu menjalankan perintah dengan privilese administratif, ketik sudo sebelumnya seperti ini:

      Anda akan diminta memasukkan kata sandi pengguna reguler Anda saat menggunakan sudo untuk pertama kalinya pada setiap sesi (dan selanjutya secara berkala).

      Untuk meningkatkan keamanan server Anda, kami sangat menyarankan untuk mengaktifkan kunci SSH alih-alih menggunakan autentikasi kata sandi. Ikuti panduan kami tentang mengaktifkan kunci SSH pada Ubuntu 20.04 untuk mempelajari cara mengonfigurasi autentikasi berbasis kunci.

      Jika Akun Root Menggunakan Autentikasi Kunci SSH

      Jika Anda log masuk ke akun root Anda menggunakan kunci SSH, maka autentikasi kata sandi dinonaktifkan untuk SSH. Anda akan perlu menambahkan salinan dari kunci publik lokal pada berkas ~/.ssh/authorized_keys pengguna baru agar bisa log masuk dengan sukses.

      Karena kunci publik Anda sudah berada di dalam berkas ~/.ssh/authorized_keys akun root pada server, kita dapat menyalin berkas itu dan struktur direktorinya ke akun pengguna baru pada sesi yang ada.

      Cara termudah untuk menyalin berkas dengan kepemilikan dan izin yang benar yaitu dengan menggunakan perintah rsync. Ini akan menyalin direktori .ssh pengguna root, menyimpan izin, dan memodifikasi pemilik berkas, semua itu hanya dengan satu perintah. Pastikan untuk mengganti bagian perintah yang disorot di bawah ini agar sesuai dengan nama pengguna reguler Anda:

      Catatan: Perintah rsync memberikan perlakuan yang berbeda terhadap sumber dan tujuan yang diakhiri dengan tanda garis miring dibanding yang tidak diakhiri dengan tanda garis miring. Saat menggunakan rsync di bawah, pastikan direktori sumber (~/.ssh) tidak diakhiri dengan tanda garis miring (periksalah untuk memastikan Anda tidak menggunakan ~/.ssh/).

      Jika Anda secara tidak sengaja menambahkan tanda garis miring pada akhir perintah, rsync akan menyalin konten *dari direktori ~/.ssh akun *root** ke direktori rumah pengguna sudo alih-alih menyalin seluruh struktur direktori ~/.ssh. Berkas akan berada di lokasi yang salah serta SSH tidak akan dapat menemukan dan menggunakannya.

      • rsync --archive --chown=sammy:sammy ~/.ssh /home/sammy

      Sekarang, buka sesi terminal baru pada mesin lokal Anda, dan gunakan SSH dengan nama pengguna baru Anda:

      Anda harus log masuk ke akun pengguna baru tanpa menggunakan kata sandi. Ingat, jika Anda perlu menjalankan perintah dengan privilese administratif, ketik sudo di depan perintah seperti ini:

      Anda akan diminta memasukkan kata sandi pengguna biasa saat menggunakan sudo untuk pertama kalinya pada setiap sesi (dan selanjutnya secara berkala).

      Setelah Ini, Apa Selanjutnya?

      Di titik ini, Anda memiliki fondasi yang kuat untuk server Anda. Anda dapat menginstal perangkat lunak apa pun yang dibutuhkan di server Anda sekarang.



      Source link