Anda di halaman 1dari 103

KATA PENGANTAR

Assalamu’alaikum Warahmatullahi Wabarakatuh

Alhamdulillah saya panjatkan puja dan puji syukur kehadirat Allah swt yang senantiasa
melimpahkan segala rahmat, taufik dan hidayah-Nya sehingga penyusun dapat
menyelesaikan modul ini.

Modul ini disusun untuk memenuhi kebutuhan peserta pendidikan, maka modul ini disusun
dengan kualifikasi yang tidak diragukan lagi.

Teknik penyajian yang diangkat dilakukan secara terpadu. Cara ini diharapkan bisa
meminimalisir terjadinya pengulangan topik.

Penyusun menyadari bahwa di dalam pembuatan modul masih banyak kekurangan, untuk
itu penyusun sangat membuka saran dan kritik yang sifatnya membangun. Mudah-mudahan
modul ini memberikan manfaat.

Jonggol, 30 Juni 2021

Tegar Rizky Ardana


DAFTAR ISI

KATA PENGANTAR 1

DAFTAR ISI 2

INITIAL SETUP REDHAT 5


INSTALASI REDHAT PADA VMWARE 6
KONFIGURASI IP ADDRESS 16
Konfigurasi IP DHCP 16
Konfigurasi IP Static 18

USERMAN REDHAT 20
Creating User 21
Add User with Default Setting 23
Add User with User’s Full Name 23
Attach New User To Group 24
Adding a User to a Group 24
Modifying User Settings 26
Change user’s login 26
Change user’s UID and home directories 26
Deleting Users 28
Creating Groups 28
Creating Groups with Default Settings 28
Creating a Group with Specified GID 29
Attaching User To Groups 30
Modifying Group Settings 30
Changing Group’s Name 31
Deleting Groups 31

YUM PACKAGE MANAGER 31


Registering The System and Attaching Subscription 32
Managing Software Repositories 34
Removing Subscription 34
Searching Packages 36
Displaying Package Information 36
Listing Files Contained in a Package 38
Installing Packages 39
Installing Individual Packages 39
Installing a Package Group 40
Removing Packages 41
Removing Individual Packages 41
Removing a Package Group 42

REMOTE SERVER 43
The SSH Protocol 44
Why Use The SSH Protocol ? 44
Interception of communication between two system 44
Impersonation of a particular host 44
Starting an OpenSSH Server 46
Installing Package 46
Starting SSH Service 46
Configuring SSH Server 47

FTP SERVER 48
VSFTPD As FTP Server 49
Installing Package 49
Starting FTP Service 49
Configuring FTP Server 50

DNS SERVER 53
Introduction to DNS 54
Nameserver Zone 54
Nameserver Types 55
BIND As a Nameserver 55
Installing Packages 56
named Service 56
Forward and Reverse Zone 58
Konfigurasi Firewall (Optional) 61
Konfigurasi Tambahan 61

WEB SERVER 63
Apache HTTP Server 64
Installing Package 64
Starting HTTP Service 64
Restarting The Service 65

MAIL SERVER 67
Zimbra Collaboration Suite 68
Installing Utility Packages 68
Installing Zimbra Collaboration Suite Open Source Edition 68

FILE SERVER 82
Introduction to Samba 83
Installing Packages 83
Preparing The Directories 83
User and Regular Permissions 84
Configuring Samba 84
Samba Anonymous File Sharing 84
Samba Secure File Sharing 87

CentOS Web Panel (CWP) 90


Setup Hostname 91
Setup Server IP Address 91
Installing Centos Web Panel (CWP) Packages 92
CentOS Web Panel Configuration 93

Google Nextcloud 96
Installing Dependencies Package 97
Installing Web Services 97
Installing PHP Engine 98
Installing Database Service 99
Installing Nextcloud 101
INITIAL SETUP REDHAT
INSTALASI REDHAT PADA VMWARE

Setelah mendownload image dari Redhat.com, saya pribadi menggunakan vmware untuk
menginstall redhat-nya, tidak ada keharusan untuk menyamai saya, tetapi akan lebih mudah
mengikuti tutorial ini bila kita sama-sama menggunakan vmware.

Buka VMware lalu tambahkan VM baru “Create a New Virtual Machine”.


Pilih “I will install the operating system later”. Karena kita ingin melewati step EasyInstall dari
VMware.

Lalu sesuaikan dengan versi Redhat yang didownload.


Lalu pilih tempat dimana akan disimpannya file VM dari redhat.
Lalu tentukan size dari disk yang akan digunakan oleh red hat, size rekomendasinya adalah
sekitar 20GB
Jika sudah akan muncul preview dari hardware redhat yang akan diinstall, klik “Customize
Hardware...”
Pada “CD/DVD (SATA)”, pilih “Use ISO image file”, lalu cari file image redhat yang telah
didownload.
Lalu OK. dan nyalakan Redhatnya, lalu pilih bahasa yang akan digunakan.

Pada SYSTEM > INSTALLATION DESTINATION,

Pilih disk yang dibuat oleh vmwarenya.


Lalu pada bagian NETWORK & HOSTNAME, ubah dari OFF menjadi ON.

Lalu klik Begin Installation, selagi menunggu loading, kita buat User Login dan tentukan
Root password untuk redhatnya.

Setting Root Password.


Setting Create User

Jika sudah selesai, silahkan login dengan user yang sudah kita buat.
KONFIGURASI IP ADDRESS

Untuk mengonfigurasikan IP Address pada Redhat ada 2 cara, yakni dengan DHCP atau
dengan Static IP.

Konfigurasi IP DHCP

Cek terlebih dahulu ip addressnya dengan perintah.

~]$ ip address

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state


UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc
pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:6f:fb:03 brd ff:ff:ff:ff:ff:ff
inet 192.168.79.132/24 brd 192.168.79.255 scope global
noprefixroute dynamic ens33
valid_lft 1769sec preferred_lft 1769sec
inet6 fe80::b03b:6bdf:5aec:e694/64 scope link noprefixroute
valid_lft forever preferred_lft forever

Sekarang lihat konfigurasi interface ens33, ens33 adalah interface vm rhel yang
terhubung ke jaringan luar. Ketik perintah vi /etc/sysconfig/network-scripts/
lalu klik tab 2x.

~]$ sudo vi /etc/sysconfig/network-scripts/

ifcfg-ens33 ifdown-ppp ifup-eth


ifup-sit
ifcfg-lo ifdown-routes ifup-ippp
ifup-Team
ifdown ifdown-sit ifup-ipv6
ifup-TeamPort
ifdown-bnep ifdown-Team ifup-isdn
ifup-tunnel
ifdown-eth ifdown-TeamPort ifup-plip
ifup-wireless
ifdown-ippp ifdown-tunnel ifup-plusb
init.ipv6-global
ifdown-ipv6 ifup ifup-post
network-functions
ifdown-isdn ifup-aliases ifup-ppp
network-functions-ipv6
ifdown-post ifup-bnep ifup-routes

Sekarang tambahkan directory interfacenya pada perintah, untuk menggunakan perintah tsb
harus menggunakan mode Super User.

~]$ sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33

Masukan passwordnya, setelah itu akan muncul seperti ini.

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="4ef55e01-be54-4a97-9a42-2e97dab98401"
DEVICE="ens33"
ONBOOT="yes"
~
"/etc/sysconfig/network-scripts/ifcfg-ens33" 15L, 310C

BOOTPROTO isi sebagai dhcp, lalu ONBOOT isi yes untuk mendapatkan IP DHCP.
Untuk mengedit tekan i lalu tekan ESC untuk keluar dari mode edit, dan tekan Shift + :
lalu ketik wq untuk menyimpan konfigurasi.

Konfigurasi IP Static

Untuk menyeting IP Address secara static kita hanya perlu mengubahnya seperti ini.

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="4ef55e01-be54-4a97-9a42-2e97dab98401"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.79.10
NETMASK=255.255.255.0
GATEWAY=192.168.79.1
DNS1=8.8.8.8

Save konfigurasi lalu restart interfacenya dengan perintah.

~]$ sudo systemctl restart network


USERMAN REDHAT
Creating User

Setiap User dapat menjalankan program pada sistem, Setiap file dapat dimiliki diakses oleh
user dan dapat dibatasi. Perintah id digunakan untuk melihat informasi tentang user yang
sedang kita gunakan/login. Informasi User lain juga bisa didapatkan dengan id [user].

~]$ id

uid=1000(tegar) gid=1000(tegar) groups=1000(tegar), 10(wheel)


context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

~]$ id root

uid=0(root) gid=0(root) groups=0(root)

Untuk melihat apakah user terasosiasikan dengan file atau directory, gunakan perintah ls
-l.

~]$ ls -l /tmp

total 4

-rwx------. 1 root root 836 Sep 11 21:02 ks-script-d5t7qd

drwx------. 3 root root 17 Sep 11 21:04


systemd-private-987fab23d94c4d1e992520a6f70721a8-chronyd.service-
qO0SLf

drwx------. 2 root root 6 Sep 11 21:04


vmware-root_849-4013723217

-rw-------. 1 root root 0 Sep 11 20:51 yum.log


Untuk melihat Process Information, gunakan perintah ps, secara default perintah tsb akan
melihatkan proses yang sedang berjalan pada shell. tambah opsi a untuk melihat semua
proses dengan terminal, untuk melihat user yang berhubungan dengan proses, tambahkan
opsi u.

~]$ ps au

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME
COMMAND
tegar 1743 0.0 0.1 115580 2292 tty1 Ss 20:54 0:00
-bash
root 2728 0.0 0.1 191936 2436 pts/1 S 22:19
0:00 su - tegar
tegar 2729 0.1 0.1 115448 1988 pts/1 S 22:19
0:00 -bash

Outputnya memperlihatkan user dengan nama, sedangkan redhat melihat user dengan UID
number, informasi informasi tentang user disimpan pada /etc/passwd

UID : User ID

GID : User Primary Group

GECOS : Arbitrary Text, biasanya berisi real name dari user

Untuk menambahkan user yang dapat mengakses redhat, bisa menggunakan perintah.

