SlideShare uma empresa Scribd logo
1 de 75
Baixar para ler offline
I PUTU HARIYADI
putu.hariyadi@universitasbumigora.ac.id
www.iputuhariyadi.net
1. Pengamanan Router MikroTik.
2. Manajemen Konfigurasi dan Otomatisasi dengan Ansible.
3. Studi Kasus Ansible Playbook untuk mengotomatisasi keamanan MikroTik
RouterOS.
www.universitasbumigora.ac.id 2
www.universitasbumigora.ac.id 3
Rancangan jaringan ujicoba
disimulasikan menggunakan
VMWare Workstation 15.5 Pro.
Terdapat 5 (lima) Virtual
Machine (VM) yang dibuat
yaitu:
• 1 (satu) VM Ansible Control
Machine menggunakan
CentOS 7. Interface ens33
menggunakan network
connection mode host-only
(vmnet1). Sedangkan untuk
ens37 menggunakan mode
NAT (vmnet8).
• 4 (empat) VM MikroTik
RouterOS dengan 5 (lima)
interface yaitu ether1,
ether2, ether3, ether4 dan
ether5 menggunakan mode
host-only (vmnet1).
www.universitasbumigora.ac.id
4
 Disarankan untuk menggunakan versi RouterOS terkini.
 Beberapa rilis RouterOS versi lama memiliki kelemahan atau kerentanan yang
telah diperbaiki.
 MikroTik secara berkala menambahkan fungsionalitas baru dan meningkatkan
unjuk kerja serta stabilitas dari RouterOS dengan merilis pembaharuan.
 Lakukan pembaharuan versi RouterOS dari perangkat yang digunakan untuk
memastikan keamanannya.
www.universitasbumigora.ac.id 5
Versi RouterOS memiliki 3 (tiga) release chains:
 Beta: dirilis setiap beberapa hari dan hanya menjalani pengujian internal dasar.
 Stable: dirilis setiap beberapa minggu dan mencakup seluruh fitur serta perbaikan
yang teruji.
 Long Term: jarang dirilis dan mencakup hanya perbaikan yang sangat penting serta
