My Journey with GNOME Asia Summit 2022 Malaysia

Day 0 My day 0 is a travel to Malaysia, and this is first time for me. because I will try solo traveling to another country, and for trial I try going to Malaysia. My flight with Air Asia depart from Bandara International Soekarno Hatta to Kuala Lumpur. After landing on Kuala Lumpur International Airport at 2 AM. I ordered Grab Car from Airport to My Hotel. After arrived at hotel I am taking a rest for the summit. ...

15 Desember 2022 · 2 menit · Rifki Affandi

Disable SSH Ask Pass di openSUSE

Ketika selesai menginstall git di openSUSE, ketika akan melakukan push ataupun pull pada repository yang membutuhkan autentikasi, akan muncul pop up untuk mengisi kolom nama dan password, Hal tersebut bagi saya kurang nyaman, maka bisa dinonaktifkan dengan cara berikut : git config --global core.askpass '' Sekian~.

30 Maret 2021 · 1 menit · Rifki Affandi

Membuat Docker Alert

Pendahuluan Container, ya sebuah istilah yang sedang populer pada era saat ini. dan saya pun memakainya baik untuk development aplikasi ataupun production. Namun beberapa hari belakangan ini tim saya mengalami kendala yakni sekitar 1-2 hari semua container yang berada di VM production berhenti secara tiba. Setelah diteliti hal ini disebabkan oleh docker daemon yang restart tanpa disuruh (asli bikin kesel). Dan kesalahan dari tim DevOps ialah tidak menambahkan parameter restart: always ketika production, jadilah ketika daemon docker restart dan container tidak me-restart otomatis. Yang lebih gak enak lagi ialah para client yang lebih dulu tau ketimbang tim DevOps. Karena itu pada tulisan kali ini saya akan membagi sedikit tips yang dibantu oleh Kang Mustapha untuk monitoring container docker dan mengirimkan alert ke Telegram apabila ada container yang mati (exited). ...

20 Oktober 2020 · 2 menit · Rifki Affandi

Install POWERDNS di Ubuntu 18.04