~]# useradd username

untuk memberi password pada user tersebut gunakan perintah.

~]# passwd username


Add User with Default Setting

~]# useradd netio


~]# passwd netio

Changing password for user netio.


New password: *password*
Retype new password: *password*
passwd: all authentication tokens updated successfully.

Jika ingin mengubah default setting pada pembuatan user, bisa dengan menambahkan
option.

~]# useradd [option(s)] username

Add User with User’s Full Name

Untuk menentukan Full Name dari user yang akan dibuat, gunakan option -c.

~]# useradd -c "Full Name" username

Contoh :

~]# useradd -c "John Doe" john


~]# passwd john

Changing password for user john.


New password: *password*
Retype new password: *password*
passwd: all authentication tokens updated successfully.
Attach New User To Group

Perintah “useradd” membuat User Private Group (UPG, sebuah grup yang ditetapkan
secara eksklusif dimiliki user tersebut) setiap kali user baru diciptakan pada system dan
menggunakan nama user tersebut sebagai nama UPG. Sebagai contoh, akun john telah
dibuat, lalu sebuah UPG dengan nama john juga terbuat di waktu yang bersamaan, yang
hanya beranggotakan user john.

Jika kita tidak ingin membuat User Private Group (UPG) untuk sebuah user dengan alasan
apapun, kita dapat menggunakan option tambahan pada perintah useradd seperti berikut.

useradd -N username

Alih-alih membuat UPG atau tidak, kita juga dapat menentukan group user dengan option
-g dan -G. Untuk menentukan group primary dapat menggunakan -g, sedangkan -G
mengacu kepada grup tambahan.

Nama grup harus sudah ada pada system.

Adding a User to a Group

~]# useradd -g “friends” -G “family,schoolmates” john

Perintah diatas akan membuat user john tapi grup primary john berada di friends sesuai dari
perintah option -g diatas. john juga anggota dari group tambahan dari family dan
schoolmates.

Jika user yang telah ada pada system ingin kita tambahkan ke dalam group tambahan,
gunakan perintah usermod dengan option -G dan list group-nya dipisahkan oleh koma
tanpa spasi. Contoh :
~]# usermod -G group_1,group_2,group_3
Modifying User Settings

Ketika user telah dibuat dan kita perlu mengubah terkait user tersebut, kita dapat
menggunakan perintah usermod. Logika menggunakan syntax usermod sama seperti
menggunakan syntax useradd :

usermod option(s) username

Untuk mengganti username dari sebuah user kita dapat menggunakan option -l diikuti
dengan username yang baru.

Change user’s login

~]# usermod -l “john-doe” john

Option -l mengubah nama user dari john menjadi john-doe. Tidak ada lagi yang
berubah. Secara khusus, nama home direktori milik john (/home/john) tidak berubah
kecuali jika diubah secara manual untuk menunjukan user baru.

Dengan cara yang hampir sama kita juga dapat merubah UID atau direktori home milik user.
Sebagai contoh :

Change user’s UID and home directories

~]# usermod -a -u 699 -d /home/dir_baru john

Perintah tersebut menggunakan option -a, -u dan -d untuk merubah beberapa settingan
pada user john. Sekarang, UID miliknya adalah 699, dan direktori homenya bukan lagi
home/john menjadi home/dir_baru.
Untuk seluruh list option dari perintah usermod dapat dilihat dengan mengetikan perintah
usermod --help.
Deleting Users

Jika kita ingin menghapus akun user dari system, kita dapat menggunakan perintah
userdel dan menjalankan perintahnya sebagai root.

userdel username

Menggabungkan userdel dengan option -r dapat menghapus file di direktori home dan
direktori tersebut. File yang berada di dalam file lain (selain direktori home) harus dicari dan
dihapus secara manual.

userdel -r username

Creating Groups

Groups adalah alat yang berguna untuk perizinan kerjasama antara user yang berbeda. Ada
beberapa perintah untuk mengatur group seperti, groupadd, groupmod, groupdel, atau
gpasswd. File yang terpengaruh akan menyimpan informasi akun grup /etc/group dan
/etc/shadow, yang menyimpan informasi akun grup dengan aman.

Untuk menambah group baru pada sistem dengan settingan default dapat menggunakan
perintah groupadd yang dijalankan sebagai root.

groupadd group_name

Creating Groups with Default Settings

~]# groupadd friends


Perintah groupadd telah membuat group baru dengan nama friends. Kita dapat
membaca informasi tentang group yang baru saja dibuat pada file /etc/group.

friends:x:30005

Secara automatis, group friends memiliki GID (Group ID) 30005 dan tidak memiliki user
sama sekali. Kita juga dapat memberikan password pada group dengan menggunakan
perintah gpasswd groupname.

Kita juga dapat menggunakan option pada perintah-perintah tersebut.

groupadd option(s) groupname

Sebagai contoh, jika kita ingin Menspesifikan GID dari sebuah group saat membuat group
baru, jalankan perintah groupadd dengan option -g. Perlu diingat bahwa value dari GID
harus unique atau tidak boleh ada yang sama.

groupadd -g GID

Creating a Group with Specified GID

Perintah dibawah akan membuat group bernama schoolmates dengan GID 60002 :

~]# groupadd -g 60002 schoolmates

Ketika menggunakan option -g dan GID yang digunakan telah digunakan, groupadd akan
menolak untuk membuat group yang memiliki GID sama. Sebagai solusi, dapat
menggunakan option -f agar groupadd membuat group dengan GID yang berbeda.

groupadd -f GID
Kita juga dapat membuat system group dengan menambahkan option -r pada perintah
groupadd. System group digunakan untuk keperluan sistem, secara praktis berarti GID
dialokasikan dari 1 hingga 499 dalam kisaran 999 yang dicadangkan.

groupadd -r groupname

Attaching User To Groups

Jika ingin memasukan user yang telah ada ke dalam sebuah group, dapat menggunakan
perintah gpasswd.

gpasswd -a username group_tujuan

Untuk menghapus user dari sebuah group.

gpasswd -d username group_tujuan

Untuk menambahkan lebih dari 1 user ke dalam sebuah group, dapat menggunakan option
--members diikuti dengan username dipisahkan oleh koma tanpa spasi.

gpasswd --members username_1,username_2 group_tujuan

Modifying Group Settings


Ketika group yang sudah ada dan kita perlu mengubah beberapa pada group tersebut,
dapat menggunakan perintah groupmod. Logika syntax groupmod sama seperti syntax
milik groupadd.

groupmod option(s) groupname


Untuk mengubah ID dapat menggunakan perintah groupmod seperti berikut :

groupmod -g GID_NEW group_tujuan

Untuk mengubah nama group, dapat menjalankan perintah berikut. Nama group akan
berubah dari groupname menjadi NEW_Group_Name.

groupmod -n NEW_GROUP_NAME groupname

Changing Group’s Name

Perintah di bawah akan mencontohkan perubahan nama group dari schoolmates menjadi
crowd :

~]# groupmod -n schoolmates crowd

Deleting Groups
Perintah groupdel menghapus seluruh entri yang berkaitan dengan group. Nama grup
yang akan dihapus harus ada pada sistem.

groupdel groupname

YUM PACKAGE MANAGER


Sistem Red Hat Subscription Service menyediakan mekanisme untuk menangani inventory
software milik Red Hat dan membuat kita dapat menginstal software tambahan atau
memperbarui (update) program yang telah diinstall ke versi yang lebih baru menggunakan
Yum Package Manager atau PackageKit.

Registering The System and Attaching Subscription


Langkah-langkah berikut adalah cara untuk mendaftarkan sistem kita dan melampirkan satu
atau lebih subscription menggunakan Red Hat Subscription Management. Perhatikan bahwa
semua perintah dijalankan sebagai root.

1. Jalankan perintah berikut untuk mendaftarkan sistem kita. Kita akan dimintai
untuk memasukan username dan password kita. Username dan Password
sama dengan milik akun Red Hat Customer Portal.

subscription-manager register

2. Tentukan Pool ID dari Subscription yang kita perlukan. Untuk melakukannya,


perintah berikut dapat digunakan untuk menampilkan daftar semua
langganan yang tersedia untuk sistem kita.

subscription-manager list --available

Untuk setiap langganan yang tersedia, perintah ini menampilkan namanya,


unique identifier, tanggal kadaluarsa, dan detail lain yang berkaitan dengan
langganan kita. Pool ID terdaftar pada baris yang diawali dengan Pool ID.

3. Lampirkan langganan yang sesuai dengan sistem kita dengan memasukan


perintah berikut :

subscription-manager attach --pool=pool_id

Ganti pool_id dengan Pool ID yang kita tentukan pada langkah


sebelumnya.

Untuk memverifikasi daftar langganan yang telah terikat pada sistem kita
dapat menjalankan perintah

subscription-manager list --consumed


Managing Software Repositories
Ketika system kita telah berlangganan pada Red Hat Content Delivery Network, file
repository dibuat pada direktori /etc/yum/repos.d/. Untuk memverifikasi hal tersebut,
gunakan yum untuk mencantumkan semua repository yang telah aktif :

yum repolist

Red Hat Subscription Management juga memungkinkan kita untuk mengaktifkan atau
mematikan repository software yang disediakan oleh Red Hat secara manual. Untuk
mendaftar semua repository yang tersedia, dapat menggunakan perintah berikut :

subscription-manager repos --list

Untuk mengaktifkan repository, dapat menggunakan seperti perintah dibawah :

subscription-manager repos --enable repository

Ubah repository menjadi nama repository yang ingin diaktifkan.

Demikian pula, untuk mematikan repository, dapat menggunakan perintah berikut :

subscription-manager repos --disable repository

Removing Subscription
Untuk menghapus langganan tertentu, dapat mengikuti tahap-tahap berikut :

1. Tentukan nomor seri langganan yang ingin kita hapus dengan mencantumkan
informasi langganan yang telah terikat :
subscription-manager list --consumed

Nomor seri adalah nomor yang tertera sebagai Serial. Misalnya,


