Bagi Professional Cyber Security, melakukan latihan simulasi hacking sangat dibutuhkan untuk mempertajam pengetahuan tentang security breach beserta teknik melakukannya. Berikut saya sampaikan langkah instalasi dan konfigurasi server yang akan sebagai victim dalam melakukan latihan hacking.
Pertama-tama saya akan menyiapkan virtual machine menggunakan Virtual Box Maupun menggunakan VMWare. Sistim Operasi yang saya gunakan adalah CentOS 7. Pertama-tama, saya download terlebih dahulu installer dari CentOS dari
CentOS repository. Pilih ISO minimal yang terbaru.
Selanjutnya, saya melakukan installasi kedalam virtual machine saya. Tampilan pertama setelah boot adalah sebagai berikut:
Saya memilih
Install CentOS 7 lalu menekan
ENTER
Selanjutnya tampilan akan sibuk seperti ini:
Saya menunggu beberapa saat sampai tampilan menjadi:
Pilih bahasa, dalam hal ini saya memilih bahasa
English lalu saya menekan tombol
Continue.
selanjutnya pilih timezone:
Saya memilih
Jakarta lalu tekan tombol
Done, selanjutnya memilih
Installation Destination,
Lalu tekan tombol
Done, selanjutnya saya memilih
Network and Hostname,
Pertama-tama saya tekan tombol switch
ON untuk NIC lalu click tombol
configure, karena saya mau menjadikan IP static.
Setelah menentukan IP address, gateway, DNS, lalu saya tekan tombol
Save, lalu menekan tombol
Done. Selanjutnya saya menekan tombol
Begin Installation.
Langkah selanjutnya adalah proses instalasi mulai berjalan.
Sementara itu, saya mulai mengisi password untuk root
Kemudian juga saya create user dalam hal ini saya namakan usernya
Admin
Jangan lupa untuk melakukan
check mark di bagian
make this user administrator. Kemudian kita tunggu sampai proses instalasi selesai
Lalu tekan tombol
Finish Configuration. Dan kita tunggu proses instalasi tahap akhir selesai dan tekan tombol
Reboot
Selanjutnya mesin akan melakukan reboot
Lalu pilih pilihan pertama tekan
ENTER
Proses instalasi sistim operasi CentOS selesai
Silahkan login menggunakan user root dengan credential yang dibuat tadi. Setelah masuk, maka yang pertama kali kita lakukan adalah update terhadap sistem operasi. Lakukan itu dengan perintah
# yum -y update
Proses uupdate ini berlangsung beberapa saat lamanya bergantung kecepatan sambungan Internet.
Sesudah selesai lakukan reboot. Kemudian login kembali dengan user root. Lakukan disable firewall, karena ini adalah mesin victim untuk latihan maka kita perlu mematikan firewall:
# systemctl stop firewalld.service
# systemctl disable firewalld.service
Sesudah itu kita melakukan instalasi beberapa tools yang kita butuhkan. Hal ini karena kita melakukan instalasi server CentOS secara minimal, sehingga yang terinstal hanyalah sistem operasi saja.
# yum -y install nano net-tools ntp ntpdate bind-utils ssh openssh-server wget binutils NetworkManager-tui unzip
Selanjutnya kita akan melakukan setup network:
# nano /etc/hosts
# nano /etc/hostnames
Lakukan adjustment yang dibutuhan dalam konfigurasi dati hosts dan hostname. Jika anda akan mengubah IP address silahkan dilakukan dengan printah:
# nmtui
Selanjutnya yang akan kita matikan adalah SELinux.
# nano /etc/selinux/config
[...
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
...]
Pastikan status SELINUX adalah
disabled
Lakukan reboot kembali
Sekarang kita akan melakukan installasi Web Server Apache, MariaDb dan PHP (LAMP). Untuk itu kita perlu menambahkan repository EPEL
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
# yum -y install epel-release
# yum -y install yum-priorities
Kemudian edit:
# nano /etc/yum.repos.d/epel.repo
Perhatikan dan pastikan ditambahkan priority=10
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
priority=10gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
[...]
Sesudah selesai lakukan update sekali lagi:
# yum -y update
Sekarang kita akan install php, mariadb dan http
# yum -y install ntp httpd mod_ssl mariadb-server php php-mysql php-mbstring phpmyadmin
Sesudah selesai kita akan melakukan konfigurasi Mariadb, pertama-tama kita start service dari MariaDb:
# systemctl enable mariadb
# systemctl start mariadb
Kemudian kita menjalankan konfigurasi awal:
# mysql_secure_installation
Set root password? [Y/n] <-- ENTER
New password: <-- yourrootsqlpassword
Re-enter new password: <-- yourrootsqlpassword
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] <-- ENTER
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] N <-- ENTER
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] <-- ENTER
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] <-- ENTER
... Success!
Cleaning up...
Selanjutnya melakukan konfigurasi phpmyadmin:
# nano /etc/httpd/conf.d/phpMyAdmin.conf
[.....
# phpMyAdmin - Web based MySQL browser written in php
#
# Allows only localhost by default
#
# But allowing phpMyAdmin to anyone other than localhost should be considered
# dangerous unless properly secured by SSL
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
<Directory /usr/share/phpMyAdmin/>
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
# Require ip 127.0.0.1
# Require ip ::1
Require all granted
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
...]
# nano /etc/phpMyAdmin/config.inc.php
[...]
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
[...]
# systemctl enable httpd.service
# systemctl restart httpd.service
Selanjutnya melakukan instalasi extension php
# yum -y install php-devel php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-pecl-apc php-mcrypt php-mssql php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel mod_fcgid php-cli httpd-devel php-fpm wget