Hardening CentOS 7 (1)

nb: tanda pagar (#) adalah komentar

Patching

Configure Proxy for Yum

  • Buka terminal
  • ketik “sudo gedit /etc/yum.conf
  • Tambahkan line berikut dan ganti nama proxy, username dan password:
# The proxy server - proxy server:port number
proxy=http://proxy.domain.com:8080
# The account details for yum connections 
proxy_username=user 
proxy_password=password

Check update

untuk mengetahui apakah ada update terbaru, maka dapat menggunakan perintah berikut pada terminal

 yum check-update 

Akan terlihat update apa saja yang tersedia seperti contoh berikut:

Cekupdate centos

 

karena respitory dibiarkan default, maka program akan secara otomatis mencari tautan yang paling cepat. Pada contoh diatas adalah buaya.klas.or.id

Update

Untuk melakukan update cukup buka terminal dan lakukan perintah berikut:

 yum update 

semua package akan secara otomatis terupdate. Sebelum proses update dimulai, akan ada peringatan tetang besaran yang akan terupdate

update centos

User Management

Penambahan dan Menghapus user

#untuk menambah user
useradd username 
#untuk mengetahui adanya id
id username
#untuk menghilangkan user
remove -r username

 Sudo Privilege

Pemberian Privilege terhadap suatu user untuk melakukan sudo adalah salah satu bentuk pengamanan yang diterapkan oleh unix. Tidak semua user diperbolehkan melakukan perintah sudo, hanya root dan group wheel saja yang awalnya langsung dapat melakukannya.

Untuk menambahkan user yang dapat melakukan sudo, pengguna dapat menambahkan privilege ke user dengan 2 cara.

  1. Masukkan kedalam group wheel
     sudo gpasswd -a username wheel 
    
  2. Edit file visudo dengan cara memanggil “sudo visudo
    cari line seperti berikut

    ##Allow root to run any command to run any command everywhere
    root  ALL=(ALL)  ALL
    user  ALL=(ALL)  ALL

Root Hanya dapat Diakses oleh Wheel

Terkadang kita ingin root hanya dapat diakses oleh orang orang tertentu agar perubahan dapat dipertanggung jawabkan. Untuk itu dapat dipanggil sebuah perintah seperti berikut.

  • buka file super user dengan perintah “vi /etc/pam.d/su
  • Cari line berikut
    # Uncomment the following line to require a user to be in the "wheel" group. 
    # auth required pam_wheel.so use_uid 
    
  • cukup hilangkan tanda pagar dan hanya user yang masuk kedalam wheel yang dapat mengakses root

wheelcentosakses

Manajemen group

Berikut cara untuk menambah mengelola group

# untuk menambah group
groupadd groupsername 
# untuk mengetahui list group
groups
# untuk menghilangkan group
groupdel groupname

Sedangkan untuk menambahkan user dalam group dapat melakukan perintah berikut

# Menambah sebagai primary group 
usermod -g groupname username

# Sebagai secondary group
usermod -a -G groupname username

Ada pula cara yang lebih mudah melakukan managemen user yaitu dengan menggunakan sebuah perangkat lunak bernama system-config-user

# install dengan perintah berikut
yum install system-config-users

Berikut tampilan dari perangkat lunak tersebut

scu1 scu2

 Permission

Permission adalah suatu hak yang diberikan kepada user kepada dirinya, group, dan user lain untuk melakukan sesuatu (baca, tulis, eksekusi) ke berkas atau tautan tertentu. Pada dasarnya urutan bentuk permission adalah sebagai berikut (sumber):

permission

Terkadang untuk memudahkan, rwx dituliskan dengan sebuah kode binary. Berikut tabel yang menjelaskan hal tersebut (sumber):

permission table

Contoh perubahan permission adalah sebagai berikut:

permiscentos1

 

 

file music akan diubah menjadi semua orang dapat melakukan write maka gunakan perintah

# Perintah menggunakan octal
chmod 777 music
# perintah menggunakan huruf (maksudnya group other ditambahkan write)
chmod go+w music

hasilnya akan seperti berikut:

permiscentos2

 

 

Instalasi WordPress dengan CentOS 7

Package yang dibutuhkan:

  • LAMP (Linux Apache Mysql PHP) atau jika tidak ingin repot gunakan XAMPP
  • wordpress

nb: tanda pagar (#) adalah komentar

Install LAMP

Apache

Install apache dengan perintah berikut

sudo yum httpd

Setelah selesai menginstall maka hidupkan servis apache dan pastikan dia berjalan ketika mesin dinyalakan

# menjalankan servis http
Start Service using ‘sudo systemctl start httpd.service”

# menjalankan servis ketika mesin dihidupkan
Enable Service using ‘sudo systemctl enable httpd.service’

Jika berhasil, hasil akan dapat dilihat pada browser dan masuk kedalam localhost. Berikut tampilan jika berhasil

apache2

 

MySQL (MariaDB)

MariaDB digunakan untuk menggantikan MySQL konvensional. Untuk install MySQL pun akan secara otomatis menginstall MariaDB. Perbedaan antara MySQL dan MariaDB dapat dilihat pada tautan berikut.

Cara menginstallnya adalah sebagai berikut:

# install 
sudo yum install mariadb-server mariadb

# enable
sudo systemctl start mariadb

Selanjutnya lakukan hardening pada MariaDB dengan cara seperti berikut

sudo mysql_secure_installation

Ketika perintah ini dipanggil, MariaDB akan meminta untuk melakukan setting password untuk MariaDB.

mariadb

 

Kemudian enable mariadb

sudo systemctl enable mariadb.service

PHP

install php dengan perintah berikut:

sudo yum install php php-mysql php-gd

PHP-MySQL adalah penghubung antara php dengan MySQL

PHP-GD adalah graphic library untuk php

# Restart apache
Restart apache “sudo systemctl restart httpd.service”

Untuk mengetahui apakah php sudah terinstall atau belum, dibuatlah sebuah laman untuk tes.

# membuat laman info
sudo vi /var/www/html/info.php

# laman berisi info dari php
Use <?php phpinfo(); ?> 

# save kemudian keluar

Jika browser dibuka dan masukkan localhost maka akan terlihat seperti berikut

php

 

Persiapan Awal

Pada persiapan awal ini, database untuk menampung wordpress dibuat. Kemudian database tersebut dilindungi dengan membuat username dan password. Berikut cara membuatnya:

mysql -u root –p
CREATE DATABASE databasename;
CREATE USER username@localhost IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON databasename.* TO username@localhost IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit

Ganti databasename, username, dan password sesuai dengan yang anda inginkan.

WordPress

Cara untuk melakukan instalasi wordpress adalah sebagai berikut:

  • Unduh wordpress dari laman
  • Extract file dan pindahkan ke “/var/www/html/”
  • Buat sebuah folder upload
mkdir /var/www/html/wp-content/uploads
  •  ubah kepemilikan group html dengan group apache sebagai primary dan secondary
sudo chown -R apache:apache /var/www/html/*
  •  Konfigurasi awal
# masuk kedalam folder html
cd /var/www/html

# salin wp config
cp wp-config-sample.php wp-config.php

# buka wp-config
vi wp-config.php

# cari dan ganti line berikut
konfigurasiawal
  • konfigurasi akhir

Buka browser dan buka localhost. Isi dengan informasi yang dibutuhkancenlast1

censukses

  • WordPress dapat digunakan

Instalasi CentOS 7 pada VirtualBox

Software yang diperlukan:

  • Oracle VirtualBox 4.3.24r98716
  • CentOS-7.0-1406-x86_64-Everything.iso

nb: tanda pagar (#) adalah komentar

Cara Instalasi CentOS

  • Install VirtualBox
  • Buat Mesin Virtual

Penentuan paramater pada virtualbox sesuai dengan keinginan pengguna. Berikut set yang saya masukkan saat membuat mesin virtual

Set mesin virtual

  • Layar Instalasi utama

Layar 1 centos

Pada layar intalasi utama terdapat tiga pilihan yang dapat digunakan.

  1. Install CentOS 7 adalah sebuah menu yang dapat dipilih saat akan melakukan instalasi secara langsung ke mesin
  2. Test this media & install CentOS 7 adalah sebuah menu yang diberikan jika pengguna ingin merasakan dahulu suasana OS CentOS baru setelahnya melakukan instalasi
  3. Troubleshooting adalah menu jika anda menemui kesulitan dalam melakukan instalasi
  • Pemilihan bahasa

bahasa centos

Silahkan anda masukkan bahasa yang anda inginkan menjadi bahasa pengantar selama melakukan instalasi

  • Installation Summary

IS centos

Anda akan masuk kedalam ringkasan instalasi. Lakukan pengaturan akhir pada sesi ini

  • Localization merupakan setting merupakan pengaturan waktu, penggunaan keyboard, dan bahasa yang digunakan dalam menjalankan sistem operasi
  • Software terbagi dua yaitu sumber instalasi dan Pemilihan perangkat lunak. Pemilihan perangkat lunak akan menentukan dasar environment yang ada. Setiap pilihan akan memberikan add-on yang berbeda pula. Berikut pilihan perangkat lunak yang tersedia dalam iso everything:
    1. minimal install
    2. infrastructure server
    3. file and print server
    4. basic web server
    5. virtualization host
    6. server with gui
    7. gnome desktop
    8. KDE plasma workspace
    9. Development and creative workstation
  • Tekan begin instalation
  • Configuration

config centos

Saat user creation di tekan akan muncul jendela seperti berikut

user add centos

Silahakan anda membuat user anda pada jendela ini. Jika sudah tekan tombol done diatas. Saat kembali ke jendela config, tekan root password untuk membuat kata sandi yang digunakan untuk masuk kedalam sistem root

root centos
Tunggu hingga proses instalasi selesai kemudian restart

  • Initial setup and finisihing instalation

Pada menu ini anda diharuskan untuk menyetujui EULA yang ada dan instalasi akan selesai

uela 1

uela 2

CentOS 7 siap digunakan…

 

Stategi Mitigasi #15 – Sentralisasi dan Sinkronisasi Logging Waktu pada Event Komputer yang Berhasil Maupun Gagal

Mitigasi

Melakukan sentralisasi dan sinkronisasi logging waktu pada komputer logging yang berhasil maupun gagal, dengan analisa secara real-time dan bekerja secara otomatis, menyimpan logs untuk kurang lebih 18 bulan. Log penting termasuk log yang dibuat oleh produk kemanan, begitu juga dengan log Active Directory event dan log lain yang berkaitan dengan otentikasi pengguna termasuk VPN dan hubungan akses jarak jauh.

Dasar Pemikiran

Sentralisasi dan sinkronisasi logging waktu dan log analisa secara berkala akan menambah kemampuan oraganisasi dalam mengidentifikasi pola secara cepat dari kelakuan yang mencurigakan dan berkorelasi dengan event yang tercatat pada banyak statiun kerja dan peladen, mempermudah dan membuat lebih efektif dalama investigasi dan audit ketika intrusi dunia maya terjadi

Panduan Implementasi

Gunakan solusi dari Security Information and Event Management untuk mengkorelasikan log dari berbagai sumber untuk mengidentifikasi pola dari kelaukan mencurigakan termasuk yang menyimpang dari pola umum yang biasanya digunakan oleh pengguna.

Melakukan analisa log secara berkala harus fokus pada:

  • Target paling mungkin, terutama pengguna yang memiliki hak khusus administrative untuk mengoperasikan sistem atau aplikasi seperti database
  • Aplikasi dari daftar putih log yang tertutup oleh eksekusi program, begitu juga log yang terbuat oleh produk keamanan lain
  • Jeda dalam log dimana seharusnya ada aktivitas periodic. Contoh, tidak hadirnya log antivirus yang seharusnya muncul tiap hari atau log produk keamanan yang biasanya dibuat oleh statiun kerja pengguna yang ada di kantor dan dipercaya menggunakan statiun kerja, secara potensi mengidikasikan bahwa musuh dunia maya mematikan produk keamanan
  • Kegiatan pengguna diluar jam kerja, memungkinkan kegiatan malware yang telah mengambil alih computer pengguna dan tercatat sebagai pengguna
  • Servis atau kunci registry baru atau berubah yang digunakan untuk menjalankan program secara otomatis pada bootup atau login pengguna
  • Berkas yang dapat dieksekusi yang baru atau berubah
  • Akses ke statiun kerja asset kritis dan peladen yang menyimpan atau memproses data sensitive
  • Akses ke berkas dalam jaringan shared group device
  • Otorisasi yang tidak dikenal akan merubah atau mengakases event log
  • Penggunaan alat reconnaissance and network propagation seperti system yang dapat dieksekusi: ipconfig, net, net1, netstat, reg, wmic, powershell, at, schtasks, tasklist, rundll32, gpresult and systeminfo
  • Otentikasi pengguna dan akun kredensial

Ketika melakukan analisa log dari otentikasi pengguna dan menggunakan akun kredensial, terutama focus pada:

  • Otentikasi pengguna dari pengguna yang sedang berlibur atau tidak ditempat
  • Otentikasi pengguna dari statiun kerja lain yang dari yang biasanya, terutama yang berasal dari statiun kerja yang berada diluar lokasi
  • VPN dan hubungan akses jarak jauh dari Negara yang tidak berasosiasi dengan pengguna
  • Satu IP yang berusaha melakukan otentikasi lebih dari satu pengguna
  • VPN dan hubungan akses jarak jauh lain oleh pengguna dengan dua IP berbeda secara bersamaan
  • Gagal login yang dilakukan pada akun dengan hak khusus administrative
  • Akun pengguna yang terkunci karena terlalu banyak memasukkan kata sandi yang salah
  • Akun servis adminisftratif yang log ke dalam statiun kerja atau peladen
  • Pembuatan akun pengguna, atau penghidupan akun yang dimatikan, terutama akun dengan hak khusus administrative
  • Modifikasi kepada sifat akun pengguna, seperti pilihan konfigurasi “menyimpan katakunci dengan enkripsi yang dapat dibalik” atau “kata kunci yang tidak pernah habis waktu hidupnya”

Informasi lebih lanjut

ISM controls: 0120, 0670, 0790, 0380, 0957, 0261, 0109, 0580, 0582‐0583, 0584, 0585, 0586, 0587, 0859, 0987, 0988, 0991, 1032, 0631, 0634, 1176, 1305.

Strategi Mitigasi #13 – Aplikasi Firewall Berbasis Perangkat Lunak, Menghalau Keluarnya Lalulintas dalam Jaringan

Mitigasi

Mengimplementasikan mitagsi ini, dengan hosted berasal dari luar jaringan dalam organisasi, untuk melakukan aktivitas beresiko seperti web browsing

Dasar Pemikiran

Musuh dunia maya yang berkompromi dengan non-persistent virtualized stasiun kerja pengguna, yang terletak pada bagian luar jaringan dalam organisasi, dapat mengurangi kemampuan untuk memaksa sebagai bagian dari bagian pertama intrusi duna maya dan mencegah musuh dunia maya untuk merambat sepanjang jaringan organisasi sebagai bagian dari bagian kedua dari intrusi dunia maya

Panduan Implementasi

Segmentasi dan pemisahan jaringan harus di implementasikan untuk mengurangi resiko dari compromised virtualised operating environment mengakses informasi sensitif pada organisasi

Non-persistent nature dari strategi mitigasi menolong untuk me ­restore compromised system untuk menjadikan ke keadaan benar. Namu hal ini juga akan menghilangkan bukti forensic yang berkaitan dengan intrusi dunia maya, dan oleh karena itu perlu digaris bawahi pentingnya melakukan sentralisasi logging seperti yang didiskusikan pada strategi #15 dan #16

Informasi lebih lanjut

Pilihan implementasi termasuk panduan ASD pada segmentasi dan pemisahan jaringan:
http://www.asd.gov.au/publications/csocprotect/network_segmentation_segregation.htm  

ISM controls: 1181, 1345, 1346.