744993814251016831 seperti contoh dibawah.

SKU: ES0113909
Contract: 01234567
Account: 1234567
Serial: 744993814251016831
Pool ID: 8a85f9894bba16dc014bccdd905a5e23
Active: False
Quantity Used: 1
Service Level: SELF-SUPPORT
Service Type: L1-L3
Status Details:
Subscription Type: Standard
Starts: 02/27/2015
Ends: 02/27/2016
System Type: Virtual

2. Ketikan perintah berikut untuk menghapus langganan yang sudah kita pilih :

subscription-manager remove --serial=serial_number

Ubah serial_number menjadi nomor seri yang telah ditentukan pada step
sebelumnya.

Untuk menghapus semua langganan yang terikat pada sistem, dapat dengan menjalankan
perintah berikut :

subscription-manager remove --all


Searching Packages
Kita dapat mencari semua nama paket RPM, deskripsi dan ringkasan dengan menggunakan
perintah berikut :

yum search term...

Ubah term... menjadi nama paket yang ingin dicari, contoh :

~]# yum search vim

Loaded plugins: langpacks, product-id, search-disabled-repos,


subscription-manager
============================= N/S matched: vim ==============================
vim-X11.x86_64 : The VIM version of the vi editor for the X Window System
vim-common.x86_64 : The common files needed by any version of the VIM editor
[output truncated]

Perintah yum search berguna untuk mencari package yang tidak kita ketahui namanya,
tetapi kita tahu istilah terkait. Perhatikan bahwa secara default, yum search mencocokan
nama package dan ringkasan, yang membuat pencarian lebih cepat. Gunakan perintah yum
search all untuk pencarian yang lebih lengkap tetapi lebih lambat.

Displaying Package Information


Untuk menampilkan informasi tentang satu package atau lebih, dapat menggunakan
perintah berikut :

yum info package_name

Misalnya, untuk menampilkan informasi tentang package abrt, ketik :

~]# yum info abrt


Loaded plugins: product-id, refresh-packagekit,
subscription-manager
Updating Red Hat repositories.
INFO:rhsm-app.repolib:repos updated: 0
Installed Packages
Name : abrt
Arch : x86_64
Version : 1.0.7
Release : 5.el6
Size : 578 k
Repo : installed
From repo : rhel
Summary : Automatic bug detection and reporting tool
URL : https://fedorahosted.org/abrt/
License : GPLv2+
Description: abrt is a tool to help users to detect defects in
applications
: and to create a bug report with all informations
needed by
: maintainer to fix it. It uses plugin system to
extend its
: functionality.

Perintah yum info package_name mirip dengan perintah rpm -q --info


package_name, tetapi memberikan informasi tambahan ID dari repository Yum tempat
package RPM ditemukan.

Kita juga bisa meminta database Yum untuk informasi alternatif dan berguna tentang
package dengan menggunakan perintah berikut :

yumdb info package_name

Perintah ini memberikan informasi tambahan tentang sebuah package, termasuk


pemeriksaan jumlah paket (dan algoritma yang digunakan untuk memproduksinya, seperti
SHA-256), perintah yang diberikan pada baris perintah yang dipanggil untuk menginstal
paket (jika ada), dan alasan bahwa paket tersebut diinstal pada sistem (dimana pengguna
mengindikasikan bahwa paket tersebut di instal oleh pengguna, dan artinya paket tersebut
dibawa sebagai dependensi). Misalnya, untuk menampilkan informasi tambahan tentang
paket yum, ketik :

~]# yumdb info yum

Loaded plugins: product-id, refresh-packagekit,


subscription-manager
yum-3.2.27-4.el6.noarch
checksum_data =
23d337ed51a9757bbfbdceb82c4eaca9808ff1009b51e9626d540f44fe95f771
checksum_type = sha256
from_repo = rhel
from_repo_revision = 1298613159
from_repo_timestamp = 1298614288
installed_by = 4294967295
reason = user
releasever = 6.1

Listing Files Contained in a Package


repoquery adalah sebuah program untuk menanyakan informasi dari repository yum mirip
dengan query rpm. Kita dapat menanyakan grup paket dan paket individual. Untuk membuat
daftar semua file yang terdapat dalam paket tertentu, ketik :

repoquery --list package_name

Ubah package_name menjadi nama dari paket yang ingin kita inspeksi.
Installing Packages
Yum memungkinkan kita untuk menginstal satu paket dan beberapa paket, serta grup paket
pilihan kita.

Installing Individual Packages


Untuk satu menginstal paket dan dependensi yang tidak diinstal, masukan perintah berikut :

yum install package_name

Kita juga bisa menginstal beberapa paket secara bersamaan dengan menambahkan
namanya sebagai argumen :

yum install package_name package_name

Jika kita menginstal paket pada sistem multilib, seperti Mesin AMD64 atau Intel 64, kita
dapat menentukan arsitektur paket (selama tersedia di repository yang diaktifkan) dengan
menambahkan .arch ke nama paket. Misalnya, untuk menginstal paket sqlite untuk i686,
ketik :

~]# yum install sqlite.i686

Kita juga dapat menggunakan ekspresi glob untuk menginstal dengan cepat beberapa paket
dengan nama yang mirip :

~]# yum install perl-Crypt-\*

Selain nama paket dan ekspresi glob, kita juga dapat memberikan nama file ke yum
install. Jika kita tahu nama biner yang ingin anda install, tetapi bukan nama paketnya,
kita dapat memberi yum install :
~]# yum install /usr/sbin/named

yum akan mencari melalui daftar paketnya, menemukan paket yang menyediakan
/usr/sbin/named, jika ada, akan menanyakan apakah kita akan menginstallnya.

Installing a Package Group


Sebuah grup paket mirip dengan sebuah paket : itu tidak berguna dengan sendirinya, tetapi
menginstal sekelompok paket dependen yang melayani tujuan yang sama. Grup paket
memiliki nama dan groupid. Perintah yum grouplist -v mencantumkan nama semua
grup paket, dan di samping masing-masing groupid mereka dalam tanda kurung. Groupid
merupakan istilah dalam pasangan tanda kurung terakhir, seperti kde-desktop pada
contoh berikut :

~]# yum -v grouplist kde\*


Loading "product-id" plugin
Loading "refresh-packagekit" plugin
Loading "subscription-manager" plugin
Updating Red Hat repositories.
INFO:rhsm-app.repolib:repos updated: 0
Config time: 0.123
Yum Version: 3.2.29
Setting up Group Process
Looking for repo options for [rhel]
rpmdb time: 0.001
group time: 1.291
Available Groups:
KDE Desktop (kde-desktop)
Done

Kita dapat menginstal grup paket dengan mengirimkan nama grup lengkapnya (tanpa
bagian groupid) ke groupinstall :

yum groupinstall group_name


Kita juga bisa menginstal menggunakan groupid.

yum groupinstall groupid

Sebagai contoh, berikut cara alternatif yang setara untuk menginstal grup kde-desktop:

~]# yum groupinstall “KDE Desktop”


~]# yum groupinstall kde-desktop
~]# yum install @kde-desktop

Removing Packages
Sama halnya dengan instalasi paket, Yum membiarkan kita untuk menghapus baik paket
individu maupun grup paket.

Removing Individual Packages


Untuk menghapus paket tertentu, serta paket apapun yang bergantung padanya, jalankan
perintah berikut sebagai root:

yum remove package_name

Seperti saat kita menginstal beberapa paket, Kita bisa menghapus beberapa sekaligus
dengan menambahkan lebih banyak nama paket ke perintah. Misalnya, untuk menghapus
totem, rhythmbox, dan sound-juicer, ketikan perintah berikut pada prompt shell :

~]# yum remove totem rhythmbox sound-juicer

Mirip dengan install, remove dapat menggunakan argumen berikut :

● Packages Names
● glob Expressions

● File Lists

● Package Provides

Removing a Package Group


Kita dapat menghapus grup paket menggunakan syntax yang kongruen dengan syntax
install :

yum groupremove group

yum remove @group

Berikut ini adalah cara alternatif namun setara untuk menghapus grup kde-desktop :

~]# yum groupremove "KDE Desktop"


~]# yum groupremove kde-desktop
~]# yum remove @kde-desktop
REMOTE SERVER
The SSH Protocol

Why Use The SSH Protocol ?


Penyusup memiliki berbagai alat yang memungkinkan mereka untuk mengganggu,
mencegat, dan merutekan ulang lalu lintas jaringan dalam upaya mendapatkan akses ke
sistem. Secara umum, ancaman tersebut dapat dikategorikan sebagai berikut :

● Interception of communication between two system

Penyerang bisa berada di suatu tempat pada jaringan antara pihak-pihak yang
berkomunikasi, menyalin informasi apapun yang lewat di antara mereka. dia dapat
mencegat, dan menyimpan informasi atau mengubah informasi dan mengirimnya ke
penerima yang dituju.

Serangan ini biasanya dilakukan dengan menggunakan Packet Sniffer, sebuah


utilitas jaringan yang agak umum yang menangkap setiap paket yang mengalir
melalui jaringan, dan menganalisa isinya.

● Impersonation of a particular host

Sistem penyerang dikonfigurasikan untuk berpura-pura sebagai penerima transmisi


yang dituju. Jika strategi ini berhasil, sistem user tetap tidak menyadari bahwa ia
berkomunikasi dengan host yang salah.

Serangan ini dapat dilakukan dengan teknik yang dikenal sebagai DNS Poisoning,
atau IP Spoofing. Dalam kasus pertama, penyusup menggunakan server DNS yang
telah di-crack untuk mengarahkan sistem klien ke host duplikat yang berbahaya.
Dalam kasus kedua, penyusup mengirimkan paket jaringan palsu yang tampaknya
berasal dari host terpercaya.