POWERDNS adalah DNS Server berbasis MySQL, yang ditulis dalam C ++ dan berlisensi Under GPL. PowerDNS dapat dikelola melalui web base interface (PowerAdmin). Pada tutorial kali ini akan membahas bagaimana menginstall dan mengkonfigurasi POWERDNS pada Ubuntu 18.04. Persiapan Ubuntu 18.04 Domain Tahap Instalasi Update repositori pada Ubuntu 18.04 sudo apt update Install MariaDB sudo apt install mariadb-server mariadb-client -y mysql_secure_installation Edit konfigurasi pada MariaDB vim /etc/mysql/mariadb.conf/50-server.cnf ........ bind = 0.0.0.0 ----> ganti dengan ip lokal ........ Restart MariaDB sudo systemctl restart mariadb Buat database pada database sudo mysql -u root -p CREATE DATABASE powerdns CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON powerdns.* TO 'powerdns'@'localhost' IDENTIFIED BY 'YOURPASSWORD'; GRANT ALL ON powerdns.* TO 'powerdns'@'%' IDENTIFIED BY 'YOURPASSWORD'; FLUSH PRIVILEGES; USE powerdns; CREATE TABLE domains ( id INT AUTO_INCREMENT, name VARCHAR(255) NOT NULL, master VARCHAR(128) DEFAULT NULL, last_check INT DEFAULT NULL, type VARCHAR(6) NOT NULL, notified_serial INT DEFAULT NULL, account VARCHAR(40) CHARACTER SET 'utf8' DEFAULT NULL, PRIMARY KEY (id) ) Engine=InnoDB CHARACTER SET 'latin1'; CREATE UNIQUE INDEX name_index ON domains(name); CREATE TABLE records ( id BIGINT AUTO_INCREMENT, domain_id INT DEFAULT NULL, name VARCHAR(255) DEFAULT NULL, type VARCHAR(10) DEFAULT NULL, content VARCHAR(64000) DEFAULT NULL, ttl INT DEFAULT NULL, prio INT DEFAULT NULL, change_date INT DEFAULT NULL, disabled TINYINT(1) DEFAULT 0, ordername VARCHAR(255) BINARY DEFAULT NULL, auth TINYINT(1) DEFAULT 1, PRIMARY KEY (id) ) Engine=InnoDB CHARACTER SET 'latin1'; CREATE INDEX nametype_index ON records(name,type); CREATE INDEX domain_id ON records(domain_id); CREATE INDEX ordername ON records (ordername); CREATE TABLE supermasters ( ip VARCHAR(64) NOT NULL, nameserver VARCHAR(255) NOT NULL, account VARCHAR(40) CHARACTER SET 'utf8' NOT NULL, PRIMARY KEY (ip, nameserver) ) Engine=InnoDB CHARACTER SET 'latin1'; CREATE TABLE comments ( id INT AUTO_INCREMENT, domain_id INT NOT NULL, name VARCHAR(255) NOT NULL, type VARCHAR(10) NOT NULL, modified_at INT NOT NULL, account VARCHAR(40) CHARACTER SET 'utf8' DEFAULT NULL, comment TEXT CHARACTER SET 'utf8' NOT NULL, PRIMARY KEY (id) ) Engine=InnoDB CHARACTER SET 'latin1'; CREATE INDEX comments_name_type_idx ON comments (name, type); CREATE INDEX comments_order_idx ON comments (domain_id, modified_at); CREATE TABLE domainmetadata ( id INT AUTO_INCREMENT, domain_id INT NOT NULL, kind VARCHAR(32), content TEXT, PRIMARY KEY (id) ) Engine=InnoDB CHARACTER SET 'latin1'; CREATE INDEX domainmetadata_idx ON domainmetadata (domain_id, kind); CREATE TABLE cryptokeys ( id INT AUTO_INCREMENT, domain_id INT NOT NULL, flags INT NOT NULL, active BOOL, content TEXT, PRIMARY KEY(id) ) Engine=InnoDB CHARACTER SET 'latin1'; CREATE INDEX domainidindex ON cryptokeys(domain_id); CREATE TABLE tsigkeys ( id INT AUTO_INCREMENT, name VARCHAR(255), algorithm VARCHAR(50), secret VARCHAR(255), PRIMARY KEY (id) ) Engine=InnoDB CHARACTER SET 'latin1'; CREATE UNIQUE INDEX namealgoindex ON tsigkeys(name, algorithm); Disable systemd-resolved sudo su systemctl disable systemd-resolved systemctl stop systemd-resolved ls -lh /etc/resolv.conf rm /etc/resolv.conf echo "nameserver 8.8.8.8" > /etc/resolv.conf Install POWERDNS (versi 4.1.13) sudo su edit repositori vi /etc/apt/sources.list.d/pdns.list ............. deb [arch=amd64] http://repo.powerdns.com/ubuntu bionic-auth-41 main ............. vi /etc/apt/preferences.d/pdns ... Package: pdns-* Pin: origin repo.powerdns.com Pin-Priority: 600 ... Install powerdns beserta dependensi yang dibutuhkan curl https://repo.powerdns.com/FD380FBB-pub.asc | sudo apt-key add - curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list sudo apt-get update sudo apt-get install pdns-server pdns-backend-mysql virtualenv python3-pip yarn -y apt-get install -y libmysqlclient-dev python3-mysqldb python-mysqldb libsasl2-dev libffi-dev libldap2-dev libssl-dev libxml2-dev libxslt1-dev libxmlsec1-dev pkg-config Setelah berhasil terinstall konfigurasi powerdns agar terhubung dengan backend mysql sudo vi /etc/powerdns/pdns.d/pdns.local.gmysql.conf ## Masukkan skrip berikut tanpa tanda # ...... launch=gmysql gmysql-host=#IPHOSTMYSQL gmysql-user=#USER gmysql-dbname=#YOURDB gmysql-password=#YOURPASSWORD gmysql-dnssec=yes Konfigurasi pdns.conf agar bisa dimonitoring echo 'api=yes' >> /etc/powerdns/pdns.conf echo 'api-key=YOURIPKEY' >> /etc/powerdns/pdns.conf echo 'webserver=yes' >> /etc/powerdns/pdns.conf echo 'webserver-address=0.0.0.0' >> /etc/powerdns/pdns.conf echo 'webserver-allow-from=0.0.0.0/0,::/0' >> /etc/powerdns/pdns.conf echo 'webserver-port=8081' >> /etc/powerdns/pdns.conf echo 'version-string=anonymous' >> /etc/powerdns/pdns.conf echo 'webserver-password=YOURPASSWORD' >> /etc/powerdns/pdns.conf Tes koneksi ke database /usr/sbin/pdns_server --daemon=no --guardian=no --loglevel=9 Jika berhasil restart pdns service sudo systemctl restart pdns Untuk tampilan GUI (POWERDNS Admin) di postingan selanjutnya ya! Salam Kebebasan!! Bye~ ...

14 September 2020 · 3 menit · Rifki Affandi

Setting Konfigurasi HAProxy Di OPNsense

