Ebook Administrasi Ubuntu Server 1604 LTS
Ebook Administrasi Ubuntu Server 1604 LTS
Ebook Administrasi Ubuntu Server 1604 LTS
Ada 1 buah komputer server dengan ip 192.168.88.100/24 dan 1 buah klien dengan ip
192.168.88.29/24. Keduanya terhubung ke sebuah switch, dimana switch tersebut terhubung ke modem
dengan ip modem 192.168.88.1. Modem ini terkoneksi ke internet. Saya disini menggunakan modem
indihome.
Jadi kira-kira setup jaringannya adalah :
Selain setup jaringan diatas, kita juga harus menentukan akan memberi nama server kita apa dan juga
apa nama domain yang akan digunakan. Ini bebas saja. Disini saya tentukan :
Semua konfigurasi diatas bisa juga kalian sesuaikan dengan kondisi jaringan masing-masing.
1. Untuk memulai menginstalasi, pastikan kalian sudah memiliki CD Installer Ubuntu Server
16.04 LTSnya. File isonya dapat kalian unduh disini :
http://kambing.ui.ac.id/iso/ubuntu/releases/16.04/ubuntu-16.04-server-i386.iso. Setelah itu
tinggal kalian burning ke CD atau DVD.
2. Setelah itu pastikan kalian sudah setup settingan bios untuk boot melalui CD. Kira-kira
tampilannya seperti ini :
3. Jika berhasil, seharusnya kalian akan masuk ke tampilan awal instalasi Ubuntu. Pilih English
lalu pilih Install Ubuntu Server
4. Tahap selanjutnya kalian memilih bahasa instalasi dan juga memilih kalian ini berada di negara
mana. Pilih English > Other > Asia > Indonesia.
5. Kemudian kalian juga perlu memilih konfigurasi Locales dan Keyboard. Ini hanya terkait
dengan konfigurasi keyboard yang akan dibaca oleh sistem. Pada dasarnya ini hanya akan
berpengaruh kalau kalian pakai keyboard dengan layout china, jepang, korea dan semacamnya
yang aneh-aneh. Selain itu ikuti defaultnya saja. Pilih United States pada Locales > pilih No
pada keyboard Layout > pilih English US > Pilih English US lagi.
6. Selanjutnya adalah tahap konfigurasi jaringan. Jika muncul pesan network configuration failed,
pilih Continue saja karena kita memang akan mengkonfigurasi jaringan secara manual. Lalu
pilih Configure Network Manually.
7. Masukkan konfigurasi IP Address, netmask, gateway dan dns, hostname, dan dns sesuai yang
sudah kita tentukan di awal.
8. Masukkan juga nama user dan juga password untuk admin. Disini saya masukkan Rizal
Rahman untuk nama lengkap, rizal untuk username, dan 123 untuk password. Jika muncul
password weak, pilih Yes saja. Karena ini passwordnya memang hanya untuk latihan.
9. Selanjutnya untuk konfigurasi waktu, pilih Asia/Jakarta atau pilih Yes jika memang sudah
terdeteksi secara otomatis.
10. Pada tahap partisi kita akan memilih Manual. Kita akan membuat 2 buah minimal partisi yaitu
Swap dan / atau disebut root. Ukurannya untuk swap adalah 1GB (karena 2x ram dari ram
server saya yang hanya 512MB) dan untuk root adalah sisa partisinya. Karena root ini adalah
untuk filesystem.s
Jika sudah pilih Finish partitioning and write changes to disk > Yes.
11. Jika ditengah-tengah muncul pertanyaan HTTP Proxy, langsung continue saja. Lalu kalau
muncul pertanyaan konfigurasi update, pilih saja no automatic updates karna kita akan
melakukan update secara manual.
12. Selanjutnya pada layar pemilihan paket-paket yang akan diinstall, biarkan saja standard system
utility saja yang tercentang. Karena semua paket yang lain akan kita install manual berikutnya.
Langsung enter saja.
13. Terakhir pilih Yes saat ditanya install GRUB, lalu pilih Continues jika instalasi sudah selesai.
14. Keluarkan CD installer, lalu jika tidak ada error seharusnya komputer akan merestart dengan
sendirinya lalu akan masuk ke tampilan prompt seperti berikut :
Pertama-tama loginlah ke server kalian, lalu ketikkan perintah berikut untuk masuk ke mode root :
$ sudo -i
Lalu edit file /etc/network/interfaces dimana file ini adalah letak seluruh konfigurasi jaringan di Ubuntu
16.04 Server.
# nano /etc/network/interfaces
Pastikan seluruh konfigurasi jaringan baik itu ip address, gateway, netmask, hingga dns-nameservers
sudah sesuai dengan yang kita inginkan diawal dan sama dengan yang kita input saat instalasi. Kira-
kira seperti ini :
Jika ada yang salah, silahkan kalian edit saja, lalu simpan dengan CTRL +X > Y > Enter. Jika tidak ada
yang salah keluar saja dengan menekan CTRL + X.
Konfigurasi hostname yang sesuai standar adalah kita harus mengatur formatnya begini :
hostname.domain. Berarti untuk kita yang nama hostnamenya adalah server dan nama domainnya
adalah rizal.cilsy, maka konfigurasi standarnya adalah server.rizal.cilsy. Ini harus kita edit di file
/etc/hostname.
# nano /etc/hostname
Untuk mengetes konfigurasi jaringan dan hostname adalah dengan melakukan ping :
# ping 192.168.88.100
# ping server.rizal.cilsy
# ping google.com
Jika semua sudah oke, lakukan langkah terakhir untuk mengupdate server repository dengan perintah
berikut :
# apt-get update
Langkah terakhir ini supaya kalian bisa melakukan instalasi-instalasi semua paket aplikasi dan layanan
berikutnya.
Bagian Instalasi SSH Server
SSH Server adalah layanan supaya server ubuntu kita bisa diremote dari komputer lain dari mana saja.
Bahkan bisa melalui internet. Misal kita bisa remote server kita yang dijakarta padahal kita berada di
Bandung.
$ sudo -i
# apt-get install openssh-server
SSH Server tidak ada yang perlu dikonfigurasi, semua langsung jalan dan tinggal pakai. Selanjutnya
kalian tinggal remote saja server kalian melalui komputer kalian. Jika windows kalian bisa
menggunakan software putty, download disini :
Lalu langsung klik OK. Nanti kalau muncul pertanyaan soal certificate, pilih saja yes. Setelah itu kalian
tinggal masukkan username dan password yang sudah kalian buat pada saat instalasi ubuntu. Jika
berhasli seharusnya kalian akan masuk ke menu prompt server kalian.
Bagian Instalasi Web Server LAMP (Apache Mysql)
Webserver adalah layanan untuk membuat program/aplikasi berbasis web yang sudah dibuat oleh
programmer (biasanya berbasis PHP dan HTML) agar bisa tampil dan diakses oleh klien. Webserver ini
terdiri dari beberapa komponen, yaitu :
Standarnya, kita menggunakan Apache untuk webservernya, Mysql + PHPmyadmin untuk database
server dan pengaturnya, dan PHP untuk server-side scripting languagenya.
Untuk menginstallnya di Ubuntu 16.04 caranya cukup mudah, tinggal ketikkan perintah berikut :
$ sudo apt install apache2 php libapache2-mod-php php-mcrypt php-mysql mysql-server phpmyadmin
Disini kita pilih Yes untuk mengkonfigurasi PHPmyadmin secara otomatis. Lalu masukkan password
mysql kalian sebanyak 2 kali.
Setelah proses instalasi selesai, kalian bisa mengetes webserver kalian sudah berjalan atau belum
dengan mengakses melalui browser klien ke alamat : http://ipserverkalian , misalnya
http://192.168.88.100 . Jika tampil seperti ini maka webservernya sudah berhasil.
Sedangkan untuk mengetes bahwa PHP, Mysql, dan phpmyadmin sudah berjalan dengan baik, kalian
tinggal akses ke http://ipserver/phpmyadmin. Lalu masukkan username root dan password mysql
kalian. Jika berhasil terbuka dan login, maka sudah berhasil.
Bagian Instalasi FTP Server
FTP Server adalah layanan untuk transfer file antara klien dengan server. Biasanya ini digunakan
sebagai sarana transfer file untuk kepentingan file-file web aplikasi yang akan disimpan di webserver.
Misal kalian punya 1 folder website perusahaan yang harus dimasukkan ke webserver, maka untuk
mentransferkannya kalian bisa menggunakan FTP Server.
Aplikasi FTP Server yang digunakan disini adalah Vsftpd. Karena lebih mudah pengkonfigurasiannya
dan lebih aman.
# nano /etc/vsftpd.conf
Semua konfigurasi diatas untuk mengaktifkan FTP Server dan membuat user-user lokal server kalian
bisa digunakan untuk mengakses FTP Server.
Berikutnya kalian dari sisi klien, bukalah aplikasi Filezilla Client (jika belum ada silahkan download
terlebih dahulu disini : https://filezilla-project.org/download.php ). Kemudian akses server kalian
dengan memasukkan ip server pada bagian hostname, lalu user server kalian dan juga password server
kalian. Pada kasus ini saya memasukkan 192.168.88.100 pada hostname, rizal pada user, dan
passwordnya 123 (sesuai dengan saat kita instalasi di awal).
Jika sudah, klik Quick Connect dan kalian akan mendapati window bagian kanan adalah folder-folder
di server kalian. Dan window sebelah kiri adalah folder-folder di komputer klien kalian.
Kalian tinggal drag and drop saja file-file dari window sebelah kiri ke window sebelah kanan untuk
mengupload file ke server. Sedangkan untuk mendownload file dari server kalian tinggal drag and drop
dari window sebelah kanan ke window sebelah kiri.
Semua file yang kalian upload ke server akan berada di direktori /home/namauser. Dalam kasus ini ada
di /home/rizal.
Ada banyak yang perlu kita install dan konfigurasi. Mari kita mulai.
# maildirmake /etc/skel/Maildir
# nano /etc/postfix/main.cf
home_mailbox = Maildir/
Jika sudah simpan dan keluar dengan menekan CTRL +X > Y > Enter.
dpkg-reconfigure postfix
Akan muncul beberapa pertanyaan. Biarkan jawaban apa adanya (karna sudah kita konfigurasi
sebelumnya pada bagian :
Postfix Configuration : OK
General Type mail configuration : Internet Site
System mail name : rizal.cilsy
Lalu pada bagian berikutnya, kalian bisa jawab dengan jawaban-jawaban berikut :
# nano /etc/apache2/apache2.conf
# squirrelmail-configure
Kemudian tekan angka 2, lalu tekan s, lalu tekan q. Tidak ada yang diubah disini, 3 langkah ini
dilakukan hanya untuk mengaktifkan konfigurasi si squirrelmailnya.
7. Buatlah 2 buah user untuk pengetesan nanti terima dan kirim email.
# adduser rahman
# adduser joni
8. Akses squirrelmail dari browser ke alamat http://ipserver/squirrelmail. Atau pada kasus ini
http://192.168.88.100/squirrelmail
Silahkan kalian coba login dengan masing-masing user dan tes kirim dan terima email. Pastikan sudah
bisa sama-sama kirim dan terima email antar sesama user.
Bagian Instalasi Samba File Server
Samba File Server adalah layanan sharing file yang dapat digunakan oleh multi platform (Linux,
Windows, maupun MacOS). Biasanya File Server ini diimplementasikan di perusahaan-perusahaan
yang butuh penyimpandan data terpusat. Misalnya ada 1 buah perusahaan yang memiliki 3 buah
departemen, yaitu departemen Finance, Marketing, dan IT. Nah tiap-tiap anggota departemen ini ingin
kita buatkan tempat penyimpanan data terpusatnya masing-masing. Lalu kita juga bisa atur, misalnya
kalau dari departemen Marketing bisa lihat datanya Finance tapi hanya read saja (tidak bisa didelete
atau diedit). Dan skenario-skenario lainnya.
Jadi akan ada 1 buah folder yang akan di share. Nah folder ini memiliki hak akses yang berbeda untuk
2 departemen di perusahaan kita. Untuk departemen Marketing (Mkt), bisa melakukan full akses
terhadap folder tersebut. Sedangkan departemen Sales, hanya bisa read saja.
Selanjutnya kita buat dan atur dulu folder yang akan dishare sesuai skenario yang kita mau :
Buat 2 orang user, rahman yang akan jadi anggota mkt dan jono yang akan jadi anggota sales.
# adduser rahman
# adduser jono
Berikan hak akses grup mkt full akses dan selain grup mkt hanya read only
Sampai sini persiapan folder, user, grup, dan hak akses sudah selesai. Jika sudah kalian perlu edit file
konfigurasi samba untuk menambahkan settingan folder yang mau dishare :
# nano /etc/samba/smb.conf
nb : untuk keterangan yang saya masukkan dengan tanda jangan dimasukkkan. Itu hanya penjelasan
saja.
[share-mkt]
path = /home/mkt
browseable = yes
writeable = yes
create mask = 0775
force create mode = 0775
directory mask = 0775
force directory mode = 0775
valid users = @mkt, @sales
Jika sudah simpan filenya dengan CTRL + X > Y > Enter.
Berikutnya kalian harus buatkan password samba untuk user rahman dan jono. Karena password samba
ini harus dibuat tersendiri, walaupun isinya bisa disamakan dengan password login.
# smbpasswd -a rahman
# smbpasswd -a jono
Lalu cobalah untuk akses file sharing kalian dari komputer klien, melalui address bar Windows
Explorer dengan mengetikkan perintah berikut. :
Jika berhasil seharusnya akan muncul folder yang mana ketika kalian klik akan meminta password dan
username. Masukkan sesuai yang sudah kalian buat. Lalu tes apakah hak akses dan permission sudah
berjalan dengan baik.
Salah satu aplikasi layanan untuk membuat DNS server adalah Bind9. Dalam ebook ini semua domain
ini adalah domain lokal saja, jadi tidak bisa digunakan atau diakses melalui internet. Jika kalian
menginginkan untuk bisa mengakses domain via internet, maka kalian perlu membeli domainnya
terlebih dahulu.
Setelah itu kalian masuk ke direktori /etc/bind dan edit file named.conf.local untuk mendeklarasikan
zona domain yang ingin kita buat :
# cd /etc/bind
# nano named.conf.local
zone "88.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.100";
};
Pada intinya script diatas kita mendeklarasikan sebuah zona domain. Zona domain ini adalah domain
apa yang akan kita konfigurasikan record-recordnya pada server kita. Pada kasus ini zona domain kita
adalah rizal.cilsy. Record itu sendiri intinya mengarahkan sub-sub domain ke alamat ip mana saja.
Misal untuk www.cilsy.id ke alamat ip 192.168.88.100, lalu untuk mail.cilsy.id ke alamat ip
192.168.88.100 juga, dst.
Sedangkan untuk baris file, itu adalah menunjukkan dimana nanti kita meletakkan konfigurasi record-
record dari zona domain yang kita buat ini.
Setelah itu kita kopikan konfigurasi record yang sudah ada sebelumnya ke file konfigurasi record yang
baru akan kita buat :
# cp db.local db.rizal
# cp db.127 db.100
Pertama-tama kita edit file db.rizal untuk mengkonfigurasi record untuk forward zone rizal.cilsy (dari
sub domain ke ip)
# nano db.rizal
Disini kalian ganti semua baris yang berbau localhost dengan domain rizal.cilsy. Setelah itu kalian
sesuaikan untuk subdomain www dan mail diarahkan ke ip mana. Disana tertulis 192.168.88.100
karena itu menunjukkan ip server kita yaitu 192.168.88.100. Untuk lebih jelasnya bisa perhatikan
gambar dibawah ini :
Intinya disini kalian mengarahkan subdomain apa saja yang ingin kalian buat dan diarahkan ke ip
mana. Disini saya sengaja buat ada subdomain ns, www, dan mail. Untuk subdomain @ itu artinya
hanya domain rizal.cilsy saja tanpa embel-embel apapun didepannya. Jadi sekilas bisa diartikan bahwa
untuk domain rizal.cilsy itu alamat ipnya di 192.168.88.100, begitupun untuk ns.cilsy.id, www.cilsy.id,
dan mail.cilsy.id. Sedangkan untuk yang NS, itu untuk menunjukkan bahwa server DNS kita ini
berperan sebagai Nameserver atau DNS server.
Selanjutnya lakukan hal yang sama pada file reverse zone db.100 untuk mengkonfigurasi dari alamat ip
ke sub domain :
# nano db.100
Lakukan seperti sebelumnya yaitu mengubah baris-baris localhost menjadi rizal.cilsy, lalu
menyesuaikan baris-baris subdomain yang diubah ke ip seperti ns.rizal.cilsy, www.rizal.cilsy, dan
mail.rizal.cilsy. Disini pada dasarnya konsepnya sama dengan sebelumnya namun formatnya terbalik
yaitu alamat ipnya terlebih dahulu baru subdomainnya yang ditulis. Untuk lebih jelasnya bisa
perhatikan gambar dibawah :
Jika sudah simpan dan tutup file.
Berikutnya kita perlu konfigurasikan dns forwarder. Intinya ini agar DNS kita ini selain bisa
memberikan layanan DNS untuk domain lokal (rizal.cilsy), namun juga bisa memberikan layanan DNS
untuk semua domain di internet (facebook, google, dll) dengan cara memforward permintaan domain
internet ke DNS yang ada di internet, yaitu DNS google. Jadi misal klien meminta alamat ip untuk
domain rizal.cilsy, maka server kita sendiri yang akan memberikannya. Namun jika klien meminta
alamat ip google.com misalnya, maka server akan memberikan permintaan ini ke DNS google yang ada
diinternet. Caranya adalah sebagai berikut :
# nano named.conf.options
Cari baris forwarders, lalu kalian hilangkan tanda // dan edit menjadi seperti ini :
forwarders {
8.8.8.8;
};
Setelah itu cari baris dnssec-validation auto; dan gantilah menjadi dnssec-validation no;
Jika tidak ada error, dari sisi klien kalian konfigurasikan alamat DNS secara manual dengan
memasukkan ip server 192.168.88.100.
Lalu cobalah melakukan ping ke tiap-tiap domain dan subdomain dari rizal.cilsy dan juga ping ke
internet. Seharusnya semuanya akan bisa diakses.
ping rizal.cilsy
ping www.rizal.cilsy
ping google.com