Kedua teknik tersebut mencegat informasi yang berpotensi sensitif, dan jika penyadapan
dilakukan karena alasan yang tidak bersahabat, hasilnya dapat menjadi bencana. Jika SSH
digunakan untuk login shell jarak jauh dan penyalinan file, ancaman keamanan ini dapat
sangat berkurang. Ini karena klien dari ssh menggunakan “tanda tangan” digital untuk
memverifikasi identitas mereka. Selain itu, semua komunikasi antara server dan klien
dienkripsi. Upaya untuk memalsukan identitas dari kedua sisi komunikasi tidak akan
berhasil, karena setiap paket yang dienkripsi menggunakan kunci yang hanya diketahui oleh
sistem lokal dan jarak jauh.
Starting an OpenSSH Server
Secure Shell (SSH) adalah protokol kriptografi yang memungkinkan klien berinteraksi
dengan server jarak jauh dengan jalur komunikasi yang aman.

Enkripsi tingkat tinggi melindungi pertukaran informasi yang sensitif antara komunikasi klien
dan server, dan memungkinkan file transfer atau mengeluarkan perintah pada mesin jarak
jauh dengan aman.

Installing Package
Untuk menjalankan server OpenSSH, kita install terlebih dahulu package
openssh-server.

~]$ sudo yum -y install openssh-server

Starting SSH Service


Untuk mengaktifkan daemon sshd, ketikan perintah dibawah :

~]$ sudo systemctl sshd start

Untuk mematikannya, dapat menggunakan perintah berikut :

~]$ sudo systemctl sshd stop

Untuk mengaktifkannya secara otomatis saat booting, ketik :

~]$ sudo chkconfig sshd on


Configuring SSH Server
Kita dapat membiasakan dulu dengan folder konfigurasi yang berada di /etc/ssh. Kita akan
menemukan beberapa file konfigurasi dalam folder ini, namun konfigurasi server berada di
file sshd_config.

Terdapat banyak option konfigurasi, akan tetapi kita akan fokus ke yang terpenting.

Port 22 # Penentuan port sshd berjalan

AddressFamily any # Menggunakan IPv4, IPv6 atau keduanya

ListenAddress 0.0.0.0 # Mendengarkan Address yang ditentukan,


dapat menggunakan IPv4 atau IPv6

PermitRootLogin no # Mengizinkan root untuk menggunakan


ssh

MaxAuthTries 6 # Jumlah percobaan login

MaxSessions 10 # Jumlah maksimal login bersama

PubkeyAuthentication yes # Jika di set yes memungkinkan user


untuk memakai autentikasi public key

PasswordAuthentication yes # Akan meminta password jika di set


yes
FTP SERVER
File Transfer Protocol (FTP) adalah salah satu protokol tertua dan paling umum digunakan
dan ditemukan di internet. Tujuannya adalah untuk mentransfer file dari host komputer di
jaringan tanpa mengharuskan pengguna untuk masuk secara langsung ke host jarak jauh
atau memiliki pengetahuan tentang cara menggunakan sistem remote. Ini memungkinkan
pengguna untuk mengakses file pada sistem jarak jauh hanya menggunakan serangkaian
perintah yang sederhana.

VSFTPD As FTP Server


Very Secure FTP Daemon (vsftpd) dirancang agar cepat, stabil, dan yang paling penting
aman. vsftpd adalah satu-satunya server ftp yang standalone pada Red Hat Enterprise
Linux, karena kemampuannya untuk menangani koneksi yang berjumlah besar secara
efisien dan aman.

Installing Package
Untuk menjalankan server FTP, kita install terlebih dahulu package vsftpd.

~]# yum -y install vsftpd

Starting FTP Service


Untuk mengaktifkan daemon vsftpd, ketikan perintah dibawah :

~]$ sudo systemctl vsftpd start

Untuk mematikannya, dapat menggunakan perintah berikut :

~]$ sudo systemctl vsftpd stop

Untuk mengaktifkannya secara otomatis saat booting, ketik :

~]$ sudo systemctl vsftpd enable


Configuring FTP Server
Sekarang kita akan beralih untuk melakukan beberapa konfigurasi untuk mengatur server
dan mengamankan server ftp kita, kita mulai dari membuat cadangan file konfigurasi asli di
/etc/vsftpd/vsftpd.conf :

~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.asli

Setelah itu kita buka file konfigurasi diatas, dan setel beberapa bagian berikut :

anonymous_enable=NO # disable login anonymous

local_enable=YES # mengizinkan login local

write_enable=YES # enable perintah FTP yang


mengubah sistem file

local_umask=022 # nilai umask untuk pembuatan file


bagi pengguna lokal

dirmessage_enable=YES # akan menampilkan pesan saat pengguna


pertama kali masuk direktori baru

xferlog _enable=YES # file log akan mencatat dengan


merinci unggahan dan unduhan

connect_from_port_20=YES # gunakan port 20 (ftp-data) pada


mesin server untuk koneksi PORT

xferlog_std_format=YES # menjaga format file log standar

listen=NO # mencegah vsftpd berjalan pada mode


standalone
listen_ipv6=YES # vsftpd akan mendengarkan ipv6,
daripada ipv4

pam_service_name=vsftpd # nama layanan PAM akan digunakan


vsftpd

userlist_enable=YES # vsftpd akan memuat daftar nama


pengguna

tcp_wrappers=YES # menyalakan tcp wrappers

Sekarang kita akan konfigurasikan FTP agar mengizinkan / menolak akses FTP ke
pengguna berdasarkan file daftar pengguna pada /etc/vsftpd.userlist.

Secara default, pengguna yang terdaftar di userlist_file=/etc/vsftpd.userlist


ditolak akses masuk dengan opsi userlist_deny di set ke YES, jika
userlist_enable=YES.

Namun, userlist_deny=NO mengubah pengaturan, artinya hanya pengguna yang


terdaftar di userlist_file=/etc/vsftpd.userlist yang diizinkan masuk.

userlist_enable=YES # vsftpd akan memuat daftar


nama pengguna dari file yang diberikan oleh userlist_file.

userlist_file=/etc/vsftpd.userlist # menyimpan usernames.

userlist_deny=NO

Tidak hanya itu ketika pengguna masuk ke server ftp, mereka ditempatkan di chroot, ini
adalah direktori root lokal yang akan bertindak sebagai direktori home mereka hanya untuk
sesi FTP.

Selanjutnya, kita akan melihat dua kemungkinan skenario bagaimana melakukan chroot
pengguna FTP ke direktori home (root lokal) untuk pengguna FTP, seperti contoh dibawah.
chroot_local_user=YES
allow_writeable_chroot=YES

chroot_local_user=YES berarti pengguna lokal akan ditempatkan di chroot, directory


home mereka setelah login dengan pengaturan default.

Dan juga secara default, vsftpd mengizinkan direktori chroot menjadi writable demi alasan
keamanan, namun, kita dapat menggunakan option allow_writeable_chroot=YES
untuk mengesampingkan pengaturan ini.

Simpan file lalu tutup.


DNS SERVER
DNS (Domain Name System), juga dikenal sebagai nameserver, adalah sebuah sistem
jaringan yang menghubungkan nama host dengan IP Address masing-masing. Bagi
pengguna, ini memiliki keuntungan yang bisa mereka arahkan ke mesin dengan
menggunakan nama yang biasanya lebih mudah diingat daripada angka numerik.

Introduction to DNS
DNS biasanya diimplementasikan menggunakan satu atau lebih server terpusat yang
otoritatif untuk domain tertentu. Ketika host klien meminta informasi dari nameserver,
biasanya ia terhubung ke port 53. nameserver kemudian mencoba untuk menjelaskan nama
yang diminta. Jika tidak memiliki jawaban yang otoriter, atau belum memiliki jawaban yang
di-cache dari kueri sebelumnya, itu akan menanyakan nameserver lain, yang disebut
dengan root nameserver, untuk menentukan nameserver mana yang otoriter untuk nama
yang dimaksud, lalu menanyakan mereka untuk mendapatkan nama yang diminta.

Nameserver Zone
Dalam server DNS seperti BIND (Berkeley Internet Name Domain), semua informasi
disimpan dalam elemen data yang disebut Resource Record (RR). RR biasanya merupakan
nama domain yang Fully Qualified Domain Name (FQDN) dari sebuah host, dan dipecah
menjadi beberapa bagian yang diatur menjadi hierarki seperti pohon. Hierarki ini terdiri dari
batang utama, cabang primer, cabang sekunder dan lain sebagainya.

Contoh Domain

ppdb.idn.sch.id

Setiap tingkat hierarki dibagi dengan karakter titik (.). Pada contoh diatas, id mendefinisikan
domain level teratas, sch subdomainnya, idn subdomain dari sch, lalu ppdb adalah
identifikasi resource records yang merupakan bagian dari domain idn.sch.id.
Masing-masing bagian ini disebut zones dan mendefinisikan namespace tertentu kecuali
bagian yang paling kiri (pada contoh yaitu, ppdb).
Zones ditentukan pada nameserver otoritatif melalui penggunaan file zona, yang berisi
definisi dari resource records daya di setiap zones. File zones disimpan di nameserver
utama (biasa disebut master nameserver), di mana perubahan dilakukan pada file, dan
nameserver sekunder (juga disebut slave nameserver), yang menerima definisi zones dari
nameserver utama. Baik primer dan nameserver sekunder memiliki otoritas untuk zones
tersebut dan terlihat sama bagi klien. Tergantung pada konfigurasi, nameserver apapun juga
dapat berfungsi sebagai server primer atau sekunder untuk beberapa zones di waktu yang
sama.

Nameserver Types
Terdapat 2 tipe konfigurasi nameserver yaitu :

● Authoritative
Nameserver ini akan memberikan resource records yang merupakan zones-nya saja. Tipe
nameserver yang masuk pada kategori ini adalah nameserver primer (master) dan sekunder
(slave).

● Recursive
Nameserver ini menawarkan layanan resolusi, tetapi tidak berkuasa untuk zones manapun.
Jawaban untuk semua resolusi di-cache dalam memori untuk periode waktu tertentu, yang
sudah ditentukan oleh resource records yang diambil.

BIND As a Nameserver
BIND terdiri dari sekumpulan program yang berhubungan dengan DNS. Ini berisi
nameserver yang disebut named, sebuah utilitas administrasi yang disebut rndc, dan alat
debugging yang disebut dig.