peningkatan dalam satu nomor percabangan namun tidak menambah fitur baru.
www.universitasbumigora.ac.id 6
(Image Source: https://wiki.mikrotik.com/wiki/File:Metro-systemv2.png)
 Terdapat 2 (dua) metode Upgrade yaitu Automatic Upgrade dan Manual
Upgrade.
 Fitur Automatic Upgrade akan menghubungkan ke MikroTik download servers
dan mengecek apakah terdapat versi RouterOS yang lebih baru untuk perangkat
yang digunakan saat ini.
 Terdapat beberapa cara yang dapat digunakan untuk melakukan pembaharuan
RouterOS secara otomatis yaitu melalui:
 Quickset
 System Packages
www.universitasbumigora.ac.id 7
 Quickset
 System Packages
www.universitasbumigora.ac.id
8
 Tersedia mulai RouterOS versi 6.
 Otomatisasi proses pembaharuan dapat dilakukan dengan menjalankan skrip pada
System Scheduler.
 Skrip untuk RouterOS setelah versi 6.31.
/system package update
check-for-updates once
:delay 3s;
:if ( [get status] = "New version is available") do={ install }
 Skrip untuk RouterOS sampai versi 6.31.
/system package update
check-for-updates
:delay 3s;
:if ( [get current-version] != [get latest-version]) do={ upgrade }
www.universitasbumigora.ac.id 9
www.universitasbumigora.ac.id 10
Terdapat beberapa cara yang dapat digunakan untuk melakukan pembaharuan
RouterOS secara manual yaitu melalui:
 Winbox, dengan melakukan drag & drop file routeros-*.npk ke menu Files.
 WebFig, dengan mengunggah file routeros-*.npk melalui menu Files.
 FTP, dengan mengunggah file routeros-*.npk ke root directory.
 The Dude
www.universitasbumigora.ac.id 11
Awali dengan mengunduh file upgrade package routeros-*.npk sesuai dengan jenis sistem
dari perangkat yang digunakan pada situs MikroTik https://www.mikrotik.com/download
www.universitasbumigora.ac.id
12
www.universitasbumigora.ac.id 13
1. Mengubah default username admin menggunakan username berbeda, sebagai
contoh menggunakan ansible.
/user add name=ansible password=ansiblesecret group=full
/user remove admin
Atau
/user set name=ansible admin
2. Mengatur sandi (password) dari user dan menggunakan sandi yang aman,
sebagai contoh menggunakan ansiblesecret.
/user set password=ansiblesecret admin
Atau
/password
www.universitasbumigora.ac.id 14
3. Membatasi akses username agar hanya dapat digunakan login dari alamat IP
sumber tertentu.
Sebagai contoh username ansible hanya dapat digunakan untuk mengakses
RouterOS dari IP 192.168.169.254.
/user set address=192.168.169.254 ansible
www.universitasbumigora.ac.id 15
www.universitasbumigora.ac.id 16
1. Menonaktifkan IP Service yang tidak aman, seperti ftp, telnet, www.
/ip service disable ftp,telnet,www
2. Menonaktifkan IP Service yang tidak digunakan, seperti api, api-ssl.
/ip service disable api,api-ssl
3. Mengubah nomor port dan membatasi akses pada IP Service.
/ip service set port=2222 ssh
/ip service set address=192.168.169.254 winbox
/ip service print
www.universitasbumigora.ac.id 17
www.universitasbumigora.ac.id 18
1. Menonaktifkan layanan MAC-Telnet.
2. Menonaktifkan layanan MAC-Winbox.
3. Menonaktifkan layanan MAC-Ping.
www.universitasbumigora.ac.id 19
www.universitasbumigora.ac.id 20
 Mikrotik Neighbor Discovery Protocol (MNDP) digunakan untuk menemukan
dan mengetahui perangkat Mikrotik lainnya yang terdapat di jaringan.
 Menonaktifkan neighbor discovery pada semua interface.
www.universitasbumigora.ac.id 21
www.universitasbumigora.ac.id 22
 Bandwidth Server digunakan untuk menguji throughput diantara 2 (dua) router
MikroTik.
 Disarankan untuk menonaktifkan Bandwidth Test (Btest) Server pada lingkungan
production.
www.universitasbumigora.ac.id 23
www.universitasbumigora.ac.id 24
 Domain Name System (DNS) Cache digunakan untuk meminimalkan permintaan
DNS ke server DNS eksternal sehingga meminimalkan waktu resolusi atau
pemetaan DNS.
 Apabila tidak diperlukan maka DNS Cache dapat dinonaktifkan.
www.universitasbumigora.ac.id 25
 Secara default service MikroTik Caching Proxy, MikroTik Socks Proxy, MikroTik
(UPNP) Service dan MikroTik Dynamic Name Service tidak aktif. Namun apabila
service tersebut telah dikonfigurasi dan tidak diperlukan atau tidak digunakan
maka sangat disarankan untuk dinonaktifkan.
 Menonaktifkan MikroTik Caching Proxy.
www.universitasbumigora.ac.id 26
 Menonaktifkan MikroTik Socks Proxy.
 Menonaktifkan MikroTik Universal Plug and Play (UPNP) Service.
www.universitasbumigora.ac.id 27
 Menonaktifkan MikroTik Dynamic Name Service atau IP Cloud.
www.universitasbumigora.ac.id 28
 RouterOS mendukung penggunaan crypto yang lebih tangguh untuk SSH namun
secara default belum aktif.
 Mengaktifkan Strong Crypto SSH:
www.universitasbumigora.ac.id 29
 Disarankan untuk menonaktifkan seluruh interface yang tidak digunakan pada
router sehingga mengurangi akses yang tidak sah atau tidak terotorisasi.
 Sebagai contoh untuk menonaktifkan interface ether2, ether3, ether4 dan ether5
pada router maka dapat mengeksekusi perintah berikut:
www.universitasbumigora.ac.id 30
www.universitasbumigora.ac.id
31
 Menurut situs Ansible, Ansible merupakan mesin otomatisasi Teknologi Informasi
(TI) sederhana yang dapat mengotomatisasi cloud provisioning, manajemen
konfigurasi, penerapan aplikasi, intra-service orchestration dan kebutuhan TI
lainnya.
 Menurut situs Edureka, keuntungan menggunakan Ansible antara lain:
1. Simple, menggunakan sintak penulisan yang ditulis menggunakan YAML yang
disebut dengan playbook.
2. Agentless, tidak diperlukan agent atau software khusus untuk diinstalasi pada
host yang diautomasi.
3. Powerful & Flexible, memiliki banyak modul untuk manajemen infrastruktur,
jaringan, sistem operasi dan layanan.
4. Efficient, tidak ada software yang diperlukan untuk instalasi pada server
sehingga lebih banyak sumber daya yang dapat digunakan oleh aplikasi.
www.universitasbumigora.ac.id 32
1. Provisioning
Ansible memastikan paket-paket yang dibutuhkan akan diunduh dan diinstalasi
sehingga aplikasi dapat diterapkan.
2. Configuration Management
Menetapkan dan mempertahankan konsistensi dari kinerja produk dengan
mencatat dan memperbaharui informasi lengkap yang menjelaskan perangkat
keras dan lunak perusahaan. Seperti versi dan pembaharuan yang telah
diterapkan pada paket software yang terinstal dan lokasi serta alamat jaringan
dari perangkat keras.
3. Application Deployment
Ansible dapat memanajemen secara efektif keseluruhan life cycle dari aplikasi,
mulai dari development sampai produksi.
4. Security and Compliance
Kebijakan keamanan dapat didefinisikan pada Ansible sehingga proses
pemindaian dan pemulihan kebijakan ke lokasi dapat diintegrasikan ke dalam
proses secara otomatis.
www.universitasbumigora.ac.id 33
5. Orchestration
Ansible menyediakan orchestration dalam arti menyelaraskan permintaan bisnis
dengan aplikasi, data, dan infrastruktur. Ini mendefinisikan kebijakan dan tingkat
layanan melalui alur kerja otomatis, penyediaan, dan manajemen perubahan
sehingga menciptakan aplikasi selaras dengan infrastruktur yang dapat
ditingkatkan dari atas ke bawah berdasarkan kebutuhan setiap aplikasi.
www.universitasbumigora.ac.id 34
 Controller Machine: mesin dimana ansible diinstalasi dan bertanggungjawab
untuk menjalankan provisioning pada server yang dikelola.
 Inventory: file inisialisasi yang memuat informasi tentang server yang dikelola.
 Playbook:Titik masuk untuk Ansible provisioning, dimana otomatisasi didefinisikan
melalui tugas (tasks) menggunakan formatYAML..
 Task: Blok yang mendefinisikan satu prosedur untuk dieksekusi, sebagai contoh
instalasi package tertentu.
 Module: Modul merupakan abstraksi dari tugas sistem, seperti berkaitan dengan
package atau membuat dan mengubah file. Ansible memiliki banyak modul built-in
(bawaan), namun dapat juga dibuat modul khusus.
www.universitasbumigora.ac.id 35
 Role: Cara yang telah ditentukan sebelumnya untuk mengatur playbook dan file
lainnya untuk memfasilitasi berbagi pakai dan menggunakan kembali bagian dari
provisioning.
 Play: provisioning yang dieksekusi mulai dari awal sampai akhir disebut dengan
play. Dengan kata lain, eksekusi dari playbook disebut dengan play.
 Facts: variable global yang memuat informasi tentang sistem, seperti interface
jaringan atau sistem operasi.
 Handlers: Digunakan untuk memicu perubahan status dari service, seperti me-
restart atau menghentikan service.
www.universitasbumigora.ac.id 36
www.universitasbumigora.ac.id 37
(Image source: https://d1jnx9ba8s6j9r.cloudfront.net/blog/wp-content/uploads/2016/11/Ansible-Architechture-What-Is-Ansible-Edureka-768x449.png)
www.universitasbumigora.ac.id 38
R1 (CHR)
R2 (CHR)
R3 (CHR)
R4 (CHR)
Managed MachineAnsible Control
Machine
Inventory
File
Playbook
Secure Shell
(SSH)
 raw
Executes a low-down and dirty SSH command, not going through the module
subsystem. (https://docs.ansible.com/ansible/latest/modules/raw_module.html)
.
www.universitasbumigora.ac.id 39
 ping
Try to connect to host, verify a usable python and return pong on success.
(https://docs.ansible.com/ansible/latest/modules/ping_module.html)
.
www.universitasbumigora.ac.id 40
 routeros_command
Run commands on remote devices running MikroTik RouterOS.
(https://docs.ansible.com/ansible/latest/modules/routeros_command_module.html)
.
www.universitasbumigora.ac.id 41
 routeros_command Parameters.
www.universitasbumigora.ac.id 42
 debug
Print statements during execution.
(https://docs.ansible.com/ansible/latest/modules/debug_module.html)
.
www.universitasbumigora.ac.id 43
1. Menginstalasi repository Extra Packages for Enterprise Linux (EPEL) karena
Ansible tidak secara default terdapat padaYum Repositories.
# yum -y install epel-release
2. Menginstalasi Ansible
# yum -y install ansible
3. Menampilkan informasi versi Ansible yang telah terinstalasi.
# ansible --version
www.universitasbumigora.ac.id 44
 Inventory merupakan file inisialisasi yang digunakan oleh Ansible untuk
mendaftarkan dan mengelompokkan mesin atau host yang akan dikelola. Lokasi dari
file inventory secara default adalah “/etc/ansible/hosts”.
 Menambahkan managed machines ke file inventory menggunakan editor nano.
# nano /etc/ansible/hosts
[routers]
R1 ansible_host=192.168.169.1
R2 ansible_host=192.168.169.2
R3 ansible_host=192.168.169.3
R4 ansible_host=192.168.169.4
Variable ansible_host digunakan untuk mengatur alamat IP dari target atau managed
machine yaitu dalam hal ini adalah alamat IP dari setiap router. Sebagai contoh R1
merupakan inventory_hostname atau alias bagi router dengan alamat 192.168.169.1.
Simpan perubahan dengan menekan CTRL+O dan tekan Enter. Keluar dari editor
nano dengan menekan CTRL+X.
www.universitasbumigora.ac.id
45
 Memverifikasi hasil penambahan inventory.
# tail –n 5 /etc/ansible/hosts
www.universitasbumigora.ac.id 46
Membuat key pair menggunakan utilitas ssh-keygen pada Ansible Control
Machine.
# ssh-keygen
Tekan Enter pada inputan Enter file in which to save the key (/root/.ssh/id_rsa):
untuk menggunakan lokasi dan nama file default penyimpanan key yaitu
/root/.ssh/id_rsa.
Tekan Enter pada inputan “Enter passphrase (empty for no passphrase):” dan
“Enter same passphrase again:” yang tampil untuk apabila ingin mengosongkan
passphrase.Tampil proses pembuatan key.Tunggu hingga proses selesai
dilakukan.
www.universitasbumigora.ac.id 47
 Penyalinan Public Key dari CentOS 7 Ansible Control Machine ke router R1 dapat
dilakukan dengan menggunakan utilitas scp (secure copy).
# scp /root/.ssh/id_rsa.pub admin@R1:id_rsa.pub
Ketik yes dan tekan Enter pada pesan konfirmasi Are you sure you want to continue
connecting (yes/no)?.
Selanjutnya tampil inputan password untuk user admin dari managed machine R1
dengan alamat IP 192.168.169.1. Masukkan sandi dari user admin dan tekan Enter.
www.universitasbumigora.ac.id 48
 Dengan cara yang sama, lakukan untuk managed machine R2, R3 dan R4.
 Proses penyalinan Public Key ke R2 dan R3.
www.universitasbumigora.ac.id 49
 Proses penyalinan Public Key ke R4.
www.universitasbumigora.ac.id 50
1. Ad-Hoc
ansible <inventory> -m
Sebagai contoh eksekusi ansible untuk group inventory dengan nama “routers” dan modul
ping.
# ansible routers –m ping
2. Playbooks
ansible-playbook filename.yml
Sebagai contoh eksekusi ansible playbook dengan nama file security.yml.
# ansible-playbook security.yml
3. Automation Framework
Menurut situs Ansible, Ansible Tower merupakan solusi berbasis web yang membuat
Ansible lebih mudah digunakan untuk tim TI dan dirancang untuk menjadi pusat semua
tugas otomasi serta memungkinkan untuk mengontrol akses pengguna. Inventory dapat
dikelola secara grafis atau disinkronisasikan dengan beragam sumber Cloud. Tower juga
mencatat (log) semua pekerjaan, terintegrasi dengan LDAP dan memiliki API REST.
Tersedia pula tool Command Line untuk memudahkan integrasi dengan Jenkins juga.
www.universitasbumigora.ac.id 51
 Membuat user baru pada seluruh router dengan ketentuan:
a. Username: ansible
b. Password: ansiblesecret
c. Group: full
d. Allowed Address: 192.168.169.254 dan 192.168.169.253
# ansible routers -m raw -a "/user add name=ansible group=full
password=ansiblesecret address=192.168.169.253,192.168.169.254;quit;"
-u admin -k
www.universitasbumigora.ac.id 52
Pada inputan SSH password: yang tampil,
masukkan sandi dari user admin dan tekan Enter.
 Hasil verifikasi melalui Winbox menunjukkan bahwa username ansible
berhasil dibuat pada setiap router.
www.universitasbumigora.ac.id 53
 Meng-import file SSH key id_rsa.pub yang telah disalin ke setiap router pada tahap
sebelumnya untuk user ansible.
# ansible routers -m raw -a "/user ssh-keys import
public-key-file=id_rsa.pub user=ansible;quit;" -u admin -k
www.universitasbumigora.ac.id 54
Pada inputan SSH password: yang tampil,
masukkan sandi dari user admin dan tekan
Enter.
 Hasil verifikasi melalui Winbox menunjukkan bahwa SSH key untuk user ansible
berhasil di import pada setiap router.
www.universitasbumigora.ac.id 55
# nano /etc/ansible/hosts
[routers]
R1 ansible_host=192.168.169.1
R2 ansible_host=192.168.169.2
R3 ansible_host=192.168.169.3
R4 ansible_host=192.168.169.4
[routers:vars]
ansible_user=ansible
ansible_connection=network_cli
ansible_network_os=routeros
www.universitasbumigora.ac.id
56
• Variable ansible_user menentukan user yang
digunakan untuk terkoneksi ke router yaitu
ansible.
• Variable ansible_connection digunakan
untuk mengatur agar Ansible
memperlakukan managed machine sebagai
perangkat jaringan dengan lingkungan
eksekusi yang terbatas yaitu network_cli.
• Variable ansible_network_os digunakan
untuk menginformasikan platform jaringan
dari managed machine yaitu routeros.
Simpan perubahan dengan menekan CTRL+O
dan tekan Enter. Keluar dari editor nano
dengan menekan CTRL+X.
 Memverifikasi hasil penambahan group variables pada file inventory.
# tail /etc/ansible/hosts
www.universitasbumigora.ac.id 57
 Memverifikasi koneksi ke seluruh managed machines untuk group “routers”
menggunakan modul ping.
www.universitasbumigora.ac.id 58
 Membuat file playbook menggunakan editor nano dengan ekstensi “yml” untuk
menghapus username admin di seluruh router.
# nano remove-admin.yml
www.universitasbumigora.ac.id 59
• Playbooks memuat Plays
• Plays memuat Tasks
• Tasks memanggil Modules
Simpan perubahan dengan menekan
CTRL+O dan Enter.
Tekan CTRL+X untuk keluar dari
editor nano.
 Mengecek sintak dari playbook sebelum dieksekusi sehingga memastikan tidak
terdapat permasalahan terkait sintak dengan mengeksekusi perintah ansible-
playbook dengan flag --syntax-check.
# ansible-playbook remove-admin.yml --syntax-check
 Menampilkan informasi host yang terdampak oleh playbook sebelum dieksekusi
dapat menggunakan perintah:
www.universitasbumigora.ac.id 60
 Mengeksekusi file
playbook remove-
admin.yml
menggunakan
ansible-playbook.
www.universitasbumigora.ac.id 61
 Hasil verifikasi melalui Winbox menunjukkan bahwa user admin telah berhasil
dihapus pada setiap router.
www.universitasbumigora.ac.id 62
Kebijakan Keamanan Mikrotik RouterOS yang diotomatisasi menggunakan Ansible Playbook
pada setiap Router adalah sebagai berikut:
1. Menonaktifkan RouterOS MAC-Access.
2. Menonaktifkan Neighbor Discovery.
3. Menonaktifkan BTest Server.
4. Menonaktifkan DNS Cache.
5. Menonaktifkan Client Services.
6. Mengaktifkan Strong Crypto SSH.
7. Menonaktifkan Interface Router untuk ether4 dan ether5.
8. Mengaktifkan RouterOS Auto-Upgrade menggunakan system scheduler agar terjadwal
untuk beroperasi setiap hari pada jam 01:00:00.
9. Menonaktifkan IP Service api, api-ssl, ftp, telnet, www dan www-ssl.
10. Membatasi akses pada IP Service Winbox dan SSH agar hanya dapat diakses dari
192.168.169.253 dan 192.168.169.254. www.universitasbumigora.ac.id 63
 Membuat file playbook menggunakan editor nano dengan ekstensi “yml” untuk
mengotomatisasi pengamanan RouterOS berdasarkan kebijakan yang telah ditentukan
pada seluruh router.
# nano security.yml
www.universitasbumigora.ac.id
64
www.universitasbumigora.ac.id 65
Simpan perubahan dengan menekan CTRL+O dan Enter. Tekan CTRL+X untuk keluar
dari editor nano.
www.universitasbumigora.ac.id
66
 Mengecek sintak dari playbook sebelum dieksekusi sehingga memastikan tidak
terdapat permasalahan terkait sintak dengan mengeksekusi perintah ansible-
playbook dengan flag --syntax-check.
# ansible-playbook security.yml --syntax-check
www.universitasbumigora.ac.id 67
 Mengeksekusi file playbook security.yml menggunakan ansible-playbook.
www.universitasbumigora.ac.id
68
www.universitasbumigora.ac.id 69
www.universitasbumigora.ac.id 70
www.universitasbumigora.ac.id 71
www.universitasbumigora.ac.id 72
www.universitasbumigora.ac.id 73
 MikroTik, Manual: SecurityYour Router, 2019,
https://wiki.mikrotik.com/wiki/Manual:Securing_Your_Router
 MikroTik, Manual: Upgrading RouterOS, 2019,
https://wiki.mikrotik.com/wiki/Manual:Upgrading_RouterOS
 MikroTik, Manual:IP/DNS, 2020, https://wiki.mikrotik.com/wiki/Manual:IP/DNS
 Ansible Documentation, https://docs.ansible.com/
 Edureka,What is Ansible? – Configuration Management And Automation With
Ansible, 2020, https://www.edureka.co/blog/what-is-ansible/
 I Putu Hariyadi, Modul One Day Workshop “Proxmox Automation With Ansible”,
Universitas Bumigora, 2019, https://iputuhariyadi.net/2019/11/04/modul-one-day-
workshop-proxmox-automation-with-ansible/
www.universitasbumigora.ac.id 74
www.universitasbumigora.ac.id
75

Mais conteúdo relacionado

Mais procurados

Crash dump analysis - experience sharing
Crash dump analysis - experience sharingCrash dump analysis - experience sharing
Crash dump analysis - experience sharing
James Hsieh
 

Mais procurados (20)

Managing PostgreSQL with Ansible
 Managing PostgreSQL with Ansible Managing PostgreSQL with Ansible
Managing PostgreSQL with Ansible
 
ProxySQL for MySQL
ProxySQL for MySQLProxySQL for MySQL
ProxySQL for MySQL
 
Cluster con postgresql
Cluster con postgresqlCluster con postgresql
Cluster con postgresql
 
Crash dump analysis - experience sharing
Crash dump analysis - experience sharingCrash dump analysis - experience sharing
Crash dump analysis - experience sharing
 
Ansible Playbook
Ansible PlaybookAnsible Playbook
Ansible Playbook
 
Accelerated Linux Core Dump Analysis training public slides
Accelerated Linux Core Dump Analysis training public slidesAccelerated Linux Core Dump Analysis training public slides
Accelerated Linux Core Dump Analysis training public slides
 
What is new in MariaDB 10.6?
What is new in MariaDB 10.6?What is new in MariaDB 10.6?
What is new in MariaDB 10.6?
 
Using Wildcards with rsyslog's File Monitor imfile
Using Wildcards with rsyslog's File Monitor imfileUsing Wildcards with rsyslog's File Monitor imfile
Using Wildcards with rsyslog's File Monitor imfile
 
[네이버오픈소스세미나] Pinpoint를 이용해서 서버리스 플랫폼 Apache Openwhisk 트레이싱하기 - 오승현
[네이버오픈소스세미나] Pinpoint를 이용해서 서버리스 플랫폼 Apache Openwhisk 트레이싱하기 - 오승현[네이버오픈소스세미나] Pinpoint를 이용해서 서버리스 플랫폼 Apache Openwhisk 트레이싱하기 - 오승현
[네이버오픈소스세미나] Pinpoint를 이용해서 서버리스 플랫폼 Apache Openwhisk 트레이싱하기 - 오승현
 
Recursion and looping
Recursion and loopingRecursion and looping
Recursion and looping
 
Hands on ansible
Hands on ansibleHands on ansible
Hands on ansible
 
Building Internet Server using CentOS 7 and CentOS Web Panel (CWP)
Building Internet Server using CentOS 7 and CentOS Web Panel (CWP)Building Internet Server using CentOS 7 and CentOS Web Panel (CWP)
Building Internet Server using CentOS 7 and CentOS Web Panel (CWP)
 
MariaDB MaxScale monitor 매뉴얼
MariaDB MaxScale monitor 매뉴얼MariaDB MaxScale monitor 매뉴얼
MariaDB MaxScale monitor 매뉴얼
 
PostgreSQL + ZFS best practices
PostgreSQL + ZFS best practicesPostgreSQL + ZFS best practices
PostgreSQL + ZFS best practices
 
Guía de pgpool Paso a Paso
Guía de pgpool Paso a PasoGuía de pgpool Paso a Paso
Guía de pgpool Paso a Paso
 
Java bean
Java beanJava bean
Java bean
 
MySQL GTID Concepts, Implementation and troubleshooting
MySQL GTID Concepts, Implementation and troubleshooting MySQL GTID Concepts, Implementation and troubleshooting
MySQL GTID Concepts, Implementation and troubleshooting
 
NY Meetup: Scaling MariaDB with Maxscale
NY Meetup: Scaling MariaDB with MaxscaleNY Meetup: Scaling MariaDB with Maxscale
NY Meetup: Scaling MariaDB with Maxscale
 
TibcoBW6.0
TibcoBW6.0TibcoBW6.0
TibcoBW6.0
 
ProxySQL on Kubernetes
ProxySQL on KubernetesProxySQL on Kubernetes
ProxySQL on Kubernetes
 

Semelhante a MikroTik RouterOS Security Automation With Ansible

Internet Programming v2.0 Comp
Internet Programming v2.0 CompInternet Programming v2.0 Comp
Internet Programming v2.0 Comp
Nurdin Al-Azies
 
Share presentasi PLIK
Share presentasi PLIKShare presentasi PLIK
Share presentasi PLIK
Ubayt
 
Step by step konfigurasi squid server dari berbagai kasus
Step by step konfigurasi squid server dari berbagai kasusStep by step konfigurasi squid server dari berbagai kasus
Step by step konfigurasi squid server dari berbagai kasus
filar
 
Squidproxyserver
SquidproxyserverSquidproxyserver
Squidproxyserver
puput51
 

Semelhante a MikroTik RouterOS Security Automation With Ansible (20)

Python Network Programming For Network Engineers
Python Network Programming For Network EngineersPython Network Programming For Network Engineers
Python Network Programming For Network Engineers
 
Sentralisasi Hotspot Mikrotik Berbasis EoIP over PPTP
Sentralisasi Hotspot Mikrotik Berbasis EoIP over PPTPSentralisasi Hotspot Mikrotik Berbasis EoIP over PPTP
Sentralisasi Hotspot Mikrotik Berbasis EoIP over PPTP
 
Modul Solusi UN SMK TKJ Paket 1 - Membangun PC Router & Proxy Server
Modul Solusi UN SMK TKJ Paket 1 - Membangun PC Router & Proxy ServerModul Solusi UN SMK TKJ Paket 1 - Membangun PC Router & Proxy Server
Modul Solusi UN SMK TKJ Paket 1 - Membangun PC Router & Proxy Server
 
Publikasi 07.11.1856
Publikasi 07.11.1856Publikasi 07.11.1856
Publikasi 07.11.1856
 
Desain dan Implementasi Sistem Lab From Home (LFH)
Desain dan Implementasi Sistem Lab From Home (LFH)Desain dan Implementasi Sistem Lab From Home (LFH)
Desain dan Implementasi Sistem Lab From Home (LFH)
 
Network Monitoring Documentation
Network Monitoring DocumentationNetwork Monitoring Documentation
Network Monitoring Documentation
 
Monitoring Jaringan Komputer dan Server di GNS3
Monitoring Jaringan Komputer dan Server di GNS3Monitoring Jaringan Komputer dan Server di GNS3
Monitoring Jaringan Komputer dan Server di GNS3
 
Backup system-mikrotik
Backup system-mikrotikBackup system-mikrotik
Backup system-mikrotik
 
Mikrotik Router OS - Basic Configuration [Part-1]
Mikrotik Router OS - Basic Configuration [Part-1]Mikrotik Router OS - Basic Configuration [Part-1]
Mikrotik Router OS - Basic Configuration [Part-1]
 
Internet Programming v2.0 Comp
Internet Programming v2.0 CompInternet Programming v2.0 Comp
Internet Programming v2.0 Comp
 
Squid indonesia
Squid indonesiaSquid indonesia
Squid indonesia
 
Bab iii
Bab iiiBab iii
Bab iii
 
Share presentasi PLIK
Share presentasi PLIKShare presentasi PLIK
Share presentasi PLIK
 
SAMP (Solaris, Apache, MySQL, PHP)
SAMP (Solaris, Apache, MySQL, PHP)SAMP (Solaris, Apache, MySQL, PHP)
SAMP (Solaris, Apache, MySQL, PHP)
 
Superkomputer dengan Native Linux(encrypted)
Superkomputer dengan Native Linux(encrypted)Superkomputer dengan Native Linux(encrypted)
Superkomputer dengan Native Linux(encrypted)
 
Module 1 Introduction Mikrotik dan IP.pdf
Module 1 Introduction Mikrotik dan IP.pdfModule 1 Introduction Mikrotik dan IP.pdf
Module 1 Introduction Mikrotik dan IP.pdf
 
Step by step konfigurasi squid server dari berbagai kasus
Step by step konfigurasi squid server dari berbagai kasusStep by step konfigurasi squid server dari berbagai kasus
Step by step konfigurasi squid server dari berbagai kasus
 
Supriyanto squidproxyserver
Supriyanto squidproxyserverSupriyanto squidproxyserver
Supriyanto squidproxyserver
 
Squidproxyserver
SquidproxyserverSquidproxyserver
Squidproxyserver
 
PENYELESAIAN UKK FIX TKJ SMK NEGERI 4 GORONTALO (2019)
PENYELESAIAN UKK FIX TKJ SMK NEGERI 4 GORONTALO (2019)PENYELESAIAN UKK FIX TKJ SMK NEGERI 4 GORONTALO (2019)
PENYELESAIAN UKK FIX TKJ SMK NEGERI 4 GORONTALO (2019)
 

Mais de I Putu Hariyadi

Mais de I Putu Hariyadi (20)

Panduan Praktikum Administrasi Sistem Jaringan Edisi 2
Panduan Praktikum Administrasi Sistem Jaringan Edisi 2Panduan Praktikum Administrasi Sistem Jaringan Edisi 2
Panduan Praktikum Administrasi Sistem Jaringan Edisi 2
 
Panduan Praktikum Administrasi Sistem Jaringan - Proxmox VE 8.0.pdf
Panduan Praktikum Administrasi Sistem Jaringan - Proxmox VE 8.0.pdfPanduan Praktikum Administrasi Sistem Jaringan - Proxmox VE 8.0.pdf
Panduan Praktikum Administrasi Sistem Jaringan - Proxmox VE 8.0.pdf
 
Panduan Praktikum Pemrograman Sistem Jaringan
Panduan Praktikum Pemrograman Sistem JaringanPanduan Praktikum Pemrograman Sistem Jaringan
Panduan Praktikum Pemrograman Sistem Jaringan
 
Pembahasan Solusi Soal UTS Semester Genap 2023 - Praktikum Jaringan Komputer ...
Pembahasan Solusi Soal UTS Semester Genap 2023 - Praktikum Jaringan Komputer ...Pembahasan Solusi Soal UTS Semester Genap 2023 - Praktikum Jaringan Komputer ...
Pembahasan Solusi Soal UTS Semester Genap 2023 - Praktikum Jaringan Komputer ...
 
Panduan Praktikum Cloud Computing Berbasis OpenStack Versi 2.0
Panduan Praktikum Cloud Computing Berbasis OpenStack Versi 2.0Panduan Praktikum Cloud Computing Berbasis OpenStack Versi 2.0
Panduan Praktikum Cloud Computing Berbasis OpenStack Versi 2.0
 
Pembahasan Solusi Soal Uji Kompetensi Keahlian (UKK) SMK TKJ Paket 4 Kurikulu...
Pembahasan Solusi Soal Uji Kompetensi Keahlian (UKK) SMK TKJ Paket 4 Kurikulu...Pembahasan Solusi Soal Uji Kompetensi Keahlian (UKK) SMK TKJ Paket 4 Kurikulu...
Pembahasan Solusi Soal Uji Kompetensi Keahlian (UKK) SMK TKJ Paket 4 Kurikulu...
 
Troubleshooting Computer Network (TSHOOT).pdf
Troubleshooting Computer Network (TSHOOT).pdfTroubleshooting Computer Network (TSHOOT).pdf
Troubleshooting Computer Network (TSHOOT).pdf
 
Proteksi Brute Force pada Proxmox Virtual Environment (PVE) menggunakan Fail2Ban
Proteksi Brute Force pada Proxmox Virtual Environment (PVE) menggunakan Fail2BanProteksi Brute Force pada Proxmox Virtual Environment (PVE) menggunakan Fail2Ban
Proteksi Brute Force pada Proxmox Virtual Environment (PVE) menggunakan Fail2Ban
 
Instalasi dan Konfigurasi VirtualBox Guest Additions pada VM CyberOps Worksta...
Instalasi dan Konfigurasi VirtualBox Guest Additions pada VM CyberOps Worksta...Instalasi dan Konfigurasi VirtualBox Guest Additions pada VM CyberOps Worksta...
Instalasi dan Konfigurasi VirtualBox Guest Additions pada VM CyberOps Worksta...
 
Instalasi dan Konfigurasi PNETLab pada Oracle VirtualBox
Instalasi dan Konfigurasi PNETLab pada Oracle VirtualBoxInstalasi dan Konfigurasi PNETLab pada Oracle VirtualBox
Instalasi dan Konfigurasi PNETLab pada Oracle VirtualBox
 
Cisco Wireless LAN Controller (WLC)
Cisco Wireless LAN Controller (WLC)Cisco Wireless LAN Controller (WLC)
Cisco Wireless LAN Controller (WLC)
 
Jaringan Nirkabel untuk ISP
Jaringan Nirkabel untuk ISPJaringan Nirkabel untuk ISP
Jaringan Nirkabel untuk ISP
 
Pembahasan Solusi Perhitungan VLSM untuk Lab 17.8.2 Packet Tracer - Skills In...
Pembahasan Solusi Perhitungan VLSM untuk Lab 17.8.2 Packet Tracer - Skills In...Pembahasan Solusi Perhitungan VLSM untuk Lab 17.8.2 Packet Tracer - Skills In...
Pembahasan Solusi Perhitungan VLSM untuk Lab 17.8.2 Packet Tracer - Skills In...
 
Pembahasan Solusi Subnetting Lab 17.8.1 Packet Tracer - Design and Build a Sm...
Pembahasan Solusi Subnetting Lab 17.8.1 Packet Tracer - Design and Build a Sm...Pembahasan Solusi Subnetting Lab 17.8.1 Packet Tracer - Design and Build a Sm...
Pembahasan Solusi Subnetting Lab 17.8.1 Packet Tracer - Design and Build a Sm...
 
Pembahasan Solusi Perhitungan VLSM untuk Lab 11.10.2 Packet Tracer - Design a...
Pembahasan Solusi Perhitungan VLSM untuk Lab 11.10.2 Packet Tracer - Design a...Pembahasan Solusi Perhitungan VLSM untuk Lab 11.10.2 Packet Tracer - Design a...
Pembahasan Solusi Perhitungan VLSM untuk Lab 11.10.2 Packet Tracer - Design a...
 
Pembahasan Solusi Perhitungan VLSM untuk Lab 11.10.1 Packet Tracer - Design a...
Pembahasan Solusi Perhitungan VLSM untuk Lab 11.10.1 Packet Tracer - Design a...Pembahasan Solusi Perhitungan VLSM untuk Lab 11.10.1 Packet Tracer - Design a...
Pembahasan Solusi Perhitungan VLSM untuk Lab 11.10.1 Packet Tracer - Design a...
 
Pembahasan Solusi Perhitungan VLSM untuk Lab 11.9.3 Packet Tracer - VLSM Desi...
Pembahasan Solusi Perhitungan VLSM untuk Lab 11.9.3 Packet Tracer - VLSM Desi...Pembahasan Solusi Perhitungan VLSM untuk Lab 11.9.3 Packet Tracer - VLSM Desi...
Pembahasan Solusi Perhitungan VLSM untuk Lab 11.9.3 Packet Tracer - VLSM Desi...
 
Pembahasan Solusi Perhitungan Subnetting untuk Lab 11.7.5 Packet Tracer - Sub...
Pembahasan Solusi Perhitungan Subnetting untuk Lab 11.7.5 Packet Tracer - Sub...Pembahasan Solusi Perhitungan Subnetting untuk Lab 11.7.5 Packet Tracer - Sub...
Pembahasan Solusi Perhitungan Subnetting untuk Lab 11.7.5 Packet Tracer - Sub...
 
Pembahasan Solusi Soal UAS Praktikum Manajemen Keamanan Informasi
Pembahasan Solusi Soal UAS Praktikum Manajemen Keamanan InformasiPembahasan Solusi Soal UAS Praktikum Manajemen Keamanan Informasi
Pembahasan Solusi Soal UAS Praktikum Manajemen Keamanan Informasi
 
Pembahasan Solusi Soal UAS Troubleshooting & Maintaining Computer Network
Pembahasan Solusi Soal UAS Troubleshooting & Maintaining Computer NetworkPembahasan Solusi Soal UAS Troubleshooting & Maintaining Computer Network
Pembahasan Solusi Soal UAS Troubleshooting & Maintaining Computer Network
 

Último

Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
pipinafindraputri1
 
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptxBAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
JuliBriana2
 
Contoh PPT Seminar Proposal Teknik Informatika.pptx
Contoh PPT Seminar Proposal Teknik Informatika.pptxContoh PPT Seminar Proposal Teknik Informatika.pptx
Contoh PPT Seminar Proposal Teknik Informatika.pptx
IvvatulAini
 

Último (20)

TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHANTUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
 
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
 
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
 
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptxOPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
 
Salinan dari JUrnal Refleksi Mingguan modul 1.3.pdf
Salinan dari JUrnal Refleksi Mingguan modul 1.3.pdfSalinan dari JUrnal Refleksi Mingguan modul 1.3.pdf
Salinan dari JUrnal Refleksi Mingguan modul 1.3.pdf
 
E-modul Materi Ekosistem untuk kelas X SMA
E-modul Materi Ekosistem untuk kelas X SMAE-modul Materi Ekosistem untuk kelas X SMA
E-modul Materi Ekosistem untuk kelas X SMA
 
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKAKELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
 
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfMODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
 
Kanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdfKanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdf
 
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfAksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
 
Materi Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptxMateri Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptx
 
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdfProv.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
 
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
 
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMKAksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
 
power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"
 
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptxBAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
 
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
 
Contoh PPT Seminar Proposal Teknik Informatika.pptx
Contoh PPT Seminar Proposal Teknik Informatika.pptxContoh PPT Seminar Proposal Teknik Informatika.pptx
Contoh PPT Seminar Proposal Teknik Informatika.pptx
 
Pengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, FigmaPengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, Figma
 
Memperkasakan Dialog Prestasi Sekolah.pptx
Memperkasakan Dialog Prestasi Sekolah.pptxMemperkasakan Dialog Prestasi Sekolah.pptx
Memperkasakan Dialog Prestasi Sekolah.pptx
 

MikroTik RouterOS Security Automation With Ansible

  • 2. 1. Pengamanan Router MikroTik. 2. Manajemen Konfigurasi dan Otomatisasi dengan Ansible. 3. Studi Kasus Ansible Playbook untuk mengotomatisasi keamanan MikroTik RouterOS. www.universitasbumigora.ac.id 2
  • 3. www.universitasbumigora.ac.id 3 Rancangan jaringan ujicoba disimulasikan menggunakan VMWare Workstation 15.5 Pro. Terdapat 5 (lima) Virtual Machine (VM) yang dibuat yaitu: • 1 (satu) VM Ansible Control Machine menggunakan CentOS 7. Interface ens33 menggunakan network connection mode host-only (vmnet1). Sedangkan untuk ens37 menggunakan mode NAT (vmnet8). • 4 (empat) VM MikroTik RouterOS dengan 5 (lima) interface yaitu ether1, ether2, ether3, ether4 dan ether5 menggunakan mode host-only (vmnet1).
  • 5.  Disarankan untuk menggunakan versi RouterOS terkini.  Beberapa rilis RouterOS versi lama memiliki kelemahan atau kerentanan yang telah diperbaiki.  MikroTik secara berkala menambahkan fungsionalitas baru dan meningkatkan unjuk kerja serta stabilitas dari RouterOS dengan merilis pembaharuan.  Lakukan pembaharuan versi RouterOS dari perangkat yang digunakan untuk memastikan keamanannya. www.universitasbumigora.ac.id 5
  • 6. Versi RouterOS memiliki 3 (tiga) release chains:  Beta: dirilis setiap beberapa hari dan hanya menjalani pengujian internal dasar.  Stable: dirilis setiap beberapa minggu dan mencakup seluruh fitur serta perbaikan yang teruji.  Long Term: jarang dirilis dan mencakup hanya perbaikan yang sangat penting serta peningkatan dalam satu nomor percabangan namun tidak menambah fitur baru. www.universitasbumigora.ac.id 6 (Image Source: https://wiki.mikrotik.com/wiki/File:Metro-systemv2.png)
  • 7.  Terdapat 2 (dua) metode Upgrade yaitu Automatic Upgrade dan Manual Upgrade.  Fitur Automatic Upgrade akan menghubungkan ke MikroTik download servers dan mengecek apakah terdapat versi RouterOS yang lebih baru untuk perangkat yang digunakan saat ini.  Terdapat beberapa cara yang dapat digunakan untuk melakukan pembaharuan RouterOS secara otomatis yaitu melalui:  Quickset  System Packages www.universitasbumigora.ac.id 7
  • 8.  Quickset  System Packages www.universitasbumigora.ac.id 8
  • 9.  Tersedia mulai RouterOS versi 6.  Otomatisasi proses pembaharuan dapat dilakukan dengan menjalankan skrip pada System Scheduler.  Skrip untuk RouterOS setelah versi 6.31. /system package update check-for-updates once :delay 3s; :if ( [get status] = "New version is available") do={ install }  Skrip untuk RouterOS sampai versi 6.31. /system package update check-for-updates :delay 3s; :if ( [get current-version] != [get latest-version]) do={ upgrade } www.universitasbumigora.ac.id 9
  • 11. Terdapat beberapa cara yang dapat digunakan untuk melakukan pembaharuan RouterOS secara manual yaitu melalui:  Winbox, dengan melakukan drag & drop file routeros-*.npk ke menu Files.  WebFig, dengan mengunggah file routeros-*.npk melalui menu Files.  FTP, dengan mengunggah file routeros-*.npk ke root directory.  The Dude www.universitasbumigora.ac.id 11
  • 12. Awali dengan mengunduh file upgrade package routeros-*.npk sesuai dengan jenis sistem dari perangkat yang digunakan pada situs MikroTik https://www.mikrotik.com/download www.universitasbumigora.ac.id 12
  • 14. 1. Mengubah default username admin menggunakan username berbeda, sebagai contoh menggunakan ansible. /user add name=ansible password=ansiblesecret group=full /user remove admin Atau /user set name=ansible admin 2. Mengatur sandi (password) dari user dan menggunakan sandi yang aman, sebagai contoh menggunakan ansiblesecret. /user set password=ansiblesecret admin Atau /password www.universitasbumigora.ac.id 14
  • 15. 3. Membatasi akses username agar hanya dapat digunakan login dari alamat IP sumber tertentu. Sebagai contoh username ansible hanya dapat digunakan untuk mengakses RouterOS dari IP 192.168.169.254. /user set address=192.168.169.254 ansible www.universitasbumigora.ac.id 15
  • 17. 1. Menonaktifkan IP Service yang tidak aman, seperti ftp, telnet, www. /ip service disable ftp,telnet,www 2. Menonaktifkan IP Service yang tidak digunakan, seperti api, api-ssl. /ip service disable api,api-ssl 3. Mengubah nomor port dan membatasi akses pada IP Service. /ip service set port=2222 ssh /ip service set address=192.168.169.254 winbox /ip service print www.universitasbumigora.ac.id 17
  • 19. 1. Menonaktifkan layanan MAC-Telnet. 2. Menonaktifkan layanan MAC-Winbox. 3. Menonaktifkan layanan MAC-Ping. www.universitasbumigora.ac.id 19
  • 21.  Mikrotik Neighbor Discovery Protocol (MNDP) digunakan untuk menemukan dan mengetahui perangkat Mikrotik lainnya yang terdapat di jaringan.  Menonaktifkan neighbor discovery pada semua interface. www.universitasbumigora.ac.id 21
  • 23.  Bandwidth Server digunakan untuk menguji throughput diantara 2 (dua) router MikroTik.  Disarankan untuk menonaktifkan Bandwidth Test (Btest) Server pada lingkungan production. www.universitasbumigora.ac.id 23
  • 25.  Domain Name System (DNS) Cache digunakan untuk meminimalkan permintaan DNS ke server DNS eksternal sehingga meminimalkan waktu resolusi atau pemetaan DNS.  Apabila tidak diperlukan maka DNS Cache dapat dinonaktifkan. www.universitasbumigora.ac.id 25
  • 26.  Secara default service MikroTik Caching Proxy, MikroTik Socks Proxy, MikroTik (UPNP) Service dan MikroTik Dynamic Name Service tidak aktif. Namun apabila service tersebut telah dikonfigurasi dan tidak diperlukan atau tidak digunakan maka sangat disarankan untuk dinonaktifkan.  Menonaktifkan MikroTik Caching Proxy. www.universitasbumigora.ac.id 26
  • 27.  Menonaktifkan MikroTik Socks Proxy.  Menonaktifkan MikroTik Universal Plug and Play (UPNP) Service. www.universitasbumigora.ac.id 27
  • 28.  Menonaktifkan MikroTik Dynamic Name Service atau IP Cloud. www.universitasbumigora.ac.id 28
  • 29.  RouterOS mendukung penggunaan crypto yang lebih tangguh untuk SSH namun secara default belum aktif.  Mengaktifkan Strong Crypto SSH: www.universitasbumigora.ac.id 29
  • 30.  Disarankan untuk menonaktifkan seluruh interface yang tidak digunakan pada router sehingga mengurangi akses yang tidak sah atau tidak terotorisasi.  Sebagai contoh untuk menonaktifkan interface ether2, ether3, ether4 dan ether5 pada router maka dapat mengeksekusi perintah berikut: www.universitasbumigora.ac.id 30
  • 32.  Menurut situs Ansible, Ansible merupakan mesin otomatisasi Teknologi Informasi (TI) sederhana yang dapat mengotomatisasi cloud provisioning, manajemen konfigurasi, penerapan aplikasi, intra-service orchestration dan kebutuhan TI lainnya.  Menurut situs Edureka, keuntungan menggunakan Ansible antara lain: 1. Simple, menggunakan sintak penulisan yang ditulis menggunakan YAML yang disebut dengan playbook. 2. Agentless, tidak diperlukan agent atau software khusus untuk diinstalasi pada host yang diautomasi. 3. Powerful & Flexible, memiliki banyak modul untuk manajemen infrastruktur, jaringan, sistem operasi dan layanan. 4. Efficient, tidak ada software yang diperlukan untuk instalasi pada server sehingga lebih banyak sumber daya yang dapat digunakan oleh aplikasi. www.universitasbumigora.ac.id 32
  • 33. 1. Provisioning Ansible memastikan paket-paket yang dibutuhkan akan diunduh dan diinstalasi sehingga aplikasi dapat diterapkan. 2. Configuration Management Menetapkan dan mempertahankan konsistensi dari kinerja produk dengan mencatat dan memperbaharui informasi lengkap yang menjelaskan perangkat keras dan lunak perusahaan. Seperti versi dan pembaharuan yang telah diterapkan pada paket software yang terinstal dan lokasi serta alamat jaringan dari perangkat keras. 3. Application Deployment Ansible dapat memanajemen secara efektif keseluruhan life cycle dari aplikasi, mulai dari development sampai produksi. 4. Security and Compliance Kebijakan keamanan dapat didefinisikan pada Ansible sehingga proses pemindaian dan pemulihan kebijakan ke lokasi dapat diintegrasikan ke dalam proses secara otomatis. www.universitasbumigora.ac.id 33
  • 34. 5. Orchestration Ansible menyediakan orchestration dalam arti menyelaraskan permintaan bisnis dengan aplikasi, data, dan infrastruktur. Ini mendefinisikan kebijakan dan tingkat layanan melalui alur kerja otomatis, penyediaan, dan manajemen perubahan sehingga menciptakan aplikasi selaras dengan infrastruktur yang dapat ditingkatkan dari atas ke bawah berdasarkan kebutuhan setiap aplikasi. www.universitasbumigora.ac.id 34
  • 35.  Controller Machine: mesin dimana ansible diinstalasi dan bertanggungjawab untuk menjalankan provisioning pada server yang dikelola.  Inventory: file inisialisasi yang memuat informasi tentang server yang dikelola.  Playbook:Titik masuk untuk Ansible provisioning, dimana otomatisasi didefinisikan melalui tugas (tasks) menggunakan formatYAML..  Task: Blok yang mendefinisikan satu prosedur untuk dieksekusi, sebagai contoh instalasi package tertentu.  Module: Modul merupakan abstraksi dari tugas sistem, seperti berkaitan dengan package atau membuat dan mengubah file. Ansible memiliki banyak modul built-in (bawaan), namun dapat juga dibuat modul khusus. www.universitasbumigora.ac.id 35
  • 36.  Role: Cara yang telah ditentukan sebelumnya untuk mengatur playbook dan file lainnya untuk memfasilitasi berbagi pakai dan menggunakan kembali bagian dari provisioning.  Play: provisioning yang dieksekusi mulai dari awal sampai akhir disebut dengan play. Dengan kata lain, eksekusi dari playbook disebut dengan play.  Facts: variable global yang memuat informasi tentang sistem, seperti interface jaringan atau sistem operasi.  Handlers: Digunakan untuk memicu perubahan status dari service, seperti me- restart atau menghentikan service. www.universitasbumigora.ac.id 36
  • 37. www.universitasbumigora.ac.id 37 (Image source: https://d1jnx9ba8s6j9r.cloudfront.net/blog/wp-content/uploads/2016/11/Ansible-Architechture-What-Is-Ansible-Edureka-768x449.png)
  • 38. www.universitasbumigora.ac.id 38 R1 (CHR) R2 (CHR) R3 (CHR) R4 (CHR) Managed MachineAnsible Control Machine Inventory File Playbook Secure Shell (SSH)
  • 39.  raw Executes a low-down and dirty SSH command, not going through the module subsystem. (https://docs.ansible.com/ansible/latest/modules/raw_module.html) . www.universitasbumigora.ac.id 39
  • 40.  ping Try to connect to host, verify a usable python and return pong on success. (https://docs.ansible.com/ansible/latest/modules/ping_module.html) . www.universitasbumigora.ac.id 40
  • 41.  routeros_command Run commands on remote devices running MikroTik RouterOS. (https://docs.ansible.com/ansible/latest/modules/routeros_command_module.html) . www.universitasbumigora.ac.id 41
  • 43.  debug Print statements during execution. (https://docs.ansible.com/ansible/latest/modules/debug_module.html) . www.universitasbumigora.ac.id 43
  • 44. 1. Menginstalasi repository Extra Packages for Enterprise Linux (EPEL) karena Ansible tidak secara default terdapat padaYum Repositories. # yum -y install epel-release 2. Menginstalasi Ansible # yum -y install ansible 3. Menampilkan informasi versi Ansible yang telah terinstalasi. # ansible --version www.universitasbumigora.ac.id 44
  • 45.  Inventory merupakan file inisialisasi yang digunakan oleh Ansible untuk mendaftarkan dan mengelompokkan mesin atau host yang akan dikelola. Lokasi dari file inventory secara default adalah “/etc/ansible/hosts”.  Menambahkan managed machines ke file inventory menggunakan editor nano. # nano /etc/ansible/hosts [routers] R1 ansible_host=192.168.169.1 R2 ansible_host=192.168.169.2 R3 ansible_host=192.168.169.3 R4 ansible_host=192.168.169.4 Variable ansible_host digunakan untuk mengatur alamat IP dari target atau managed machine yaitu dalam hal ini adalah alamat IP dari setiap router. Sebagai contoh R1 merupakan inventory_hostname atau alias bagi router dengan alamat 192.168.169.1. Simpan perubahan dengan menekan CTRL+O dan tekan Enter. Keluar dari editor nano dengan menekan CTRL+X. www.universitasbumigora.ac.id 45
  • 46.  Memverifikasi hasil penambahan inventory. # tail –n 5 /etc/ansible/hosts www.universitasbumigora.ac.id 46
  • 47. Membuat key pair menggunakan utilitas ssh-keygen pada Ansible Control Machine. # ssh-keygen Tekan Enter pada inputan Enter file in which to save the key (/root/.ssh/id_rsa): untuk menggunakan lokasi dan nama file default penyimpanan key yaitu /root/.ssh/id_rsa. Tekan Enter pada inputan “Enter passphrase (empty for no passphrase):” dan “Enter same passphrase again:” yang tampil untuk apabila ingin mengosongkan passphrase.Tampil proses pembuatan key.Tunggu hingga proses selesai dilakukan. www.universitasbumigora.ac.id 47
  • 48.  Penyalinan Public Key dari CentOS 7 Ansible Control Machine ke router R1 dapat dilakukan dengan menggunakan utilitas scp (secure copy). # scp /root/.ssh/id_rsa.pub admin@R1:id_rsa.pub Ketik yes dan tekan Enter pada pesan konfirmasi Are you sure you want to continue connecting (yes/no)?. Selanjutnya tampil inputan password untuk user admin dari managed machine R1 dengan alamat IP 192.168.169.1. Masukkan sandi dari user admin dan tekan Enter. www.universitasbumigora.ac.id 48
  • 49.  Dengan cara yang sama, lakukan untuk managed machine R2, R3 dan R4.  Proses penyalinan Public Key ke R2 dan R3. www.universitasbumigora.ac.id 49
  • 50.  Proses penyalinan Public Key ke R4. www.universitasbumigora.ac.id 50
  • 51. 1. Ad-Hoc ansible <inventory> -m Sebagai contoh eksekusi ansible untuk group inventory dengan nama “routers” dan modul ping. # ansible routers –m ping 2. Playbooks ansible-playbook filename.yml Sebagai contoh eksekusi ansible playbook dengan nama file security.yml. # ansible-playbook security.yml 3. Automation Framework Menurut situs Ansible, Ansible Tower merupakan solusi berbasis web yang membuat Ansible lebih mudah digunakan untuk tim TI dan dirancang untuk menjadi pusat semua tugas otomasi serta memungkinkan untuk mengontrol akses pengguna. Inventory dapat dikelola secara grafis atau disinkronisasikan dengan beragam sumber Cloud. Tower juga mencatat (log) semua pekerjaan, terintegrasi dengan LDAP dan memiliki API REST. Tersedia pula tool Command Line untuk memudahkan integrasi dengan Jenkins juga. www.universitasbumigora.ac.id 51
  • 52.  Membuat user baru pada seluruh router dengan ketentuan: a. Username: ansible b. Password: ansiblesecret c. Group: full d. Allowed Address: 192.168.169.254 dan 192.168.169.253 # ansible routers -m raw -a "/user add name=ansible group=full password=ansiblesecret address=192.168.169.253,192.168.169.254;quit;" -u admin -k www.universitasbumigora.ac.id 52 Pada inputan SSH password: yang tampil, masukkan sandi dari user admin dan tekan Enter.
  • 53.  Hasil verifikasi melalui Winbox menunjukkan bahwa username ansible berhasil dibuat pada setiap router. www.universitasbumigora.ac.id 53
  • 54.  Meng-import file SSH key id_rsa.pub yang telah disalin ke setiap router pada tahap sebelumnya untuk user ansible. # ansible routers -m raw -a "/user ssh-keys import public-key-file=id_rsa.pub user=ansible;quit;" -u admin -k www.universitasbumigora.ac.id 54 Pada inputan SSH password: yang tampil, masukkan sandi dari user admin dan tekan Enter.
  • 55.  Hasil verifikasi melalui Winbox menunjukkan bahwa SSH key untuk user ansible berhasil di import pada setiap router. www.universitasbumigora.ac.id 55
  • 56. # nano /etc/ansible/hosts [routers] R1 ansible_host=192.168.169.1 R2 ansible_host=192.168.169.2 R3 ansible_host=192.168.169.3 R4 ansible_host=192.168.169.4 [routers:vars] ansible_user=ansible ansible_connection=network_cli ansible_network_os=routeros www.universitasbumigora.ac.id 56 • Variable ansible_user menentukan user yang digunakan untuk terkoneksi ke router yaitu ansible. • Variable ansible_connection digunakan untuk mengatur agar Ansible memperlakukan managed machine sebagai perangkat jaringan dengan lingkungan eksekusi yang terbatas yaitu network_cli. • Variable ansible_network_os digunakan untuk menginformasikan platform jaringan dari managed machine yaitu routeros. Simpan perubahan dengan menekan CTRL+O dan tekan Enter. Keluar dari editor nano dengan menekan CTRL+X.
  • 57.  Memverifikasi hasil penambahan group variables pada file inventory. # tail /etc/ansible/hosts www.universitasbumigora.ac.id 57
  • 58.  Memverifikasi koneksi ke seluruh managed machines untuk group “routers” menggunakan modul ping. www.universitasbumigora.ac.id 58
  • 59.  Membuat file playbook menggunakan editor nano dengan ekstensi “yml” untuk menghapus username admin di seluruh router. # nano remove-admin.yml www.universitasbumigora.ac.id 59 • Playbooks memuat Plays • Plays memuat Tasks • Tasks memanggil Modules Simpan perubahan dengan menekan CTRL+O dan Enter. Tekan CTRL+X untuk keluar dari editor nano.
  • 60.  Mengecek sintak dari playbook sebelum dieksekusi sehingga memastikan tidak terdapat permasalahan terkait sintak dengan mengeksekusi perintah ansible- playbook dengan flag --syntax-check. # ansible-playbook remove-admin.yml --syntax-check  Menampilkan informasi host yang terdampak oleh playbook sebelum dieksekusi dapat menggunakan perintah: www.universitasbumigora.ac.id 60
  • 61.  Mengeksekusi file playbook remove- admin.yml menggunakan ansible-playbook. www.universitasbumigora.ac.id 61
  • 62.  Hasil verifikasi melalui Winbox menunjukkan bahwa user admin telah berhasil dihapus pada setiap router. www.universitasbumigora.ac.id 62
  • 63. Kebijakan Keamanan Mikrotik RouterOS yang diotomatisasi menggunakan Ansible Playbook pada setiap Router adalah sebagai berikut: 1. Menonaktifkan RouterOS MAC-Access. 2. Menonaktifkan Neighbor Discovery. 3. Menonaktifkan BTest Server. 4. Menonaktifkan DNS Cache. 5. Menonaktifkan Client Services. 6. Mengaktifkan Strong Crypto SSH. 7. Menonaktifkan Interface Router untuk ether4 dan ether5. 8. Mengaktifkan RouterOS Auto-Upgrade menggunakan system scheduler agar terjadwal untuk beroperasi setiap hari pada jam 01:00:00. 9. Menonaktifkan IP Service api, api-ssl, ftp, telnet, www dan www-ssl. 10. Membatasi akses pada IP Service Winbox dan SSH agar hanya dapat diakses dari 192.168.169.253 dan 192.168.169.254. www.universitasbumigora.ac.id 63
  • 64.  Membuat file playbook menggunakan editor nano dengan ekstensi “yml” untuk mengotomatisasi pengamanan RouterOS berdasarkan kebijakan yang telah ditentukan pada seluruh router. # nano security.yml www.universitasbumigora.ac.id 64
  • 66. Simpan perubahan dengan menekan CTRL+O dan Enter. Tekan CTRL+X untuk keluar dari editor nano. www.universitasbumigora.ac.id 66
  • 67.  Mengecek sintak dari playbook sebelum dieksekusi sehingga memastikan tidak terdapat permasalahan terkait sintak dengan mengeksekusi perintah ansible- playbook dengan flag --syntax-check. # ansible-playbook security.yml --syntax-check www.universitasbumigora.ac.id 67
  • 68.  Mengeksekusi file playbook security.yml menggunakan ansible-playbook. www.universitasbumigora.ac.id 68
  • 74.  MikroTik, Manual: SecurityYour Router, 2019, https://wiki.mikrotik.com/wiki/Manual:Securing_Your_Router  MikroTik, Manual: Upgrading RouterOS, 2019, https://wiki.mikrotik.com/wiki/Manual:Upgrading_RouterOS  MikroTik, Manual:IP/DNS, 2020, https://wiki.mikrotik.com/wiki/Manual:IP/DNS  Ansible Documentation, https://docs.ansible.com/  Edureka,What is Ansible? – Configuration Management And Automation With Ansible, 2020, https://www.edureka.co/blog/what-is-ansible/  I Putu Hariyadi, Modul One Day Workshop “Proxmox Automation With Ansible”, Universitas Bumigora, 2019, https://iputuhariyadi.net/2019/11/04/modul-one-day- workshop-proxmox-automation-with-ansible/ www.universitasbumigora.ac.id 74