OPNsense adalah proyek firewall berbasis open source berbasis FreeBSD OPNsense. Berikut adalah tutorial untuk mengkonfigurasi HAProxy di OPNsense. 1. Konfigurasi Firewall untuk HAProxy Buat 2 IP Forward pada konfigurasi firewall Firewall > NAT > Port Forward > + New Rule Interface : LAN TCP/IP Ver : IPv4 Protocol : TCP Source : any Destination port range : From - HTTP , to - HTTP Redirect target IP : #IPADDRESSOPNSENSE Redirect target port : HTTP SAVE Interface : LAN TCP/IP Ver : IPv4 Protocol : TCP Source : any Destination port range : From - HTTPS , to - HTTPS Redirect target IP : #IPADDRESSOPNSENSE Redirect target port : HTTP SAVE Buat Rule Floating Firewall > Rules Floating > + New Rule Action : Pass Interface : LAN Direction : in TCP/IP ver : IPv4 Protocol : TCP Source : any Destination : Lan Address Destination port range : From - HTTP , to - HTTP Action : Pass Interface : LAN Direction : in TCP/IP ver : IPv4 Protocol : TCP Source : any Destination : Lan Address Destination port range : From - HTTPS , to - HTTPS 2. Konfigurasi HAProxy Service > HAProxy > Setting Tambahkan Server Real Servers > Real Servers > + add Name : test-http FQDN or IP : #IPPUBLICSERVER Port : 80 SAVE Tambahkan Backend Pool Virtual Services > Backend Pool > + add Name : test_http Mode : Layer 7 Servers : test-http SAVE Tambahkan Conditions Rules and Check > Conditions > + add Name: test-http Condition type : Host Matches Host String : test-http Tambahkan Rules untuk frontend 443 Rules and Check > Rules > + add Name : pass_https_test_http Select Condition : test-http Execute function : Use specified Backend Pool Use backend pool : test_http Tambahkan Rules untuk frontend 80 (untuk redirect traffic ke https) Rules and Check > Rules > + add Name : redirect_to_https_http_test_nicolas_my_id Select Condition : test-http_nicolas_my_id Execute function : http-request redirect HTTP Redirect : scheme https Tambahkan frontend untuk port 80 Virtual Services > Public Services > + add Name : FrontEndHTTP Listent address : 0.0.0.0:80 Select Rules : redirect_to_https_http Tambahkan frontend untuk port 443 Virtual Services > Public Services > + add Name : FrontEndHTTPS Listent address : 0.0.0.0:443 Enable SSL offloading : (✓) Certificates : test-http # Pastikan sertifikat sudah di-import ke OPNsense Select Rules : pass_https_test_http

24 Agustus 2020 · 2 menit · Rifki Affandi

Membuat Blog Sederhana Dengan Hugo

Kenapa Hugo? Pertanyaan ini pasti muncul ketika melihat tulisan ini, kenapa mesti Hugo? apa hebatnya? kn ada wordpress dan blogger dan lain - lain, okelah jika dibandingkan dengan CMS tersebut web statis seperti Hugo ini tidak kalah powerful, tapi saya punya beberapa kendala ketika menggunakan wordpress, antara lain : Size storage di hosting saya sangat kecil (maklum belom jadi sultan), sehingga ketika mau upload gambar mesti mikir - mikir dulu beberapa parameter seperti size dan lain - lain. Kalau tidak ada Internet mau kustomisasi blog susah, ya walaupun kadang tinggal install LAMPP atau XAMPP si, tapi menurut saya hal tersebut mulai agak ribet. Hugo ini praktis, dulu pernah coba Jekyll tapi ya rada nganu, panjang kalo diceritain. Hugo ini enak, deploy cepet, gampang dipelajarin pula, walau belum bisa bahasa GO pun. Jika dikolaborasikan dengan GitHub Pages Hugo ini menyenangkan, build otomatis pake travis CI atau tools lain. pokoknya tinggal add -> commit -> push -> ngopi -> finish. Menulis konten di Hugo menggunakan MD (Markdown) yang mana format MD ini gampang banget dipelajarin, dokumentasi lengkap, dan tutorial banyak pula. Oke lanjut tutorial buat web dengan Hugo. ...

27 Mei 2020 · 2 menit · Rifki Affandi

Install Hugo di openSUSE Tumbleweed

Pengenalan Hugo merupakan sebuah generator web statis seperti Hexo, Hugo ditulis menggunakan bahasa Golang sehingga load page lebih cepat dibanding dengan Hexo. Oh ya kebetulan website ini menggunakan Hugo loh. Install dependensi Sebelum menginstall Hugo pada openSUSE Tumbeleweed yang harus dilakukan adalah menginstall beberapa dependensi diantaranya adalah: Go Git Hugo sudo zypper in go git wget -c https://github.com/gohugoio/hugo/releases/download/v0.71.0/hugo_0.71.0_Linux-64bit.tar.gz tar -xvf hugo_0.71.0_Linux-64bit.tar.gz sudo mv hugo /usr/local/bin Cek Versi Hugo hugo version Jika sudah berhasil terinstall akan menampilkan output seperti berikut : Hugo Static Site Generator v0.71.0-06150C87 linux/amd64 BuildDate: 2020-05-18T16:08:02Z Selesai ~ ...

19 Mei 2020 · 1 menit · Rifki Affandi

How To Install Google Cursor on openSUSE Tumbelweed

Install Dependencies Before install Google Cursor, please install dependencies sudo zypper in xcursorgen inkscape gnome-themes appmenu-gtk2-module appmenu-gtk3-module Build Google Cursor git clone https://github.com/KaizIqbal/Google_Cursor.git cd Google_Cursor chmod +x build.sh ./build.sh chmod +x ./Installer_Google.sh Install as Root User sudo ./Installer_Google.sh Install as Local User ./Installer_Google.sh Enjoy! Source : Google Cursor

8 Mei 2020 · 1 menit · Rifki Affandi