Bab ini mencakup BIND (Berkeley Internet Name Domain), server DNS yang ada dalam Red
Hat Enterprise Linux. Ini berfokus pada struktur konfigurasi file-nya, dan menjelaskan cara
mengelolanya baik secara lokal atau jarak jauh.
Installing Packages
Untuk menjalankan server DNS, kita install terlebih dahulu package bind dan bind-utils.

~]# yum -y install bind bind-utils

named Service
Ketika layanan dari named telah dijalankan, ia akan membaca konfigurasi dari file-nya.

Letak File Konfigurasi

Path Description

/etc/named.conf File konfigurasi utama

/etc/named/ Direktori tambahan yang disertakan pada file konfigurasi utama

File konfigurasi terdiri dari kumpulan pernyataan (statement) dengan sekumpulan opsi yang
dikelilingi oleh tanda kurung kurawal ({}). Perhatikan saat mengedit file, Kita haru berhati-hati
agar tidak membuat sintaks apapun error, jika tidak layanan named tidak dapat dimulai. File
/etc/named.conf diatur seperti berikut :

statement-1 ["statement-1-name"] [statement-1-class] {


option-1;
option-2;
option-N;
};
statement-2 ["statement-2-name"] [statement-2-class] {
option-1;
option-2;
option-N;
};
statement-N ["statement-N-name"] [statement-N-class] {
option-1;
Deployment Guide
option-2;
option-N
};

Buka file named.conf untuk kita setting.

~]# vi /etc/named.conf

Berikut contoh bagian yang harus dirubah pada tabel dibawah. Bagian yang ditebalkan
adalah bagian yang perlu ditambahkan. Lalu tambahkan nama zone-nya, dengan
menggunakan nama domain yang akan digunakan.

options {
listen-on port 53 { 127.0.0.1; 192.168.79.10;};
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; any;};

Lalu tambahkan zone pada bagian paling bawah seperti berikut.

zone "." IN {
type hint;
file "named.ca";
};

zone "contoh.com" IN {
type master;
file "db.contoh.com";
allow-update { none; };
};

zone "79.168.192.in-addr.arpa" IN {
type master;
file "db.79.168.192";
allow-update { none; };
};

Forward and Reverse Zone


Selanjutnya kita akan membuat file forward dan reverse DNS. direktorinya secara default
terletak di /var/named. Dan untuk pemberian nama harus disesuaikan dengan yang
tercantum pada file named.conf, misalnya db.contoh.com sebagai file forwardnya dan
db.79.168.192 untuk file reversenya.

~]# nano /var/named/db.contoh.com

Berikut contoh isi pada file forward zone-nya.

$TTL 86400
@ IN SOA ns.contoh.com. root.contoh.com. (
2018100901 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
@ IN NS ns.contoh.com.
@ IN NS www.contoh.com.
@ IN A 192.168.79.10
ns IN A 192.168.79.10
www IN A 192.168.79.10
Setelah itu kita buat file reverse zone-nya.

~]# nano /var/named/db.79.168.192

Untuk isi filenya kurang lebih seperti ini :

$TTL 86400
@ IN SOA ns.contoh.com. root.contoh.com. (
2018100902 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
@ IN NS ns.contoh.com.
@ IN NS www.contoh.com.
ns IN A 192.168.79.10
www IN A 192.168.79.10
10 IN PTR ns.contoh.com.
10 IN PTR www.contoh.com.

Setelah kita membuat file forward dan reverse, pastikan bahwa file named.conf dan kedua
file zone sudah benar. Dapat menggunakan perintah berikut untuk mengecek file
named.conf :

~]# named-checkconf /etc/named.conf

Jika setelah ditekan ENTER tidak muncul apa-apa, maka file named.conf sudah benar
atau tidak ada masalah. Untuk cek file zone dapat menggunakan perintah berikut :

~]# named-checkzone contoh.com /var/named/db.contoh.com


zone contoh.com/IN: loaded serial 2018100901
OK

~]# named-checkzone contoh.com /var/named/db.79.168.192


zone contoh.com/IN: loaded serial 2018100902
OK

Jika result dari file forward dan reversenya seperti diatas berarti tidak ada masalah. Jika
belum benar maka akan muncul keterangan di baris mana kesalahannya. Apakah kurang
titik, koma, semicolon (;), belum menambahkan A Record atau lain-lain. Selanjutnya kita
hidupkan service bind-nya dengan perintah :

~]# systemctl start named

~]# systemctl enable named


Konfigurasi Firewall (Optional)

*Jika firewall tidak aktif, dapat melewati step ini.*

Setelah itu terdapat beberapa konfigurasi tambahan seperti firewall, sampai permission file
forward dan reverse. Service DNS menggunakan port 53 (UDP), jika firewall tidak menyala
kita dapat melewati bagian ini, jika menyala kita harus allow port 53 pada firewall dengan
perintah :

~]# firewall-cmd --permanent --add-port=53/tcp


success

~]# firewall-cmd --permanent --add-port=53/udp


success

~]# firewall-cmd --reload


success

Konfigurasi Tambahan
Selanjutnya kita tambahkan permission untuk file forward dan reverse maupun file
named.conf dengan menggunakan perintah berikut :

~]# chgrp named -R /var/named/

~]# chown root:named /etc/named.conf


ownership of '/etc/named.conf' retained as root:named

~]# restorecon -rv /var/named/

~]# restorecon /etc/named.conf


Terakhir kita edit file resolv.conf. Masukan IP Server DNS, urutan IP-IP di resolv.conf
sangat mempengaruhi urutan mesin untuk resolv masing-masing DNS. Jika urutan
pertamanya adalah IP Lokal maka server akan resolv ke dns lokal dan bukan ke dns publik.

~]# nano /etc/resolv.conf

Contoh Hasil :

# Generated by NetworkManager
search contoh.com
nameserver 192.168.79.10
nameserver 192.168.79.10

Setelah itu kita restart network pada server dengan perintah :

~]# systemctl restart network


WEB SERVER
Server HTTP (Hypertext Transfer Protocol), atau server web, adalah layanan jaringan yang
menyajikan konten ke klien melalui web. Ini biasanya berarti halaman web, tetapi dokumen
lain juga bisa disajikan.

Server web yang tersedia di Red Hat Enterprise Linux adalah :


● Apache HTTP Server
● nginx

Apache HTTP Server


Bagian ini kita akan fokus kepada Apache HTTP Server, server web yang tangguh dan
berfitur lengkap dikembangkan oleh Apache Software Foundation, yang ada di Red Hat
Enterprise Linux. Itu menjelaskan konfigurasi dasar layanan httpd, dan mencakup topik
lanjutan seperti menambahkan modul server, menyiapkan host virtual, atau mengkonfigurasi
server HTTP yang aman.

Installing Package
Untuk dapat menggunakan layanan httpd, pastikan kita install terlebih dahulu package httpd.
Dapat kita lakukan dengan perintah berikut :

~]# yum -y install httpd

Starting HTTP Service


Untuk menjalankan layanan httpd, ketik perintah berikut sebagai root :

~]# service httpd start


Starting httpd:

Jika ingin layanan dimulai secara otomatis saat boot, gunakan perintah berikut :

~]# chkconfig httpd on


Untuk menghentikan layanan httpd, ketik perintah berikut sebagai root :

~]# service httpd stop


Stopping httpd:

Untuk mencegah layanan dimulai secara otomatis saat boot, gunakan perintah berikut :

~]# chkconfig httpd off

Untuk memverifikasi bahwa layanan httpd sedang berjalan, ketik perintah berikut :

~]# service httpd status


httpd (pid 19014) is running...

Restarting The Service


Ada tiga cara berbeda untuk memulai kembali (restart) layanan httpd yang sedang berjalan :

1. Untuk restart layanan sepenuhnya, gunakan perintah berikut sebagai root :

~]# service httpd restart


Stopping httpd: [ OK ]
Starting httpd: [ OK ]

Ini menghentikan layanan httpd yang sedang berjalan dan segera memulainya lagi.
Gunakan perintah ini setelah menginstal atau menghapus modul yang dimuat secara
dinamis seperti PHP.

2. Untuk restart konfigurasi, gunakan perintah berikut sebagai root :

~]# service httpd reload


Hal ini menyebabkan layanan httpd yang sedang berjalan memuat ulang file
konfigurasinya. Permintaan apapun saat proses ini berjalan akan terganggu, yang
dapat menyebabkan browser klien menampilkan pesan kesalahan atau render hanya
sebagian halaman.

3. Untuk restart konfigurasi tanpa mengganggu permintaan klien yang sedang aktif,
masukan perintah berikut sebagai root :

~]# service httpd graceful

Hal ini menyebabkan layanan httpd yang sedang berjalan memuat ulang
konfigurasinya. Permintaan apapun saat proses ini berjalan akan diproses
menggunakan konfigurasi lama
MAIL SERVER
Red Hat Enterprise Linux menawarkan banyak aplikasi canggih untuk melayani dan
mengakses email. Bab ini akan menjelaskan protokol email modern yang digunakan saat ini,
dan beberapa program yang dirancang untuk mengirim dan menerima email, salah satunya
adalah zimbra.

Zimbra Collaboration Suite


Zimbra Collaboration Suite (ZCS) adalah sebuah platform untuk kolaborasi server email,
dikembangkan dalam dua edisi, edisi Open Source (gratis), dan Network Edition (berbayar),
yang menyediakan layanan seperti LDAP, SMTP, POP, dan IMAP, klien webmail, kalender,
task, antivirus, antispam dan lainnya.

Installing Utility Packages


Untuk menginstal package zimbra dapat mengetikan perintah berikut dengan akses root :

~]# yum -y install unzip net-tools sysstat openssh-clients


perl-core libaio nmap-ncat libstdc++.so.6

Selanjutnya, kita periksa apakah SeLinux berjalan pada mesin kita dengan perintah
getenforce. Jika terdapat kebijakan yang disetel Enforced nonaktifkan dengan
mengeluarkan perintah berikut :

