You are on page 1of 34

INSTALASI DAN

PRACTICE SERVER
MANAGEMENT
Application
Server
Requirements

1
LINUX SERVER
Penggunaan Linux sebagai web-server sangat umum digunakan karena kebutuhan
minimum requirements yang rendah dan kemampuan mengelola concurrent
connection yang baik

4
WINDOWS SERVER
Penggunaan Windows sebagai web-server sebisa mungkin menggunakan OS yang
memang ditujukan untuk hal tersebut. Menggunakan Windows yang bukan untuk
server dapat berdampak pada performa server dalam mengelola concurent
connection dalam satu waktu

5
ARSITEKTUR WEB PADA APLIKASI DENGAN PHP

My SQL
Database
Server
SQL Server
User Web
Content Server Rest API

API WDSL

DLL

6
WEB SERVER

Linux LAMP Stack

XAMPP
Apache

WAMP
Windows
Web Server MAMP
IIS Windows
Stand
Alone
Nginx

7
XAMPP NOT MEANT FOR PRODUCTION

XAMPP is not meant for production use but only for development environments. XAMPP is configured to be
open as possible to allow the developer anything he/she wants. For development environments, this is great
but in a production environment, it could be fatal.

Here a list of missing security in XAMPP:

• The MySQL administrator (root) has no password.


• The MySQL daemon is accessible via network.
• ProFTPD uses the password "lampp" for user "daemon".
• The default users of Mercury and FileZilla are known.

Source : https://www.apachefriends.org/faq_windows.html

8
WAMP ARE NOT APPROPRIATE FOR PRODUCTION

WampServer declare itself as a Windows web development environment.

Comes with fewer functionalities than XAMPP (without FTP Server, Mercury, and
daemon MySQL)

Comes with multiple PHP version, MySQL Version, MariaDB options, and
online/offline switcher, and VirtualHost

Online/Offline Switcher give save enough configuration, but still need security
optimization

9
MAMP PRO FOR YOUR PRODUCTION SERVER

MAMP Pro available for MacOS and Windows

Comes with rich functionalities like LAMP Stack

Have setting to run as production server.

10
OPTIMIZE WEB SERVER SECURITY
Optimasi dilakukan dalam rangka meningkatkan keamanan dari sisi konfigurasi,
sedangkan apabila ada celah dalam aplikasi maka
WE CAN’T DO ANYTHING ABOUT IT ☺

11
SISI OPTIMASI SECURITY

Security Enhance

Apache SQL Server OS

Production
Run as Disable Error User Limit Remote
Robots.txt Use SSL VirtualHost Mode NOT USE SA Firewall
Services Reporting Management Connection
Application

12
Apache
Security
Enhance

2
ROBOTS.TXT

Search Engine Crawler menggunakan file ini untuk crawler direction

Set it to "disallow / "

Ketika sebuah website tidak di crawl oleh Search Engine, aplikasi


akan lebih sulit dideteksi oleh dunia luar apabila terdapat kegagalan

14
USE SSL

15
USE SSL

Secure Sockets Layer (SSL) adalah standar keamanan teknologi untuk membangun koneksi
terenkripsi dari server ke client (biasanya web server dan brower pengguna atau mail server
ke mail client)

SSL Certificate saat ini seakan menjadi standar baru dalam dunia web. Mengingat keamanan
yang memang penting dan makin bertebarannya wi-fi di banyak ruang publik menjadikan
kebutuhan atas SSL Certificate untuk keamanan akun anda menjadi meningkat.

Dapat Menggunakan SSL Certificate berbayar, Self Signed SSL, atau menggunakan Lets
Encrypt

Rujukan :
https://www.belajararief.com/index.php/tulisan/tekno/192-ssl-certificate 16
https://www.belajararief.com/index.php/tulisan/tekno/195-ssl-lebih-mudah-dan-murah-dengan-let-s-encrypt
HOW SSL WORKS

17
VIRTUALHOST

Generasi baru Apache menggunakan skema


VirtualHost

Amankan VirtualHost anda dengan konfigurasi yang


sesuai dengan kebutuhan anda (i.e. Force SSL
Connection)
18
RUN APACHE AS A SERVICES

Server biasanya berjalan 24/7

Ketika listrik mati, server akan reboot secara otomatis

Untuk menghindari downtime, jalankan apache pada


server anda sebagai automatic services
19
DISABLE ERROR REPORTING

Banyak teknik hacking yang menggunakan error reporting sebagai


celah untuk masuk ke aplikasi anda

Disable Error Reporting pada PHP akan memberikan peningkatan


keamanan pada aplikasi anda, hal ini akan memberikan informasi
yang lebih sedikit kepada hacker yang mencoba masuk pada
aplikasi anda
20
PRODUCTION MODE APPLICATION

FMIS secara default menggunakan setting


PRODUCTION ENVIRONMENT

Apabila dibutuhkan untuk debug maka FMIS dapat


diubah pada setting development yang hanya boleh
dilakukan pada Komputer Lokal
21
SQL Server
Security
Enhance

3
PERBANDINGAN EDISI SQL SERVER

23
Perbandingan Edisi
SQL Server (2)

24
LANGKAH INSTALASI PADA WINDOWS

25
LANGKAH INSTALASI PADA LINUX

• sudo apt install mssql-server

26
DELETE ROOT – USER MANAGEMENT – LIMIT REMOTE
CONNECTION

Jangan gunakan user sa untuk aplikasi, gunakan user spesifik selain sa dengan rule yang
memadai

Gunakan satu username/password untuk tiap database, hindari menggunakan satu


user/password untuk semua

Jika anda membutuhkan remote access untuk database, gunakan read-only access
sebagai pendekatan utama. Batasi user yang dapat menggunakan fasilitas remote access.

Ubah Password secara periodik

27
Operating System
Security
Enhance

4
SETUP FIREWALL WINDOWS CONTOH

• Buka hanya port yang


dibutuhkan FMIS sebagai
webserver,
• Sebagai contoh yaitu port 80
atau 443 (SSL), atau port lain jika
Anda menggunakan costum port
seperti 8080

29
SETUP FIREWALL LINUX DENGAN CONTOH

• Buka hanya port yang


dibutuhkan FMIS sebagai
webserver,
• Sebagai contoh yaitu port 80
atau 443 (SSL), atau port lain jika
Anda menggunakan costum port
seperti 8080

30
FIREWALL

Selalu gunakan firewall

Buka Hanya Port-Port yang dibutuhkan pada server anda (untuk


SSL buka port 433, atau untuk database anda buka port 1433)

Gunakan Hardware tambahan untuk Firewall anda

31
FTP SERVER

Ubah FTP Password secara periodic

Dalam format VirtualHost, setiap aplikasi seharusnya


memiliki FTP user dan password terpisah

CHWON dan CHMOD secara hati-hati

32
Reboot your Monitor
server only if server usage,
Change Create role for
you need to prepare for
Password Monitor your each
Periodically server with responsibilty scaling when Read, try, error,
Serverless a peak repeat
solution seasons
come
THANK YOU!
TIMAPLIKASI@YAHOO.COM

HTTPS://SIMDA-ONLINE.ID

You might also like