~]# getenforce
~]# setenforce 0
~]# getenforce

Lalu kita install sistem utilitas wget, dengan menggunakan perintah berikut :

~]# yum -y install wget

Installing Zimbra Collaboration Suite Open Source Edition


Sekarang saatnya memasang ZCS. Dapat menggunakan perintah berikut :
~]# wget
https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3869.R
HEL7_64.20190918004220.tgz

Setelah selesai mengunduh, gunakan perintah unzip untuk mengekstrak arsip, masuk ke
direktori Zimbra yang telah diekstrak lalu lihat isi kontennya untuk menemukan file
penginstal.

~]# tar xfz zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz


~]# cd zcs-8.8.15_GA_3953.RHEL8_64.20200629025823/
~]# ls

Sekarang, mulai proses instalasi Zimbra dengan menjalankan file script installer bernama
install.sh.

Setelah serangkaian pemeriksaan sistem, installer akan meminta kita untuk menerima
lisensi. Setuju dengan lisensi (Y) untuk melanjutkan proses instalasi.

~]# ./install.sh

Contoh Output :

Operations logged to /tmp/install.log.92OcKO6s


Checking for existing installation...
zimbra-drive...NOT FOUND
zimbra-imapd...NOT FOUND
zimbra-patch...NOT FOUND
zimbra-mta-patch...NOT FOUND
zimbra-proxy-patch...NOT FOUND
zimbra-license-tools...NOT FOUND
zimbra-license-extension...NOT FOUND
zimbra-network-store...NOT FOUND
zimbra-network-modules-ng...NOT FOUND
zimbra-chat...NOT FOUND
zimbra-talk...NOT FOUND
zimbra-ldap...NOT FOUND
zimbra-logger...NOT FOUND
zimbra-mta...NOT FOUND
zimbra-dnscache...NOT FOUND
zimbra-snmp...NOT FOUND
zimbra-store...NOT FOUND
zimbra-apache...NOT FOUND
zimbra-spell...NOT FOUND
zimbra-convertd...NOT FOUND
zimbra-memcached...NOT FOUND
zimbra-proxy...NOT FOUND
zimbra-archiving...NOT FOUND
zimbra-core...NOT FOUND

-----------------------------------------------------------------
-----
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE.
SYNACOR, INC. ("SYNACOR") WILL ONLY LICENSE THIS SOFTWARE TO YOU
IF YOU
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR
INSTALLING
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE
BOUND BY
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT.

License Terms for this Zimbra Collaboration Suite Software:


https://www.zimbra.com/license/zimbra-public-eula-2-6.html
-----------------------------------------------------------------
-----
Do you agree with the terms of the software license agreement?
[N] y

Selanjutnya, proses instalasi akan menanyakan serangkaian pertanyaan untuk


mengkonfigurasikan daemon zimbra dengan benar.

Use Zimbra's package repository [Y] y

Importing Zimbra GPG key

Configuring package repository

Checking for installable packages

Found zimbra-core (local)


Found zimbra-ldap (local)
Found zimbra-logger (local)
Found zimbra-mta (local)
Found zimbra-dnscache (local)
Found zimbra-snmp (local)
Found zimbra-store (local)
Found zimbra-apache (local)
Found zimbra-spell (local)
Found zimbra-memcached (repo)
Found zimbra-proxy (local)
Found zimbra-drive (repo)
Found zimbra-imapd (local)
Found zimbra-patch (repo)
Found zimbra-mta-patch (repo)
Found zimbra-proxy-patch (repo)
Select the packages to install

Install zimbra-ldap [Y] y

Selanjutnya, kita akan diminta untuk menginstal paket zimbra, tekan Y untuk menginstal
semua.

Select the packages to install

Install zimbra-ldap [Y] y


Install zimbra-logger [Y] y
Install zimbra-mta [Y] y
Install zimbra-dnscache [Y] y
Install zimbra-snmp [Y] y
Install zimbra-store [Y] y
Install zimbra-apache [Y] y
Install zimbra-spell [Y] y
Install zimbra-memcached [Y] y
Install zimbra-proxy [Y] y

Checking required space for zimbra-core


Checking space for zimbra-store
Checking required packages for zimbra-store

zimbra-store package check complete.


Installing: zimbra-core zimbra-ldap zimbra-logger zimbra-mta
zimbra-dnscache zimbra-snmp zimbra-store zimbra-apache
zimbra-spell zimbra-memcached zimbra-proxy zimbra-drive
zimbra-imapd zimbra-patch zimbra-mta-patch zimbra-proxy-patch
zimbra-chat

Terakhir, proses instalasi zimbra akan mulai.


The system will be modified. Continue? [N] y

Beginning Installation - see /tmp/install.log.92OcKO6s for


details...

zimbra-core-components will be downloaded and installed.


zimbra-common-core-jar will be installed.
zimbra-common-core-libs will be installed.
zimbra-common-mbox-conf will be installed.
zimbra-common-mbox-conf-attrs will be installed.
zimbra-common-mbox-conf-msgs will be installed.
zimbra-common-mbox-conf-rights will be installed.
zimbra-common-mbox-db will be installed.
zimbra-common-mbox-docs will be installed.
zimbra-common-mbox-native-lib will be installed.
zimbra-timezone-data will be installed.
zimbra-core will be installed.
zimbra-ldap-components will be downloaded and installed.
zimbra-ldap will be installed.
zimbra-logger will be installed.
zimbra-mta-components will be downloaded and installed.
zimbra-mta will be installed.
zimbra-dnscache-components will be downloaded and installed.
zimbra-dnscache will be installed.
zimbra-snmp-components will be downloaded and installed.
zimbra-snmp will be installed.

Last metadata expiration check: 0:00:56 ago on Sat 01 Aug 2020


01:56:00 AM EDT.
zimbra-jetty-distribution will be downloaded and installed.
zimbra-store-components will be downloaded and installed.
zimbra-mbox-admin-console-war will be installed.
zimbra-mbox-conf will be installed.
zimbra-mbox-war will be installed.
zimbra-mbox-service will be installed.
zimbra-mbox-store-libs will be installed.
zimbra-mbox-webclient-war will be installed.
zimbra-store will be installed.
zimbra-apache-components will be downloaded and installed.
zimbra-apache will be installed.
zimbra-spell-components will be downloaded and installed.
zimbra-spell will be installed.

Last metadata expiration check: 0:01:07 ago on Sat 01 Aug 2020


01:56:00 AM EDT.
zimbra-memcached will be downloaded and installed.
zimbra-proxy-components will be downloaded and installed.
zimbra-proxy will be installed.

Last metadata expiration check: 0:01:18 ago on Sat 01 Aug 2020


01:56:00 AM EDT.
zimbra-drive will be downloaded and installed (later).
zimbra-imapd will be installed.

Last metadata expiration check: 0:01:20 ago on Sat 01 Aug 2020


01:56:00 AM EDT.
zimbra-patch will be downloaded and installed (later).

Last metadata expiration check: 0:01:22 ago on Sat 01 Aug 2020


01:56:00 AM EDT.
zimbra-mta-patch will be downloaded and installed (later).

Last metadata expiration check: 0:01:23 ago on Sat 01 Aug 2020


01:56:00 AM EDT.
zimbra-proxy-patch will be downloaded and installed (later).

Last metadata expiration check: 0:01:27 ago on Sat 01 Aug 2020


01:56:00 AM EDT.
zimbra-chat will be downloaded and installed (later).
Downloading packages (11):
zimbra-core-components
zimbra-ldap-components
zimbra-mta-components
zimbra-dnscache-components
zimbra-snmp-components
zimbra-jetty-distribution
zimbra-store-components
zimbra-apache-components
zimbra-spell-components
zimbra-memcached
zimbra-proxy-components
...done

Removing /opt/zimbra
Removing zimbra crontab entry...done.
Cleaning up zimbra init scripts...done.
Cleaning up /etc/security/limits.conf...done.

Finished removing Zimbra Collaboration Server.

Installing repo packages (11):


zimbra-core-components
zimbra-ldap-components
zimbra-mta-components
zimbra-dnscache-components
zimbra-snmp-components
zimbra-jetty-distribution
zimbra-store-components
zimbra-apache-components
zimbra-spell-components
zimbra-memcached
zimbra-proxy-components
...

Simpan Konfigurasi.

1) Status: Enabled
2) Create Admin User: yes
3) Admin user to create:
admin@mail.centos7.lan
** 4) Admin Password UNSET
5) Anti-virus quarantine user:
virus-quarantine.7xi47__k@mail.centos7.lan
6) Enable automated spam training: yes
7) Spam training user:
spam.wasleuiv@mail.centos7.lan
8) Non-spam(Ham) training user:
ham.wzmkmrkq@mail.centos7.lan
9) SMTP host: mail.centos7.lan
10) Web server HTTP port: 8080
11) Web server HTTPS port: 8443
12) Web server mode: https
13) IMAP server port: 7143
14) IMAP server SSL port: 7993
15) POP server port: 7110
16) POP server SSL port: 7995
17) Use spell check server: yes
18) Spell server URL:
http://mail.centos7.lan:7780/aspell.php
19) Enable version update checks: TRUE
20) Enable version update notifications: TRUE
21) Version update notification email:
admin@mail.centos7.lan
22) Version update source email:
admin@mail.centos7.lan
23) Install mailstore (service webapp): yes
24) Install UI (zimbra,zimbraAdmin webapps): yes

Select, or 'r' for previous menu [r] 4 # Select 4 to set admin


password

Password for admin@mail.centos7.lan (min 6 characters):


[54mE0RmqN] password

Store configuration

1) Status: Enabled
2) Create Admin User: yes
3) Admin user to create:
admin@mail.centos7.lan
4) Admin Password set
5) Anti-virus quarantine user:
virus-quarantine.7xi47__k@mail.centos7.lan
6) Enable automated spam training: yes
7) Spam training user:
spam.wasleuiv@mail.centos7.lan
8) Non-spam(Ham) training user:
ham.wzmkmrkq@mail.centos7.lan
9) SMTP host: mail.centos7.lan
10) Web server HTTP port: 8080
11) Web server HTTPS port: 8443
12) Web server mode: https
13) IMAP server port: 7143
14) IMAP server SSL port: 7993
15) POP server port: 7110
16) POP server SSL port: 7995
17) Use spell check server: yes
18) Spell server URL:
http://mail.centos7.lan:7780/aspell.php
19) Enable version update checks: TRUE
20) Enable version update notifications: TRUE
21) Version update notification email:
admin@mail.centos7.lan
22) Version update source email:
admin@mail.centos7.lan
23) Install mailstore (service webapp): yes
24) Install UI (zimbra,zimbraAdmin webapps): yes

Select, or 'r' for previous menu [r] r

Main menu

1) Common Configuration:
2) zimbra-ldap: Enabled
3) zimbra-logger: Enabled
4) zimbra-mta: Enabled
5) zimbra-dnscache: Enabled
6) zimbra-snmp: Enabled
7) zimbra-store: Enabled
8) zimbra-spell: Enabled
9) zimbra-proxy: Enabled
10) Default Class of Service Configuration:
s) Save config to file
x) Expand menu
q) Quit

*** CONFIGURATION COMPLETE - press 'a' to apply


Select from menu, or press 'a' to apply config (? - help) a #
Apply configuration Save

configuration data to a file? [Yes] Enter


Save config in file: [/opt/zimbra/config.11047]
Saving config in /opt/zimbra/config.11047...done.
The system will be modified - continue? [No] yes
Operations logged to /tmp/zmsetup01262016-002704.log
Setting local config values...done.
Initializing core config…
Setting up CA...done.
Deploying CA to /opt/zimbra/conf/ca ...done.
Creating SSL zimbra-store certificate...done.
Creating new zimbra-ldap SSL certificate...done.
Creating new zimbra-mta SSL certificate...done.
Creating new zimbra-proxy SSL certificate...done.
Installing mailboxd SSL certificates...done.
Installing MTA SSL certificates...done.
Installing LDAP SSL certificate...done.
Installing Proxy SSL certificate...done.
Initializing ldap...done.
Setting replication password...done.
Setting Postfix password...done.
Setting amavis password...done.
Setting nginx password...done.
Setting BES searcher password...done.
Creating server entry for mail.centos7.lan...done.
Setting Zimbra IP Mode...done.
Saving CA in ldap ...done.
Saving SSL Certificate in ldap ...done.
Setting spell check URL...done.
Setting service ports on mail.centos7.lan...done.
Setting zimbraFeatureTasksEnabled=TRUE...done.
Setting zimbraFeatureBriefcasesEnabled=TRUE...done.
Setting Master DNS IP address(es)...done.
Setting DNS cache tcp lookup preference...done.
Setting DNS cache udp lookup preference...done.
Setting DNS tcp upstream preference...done.
Setting TimeZone Preference...done.
Initializing mta config...done.
Setting services on mail.centos7.lan...done.
Adding mail.centos7.lan to zimbraMailHostPool in default
COS...done.
Creating domain mail.centos7.lan...done.
Setting default domain name...done.
Creating domain mail.centos7.lan...already exists.
Creating admin account admin@mail.centos7.lan...done.
Creating root alias...done. Creating postmaster alias...done.
Creating user spam.wasleuiv@mail.centos7.lan...done.
Creating user ham.wzmkmrkq@mail.centos7.lan...done.
Creating user virus-quarantine.7xi47__k@mail.centos7.lan...done.
Setting spam training and Anti-virus quarantine accounts...done.
Initializing store sql database...done.
Setting zimbraSmtpHostname for mail.centos7.lan...done.
Configuring SNMP...done.
Setting up syslog.conf...done.
Starting servers...done.
Installing common zimlets...
com_zimbra_adminversioncheck...done.
com_zimbra_attachcontacts...done.
com_zimbra_attachmail...done.
com_zimbra_bulkprovision...done.
com_zimbra_cert_manager...done.
com_zimbra_clientuploader...done.
com_zimbra_date...done.
com_zimbra_email...done.
com_zimbra_mailarchive...done.
com_zimbra_phone...done.
com_zimbra_proxy_config...done.
com_zimbra_srchhighlighter...done.
com_zimbra_tooltip...done.
com_zimbra_url...done.
com_zimbra_viewmail...done.
com_zimbra_webex...done.
com_zimbra_ymemoticons...done.
Finished installing common zimlets.
Restarting mailboxd...done.
Creating galsync account for default domain...done.
You have the option of notifying Zimbra of your installation.
This helps us to track the uptake of the Zimbra Collaboration
Server.
The only information that will be transmitted is: The VERSION of
zcs installed (8.6.0_GA_1153_RHEL7_64) The ADMIN EMAIL ADDRESS
created (admin@mail.centos7.lan) Notify Zimbra of your
installation? [Yes] no
Notification skipped Setting up zimbra crontab...done.
Moving /tmp/zmsetup01262016-002704.log to /opt/zimbra/log
Configuration complete - press return to exit # Press Enter

Setelah penginstalan selesai, buka browser web dan navigasikan ke nama domain atau
alamat IP kita dari mesin yang menjalankan Zimbra, pada port 7071 melalui protokol
HTTPS, terima kesalahan keamanan sertifikat, dan login dengan kredensial yang
dikonfigurasi selama proses instalasi. Nama pengguna default untuk panel web Admin
Zimbra adalah admin.
FILE SERVER
Samba adalah paket program dengan standar interoperabilitas Windows untuk Linux. Itu
mengimplementasikan protokol Server Message Block (SMB). Versi modern dari protokol ini
juga dikenal sebagai protokol Common Internet File System (CIFS). Ini memungkinkan
jaringan Microsoft Windows® , Linux, UNIX, dan sistem operasi yang lain bersama-sama,
memungkinkan untuk akses ke file berbasis windows dan berbagi printer. Penggunaan SMB
oleh samba memungkinkannya muncul sebagai server windows untuk klien windows.

Introduction to Samba
Samba adalah komponen penting untuk mengintegrasikan server Linux dan Desktop secara
mulus kedalam lingkungan Active Directory (AD). Ini dapat berfungsi baik sebagai
pengontrol domain (NT4-Style) atau sebagai anggota domain biasa (AD-Style atau
NT4-Style).

Layanan Samba dapat berbagi file linux sebagai file jaringan SMB. Bagian ini akan
membahas langkah-langkah konfigurasi dasar yang diperlukan server Samba untuk berbagi
file kepada anggota grup kerja Windows, mengelola penggunaannya sendiri secara lokal.
disini kita tidak akan membahas konfigurasi yang lebih kompleks yang diperlukan untuk
membuat server samba menjadi anggota domain windows.

Installing Packages
Untuk menerapkan layanan samba pada sistem CentOS/RHEL, paket samba harus diinstal.
Ini dapat dilakukan secara langsung, atau sebagian bagian dari grup paket file-server :

~]# yum install -y samba

Preparing The Directories


Direktori yang akan dibagikan harus dibuat jika belum ada.

~]# mkdir /sambashare


User and Regular Permissions
Izin yang harus ditetapkan pada direktori akan bergantung pada siapa yang membutuhkan
akses ke sana dan bagaimana itu akan dipasang oleh klien. Klien biasanya memasang
share dengan mengautentikasi akses ke server SMB sebagai pengguna tertentu. Semua file
di share harus bisa dibaca (dan bisa mungkin bisa ditulis) oleh pengguna yang digunakan
untuk me-mount share.

Configuring Samba
Letak file konfigurasi utama Samba adalah /etc/samba/smb.conf. File ini dibagi menjadi
beberapa bagian. Setiap bagian dimulai dengan nama bagian dalam tanda kurung siku,
diikuti dengan daftar parameter yang disetel ke nilai tertentu.

/etc/samba/smb.conf dimulai dengan bagian [global] yang digunakan untuk


mengkonfigurasi server umum. Bagian selanjutnya masing-masing menentukan file share
atau mungkin printer yang telah disediakan oleh server samba.

Mungkin ada dua bagian khusus, [home] dan [printer], yang memiliki kegunaan
khusus. Setiap baris yang diawali dengan karakter titik koma (;) atau hash (#) adalah
komentar.

Samba Anonymous File Sharing

Pertama, buat direktori bersama tempat file akan disimpan di server dan atur izin yang
sesuai pada direktori.

~]# mkdir -p /srv/samba/anonim


~]# chmod -R 0775 /srv/samba/anonim
~]# chown -R nobody:nobody /srv/samba/anonim

Lalu, kita juga perlu mengubah konteks keamanan SELinux untuk direktori bersama samba
sebagai berikut :
~]# chcon -t samba_share_t /srv/samba/anonim

Selanjutnya, buka file konfigurasi samba untuk mengedit, dimana kita dapat memodifikasi
atau menambahkan bagian di bawah ini dengan arahan yang sesuai.

~]# vi /etc/samba/smb.conf

Konfigurasi pada file smb.conf :

[global]
workgroup = WORKGROUP
netbios name = centos
security = user
[Anonymous]
comment = Anonymous File Server Share
path = /srv/samba/anonim
browsable =yes
writable = yes
guest ok = yes
read only = no
force user = nobody

Lalu verifikasikan pengaturan samba menggunakan perintah berikut :

~]$ testparm

Load smb config files from /etc/samba/smb.conf


rlimit_max: increasing rlimit_max (1024) to minimum Windows limit
(16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Processing section "[Anonymous]"
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
netbios name = centos
printcap name = cups
security = USER
idmap config * : backend = tdb
cups options = raw
[homes]
comment = Home Directories
browseable = No
inherit acls = Yes
read only = No
valid users = %S %D%w%S
[printers]
comment = All Printers
path = /var/tmp
browseable = No
printable = Yes
create mask = 0600
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
create mask = 0664
directory mask = 0775
write list = root
[Anonymous]
comment = Anonymous File Server Share
path = /srv/samba/anonymous
force user = nobody
guest ok = Yes
read only = No

Terakhir, mulai dan aktifkan layanan samba secara otomatis pada boot berikutnya dan juga
menerapkan perubahan di atas untuk ditetapkan :

~]# systemctl enable smb.service


~]# systemctl enable nmb.service
~]# systemctl start smb.service
~]# systemctl start nmb.service

Samba Secure File Sharing

Pertama, kita mulai dengan membuat grup user samba, lalu tambahkan pengguna (user) ke
grup tersebut dan atur kata sandinya untuk setiap pengguna.

~]# groupadd smbgrp


~]# usermod guru -aG smbgrp
~]# smbpasswd -a guru

Kemudian buat direktori aman tempat file bersama akan disimpan dan atur izin yang sesuai
pada direktori dengan konteks keamanan SELinux untuk samba.

~]# mkdir -p /srv/samba/secure


~]# chmod -R 0770 /srv/samba/secure
~]# chown -R root:smbgrp /srv/samba/secure
~]# chcon -t samba_share_t /srv/samba/secure

Selanjutnya buka file konfigurasi untuk mengedit dan memodifikasi atau menambahkan
bagian dibawah dengan arahan yang sesuai.

~]# vi /etc/samba/smb.conf

[Secure]
comment = Secure File Server Share
path = /srv/samba/aman
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes

Sekali lagi, verifikasi pengaturan konfigurasi samba dengan menjalankan perintah berikut.

~]$ testparm

Load smb config files from /etc/samba/smb.conf


rlimit_max: increasing rlimit_max (1024) to minimum Windows limit
(16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Processing section "[Anonymous]"
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
netbios name = centos
printcap name = cups
security = USER
idmap config * : backend = tdb
cups options = raw
[homes]
comment = Home Directories
browseable = No
inherit acls = Yes
read only = No
valid users = %S %D%w%S
[printers]
comment = All Printers
path = /var/tmp
browseable = No
printable = Yes
create mask = 0600
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
create mask = 0664
directory mask = 0775
write list = root
[Anonymous]
comment = Anonymous File Server Share
path = /srv/samba/anonim
force user = nobody
guest ok = Yes
read only = No
[Secure]
comment = Secure File Server Share
path = /srv/samba/aman
read only = No
valid users = @smbgrp

Restart layanan samba untuk menerapkan perubahan.

~]# systemctl restart smb.service


~]# systemctl restart nmb.service
CentOS Web Panel (CWP)
CentOS Web Panel (CWP) adalah panel kontrol hosting web gratis yang menawarkan
kemudahan pengelolaan beberapa server (Dedicated dan VPS) tanpa perlu mengakses
server melalui SSH untuk setiap tugas kecil yang perlu kita selesaikan. Ini adalah panel
kontrol dengan banyak fitur, yang hadir dengan sejumlah opsi yang besar dan fitur untuk
manajemen server secara cepat.

Setup Hostname
Untuk memulai instalasi CWP, perlu kita atur nama host yang benar pada server yang ingin
dipasang CWP.

Penting : Nama host dan nama domain harus berbeda di server kita (misalnya, jika nama
domain kita contoh.com, maka gunakan nama host.contoh.com sebagai nama host yang
memenuhi syarat sepenuhnya (Fully Qualified)).

~] # hostnamectl set-hostname cwp.contoh.com

~] # hostnamectl
Static hostname: cwp.contoh.com
Icon name: computer-vm
Chassis: vm
Machine ID: 4862e2d227544d4e9230f471dbbd54c7
Boot ID: c01ccc20e1a54dfc80f638145b27e0ad
Virtualization: kvm
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-693.el7.x86_64
Architecture: x86-64

Setup Server IP Address


Untuk mengatur jaringan, kita akan menggunakan utilitas nmtui
~]# yum install NetworkManager-tui -y
~]# nmtui

Installing Centos Web Panel (CWP) Packages


Setelah mengatur nama host dan alamat IP statis, sekarang kita perlu memperbarui server
kita ke versi terbaru dan menginstal utilitas wget untuk mengambil dan menginstal skrip
instalasi CWP.

~]# yum -y update


~]# yum -y install wget

~]# cd /usr/local/src
~]# wget http://centos-webpanel.com/cwp-el7-latest
~]# sh cwp-el7-latest

Harap bersabar karena proses instalasi dapat memakan waktu antara 10 hingga 20 menit
untuk diselesaikan. Setelah instalasi selesai, kita akan melihat layar yang mengatakan
“CWP” telah diinstal dan daftar kredensial yang diperlukan untuk mengakses panel. Pastikan
untuk menyalin atau menuliskan informasi dan menyimpannya dengan aman.

Seletah siap, tekan ENTER untuk reboot server. Jika sistem tidak reboot secara otomatis
maka cukup kita ketik perintah reboot untuk memulai ulang mesin server kita.

CentOS Web Panel Configuration


Setelah server reboot, login ke server sebagai root. Lalu setelah login kita akan melihat layar
selamat datang yang berbeda, dengan informasi tentang pengguna yang login dan
penggunaan ruang disk saat ini.
Sekarang kita masuk ke CWP dengan menggunakan link yang disediakan oleh installer
sebelumnya pada server kita.

CentOS WebPanel Admin GUI : http/IP-SERVER:2030/

Dengan username : root dan password sesuai dengan password root SSH server.
Google Nextcloud
Nextcloud adalah sebuah aplikasi open source yang dapat digunakan untuk membuat cloud
storage atau penyimpanan data yang dimana kita dapat menyimpan data dengan berbagai
macam format atau ekstensi, atau file statik seperti file audio, video, dan sebagainya.
Secara fungsi Nextcloud mirip dengan Google Drive atau Dropbox, bahkan Nextcloud
memiliki beberapa fitur lebih seperti video conference antar pengguna Nextcloud dan masih
banyak lagi.

Installing Dependencies Package


Pertama update system dengan perintah berikut :

~] # yum update -y

Lalu install paket dependensi berikut :

~] # yum install -y epel-release yum-utils unzip curl wget


bash-completion policycoreutils-python mlocate bzip2

Setelah selesai maka kita lanjut ke tahap berikutnya yaitu menginstal web service.

Installing Web Services


Installing Packages :

~] # yum install -y httpd

Lalu kita buat file konfigurasi dengan perintah berikut:

~] # nano /etc/httpd/conf.d/nextcloud.conf

<VirtualHost *:80>
DocumentRoot /var/www/html/nextcloud
ServerName namadomain.com / ip-address server

<Directory "/var/www/html/nextcloud">
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
</Directory>
</VirtualHost>

Bagian ServerName dapat diisi dengan domain atau IP Address milik server.
Setelah itu kita jalankan service httpd-nya.

~] # systemctl start httpd


~] # systemctl enable httpd
~] # systemctl status httpd

Installing PHP Engine


Kita tambahkan repository webtatic untuk menginstall PHP 7.2 :

~] # rpm -Uvh
https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Setelah itu kita install beberapa package PHP 7.2 seperti berikut :

~] # yum install -y php72w php72w-cli php72w-common php72w-curl


php72w-gd \
php72w-mbstring php72w-mysqlnd php72w-process php72w-xml
php72w-zip \
php72w-opcache php72w-pecl-apcu php72w-intl php72w-pecl-redis

Berikut nama-nama package yang harus diinstal (13):


- php72w-cli
- php72w-common
- php72w-curl
- php72-gd
- php72w-mbstring
- php72w-mysqlnd
- php72w-process
- php72w-xml
- php72w-zip
- php72w-opcache
- php72w-pecl-apcu
- php72w-intl
- php72w-pecl-redis

Jika sudah maka kita akan lanjut ke tahap selanjutnya yaitu menginstal database.

Installing Database Service


Database yang akan kita gunakan adalah mariaDB, dapat kita install dengan perintah
berikut :

~] # yum install -y mariadb-server

Setelah itu kita nyalakan lalu jalankan service mariadb

~] # systemctl start mariadb


~] # systemctl enable mariadb
~] # systemctl status mariadb

Berbeda dengan packages lain, proses instalasi mariaDB tidak full otomatis bisa langsung
digunakan, ada beberapa hal yang harus kita tentukan secara manual. Dapat kita lakukan
dengan perintah berikut :

~] # mysql_secure_installation
Setelah itu akan muncul beberapa pertanyaan terkait tentang instalasi mariadb, dapat kita
jawab seperti berikut :

Enter current password for root (enter for none): ENTER


Change the root password? [Y/n] y
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

Setelah itu kita login ke mariadb untuk membuat database bagi Nextcloud.

~] # mysql -u root -p

Lalu dapat memasukan beberapa perintah seperti berikut untuk membuat databasenya.

MariaDB [(none)]> CREATE DATABASE nextcloud;


Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> CREATE USER 'user-nextcloud'@'localhost'


IDENTIFIED BY 'password-nextcloud';
Query OK, 0 rows affected (0.04 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nextcloud.* TO


'user-nextcloud';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;


Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> EXIT;


Installing Nextcloud
Sekarang baru kita install package utamanya, kita akan mengunduh package-nya
menggunakan wget, dengan perintah seperti berikut :

~] # wget
https://download.nextcloud.com/server/releases/nextcloud-14.0.4.z
ip

Lalu ekstrak file-nya dan copy ke direktori yang telah kita tentukan sebelumnya.

~] # unzip nextcloud-14.0.4.zip
~] # cp -R nextcloud /var/www/html/

Setelah itu kita buat folder atau direktori data pada file yang baru saja kita pindahkan, dan
berikan hak akses dan owner pada file tersebut agar file dapat digunakan oleh user
nextcloud nanti.

Buat direktori data :

~] # mkdir /var/www/html/nextcloud/data

Beri hak akses dan owner :

~] # chown apache:apache /var/www/html/nextcloud


~] # chmod 755 /var/www/html/nextcloud

Jika sudah silahkan restart service httpd dengan menggunakan perintah berikut :

~] # systemctl restart httpd


Setelah selesai kita akses domain atau ip address milik server nextcloud kita pada browser,
lalu kita buat username admin untuk nextcloud, lalu klik Finish Setup.

Setelah instalasi selesai, hasilnya akan seperti pada gambar dibawah.

Anda mungkin juga menyukai