Server

  • Security,  Server

    Mitigasi Malware di Web Server dan Cara Membersihkannya

    Malware selalu menjadi hal yang merepotkan. Umumnya pembuat malware tidak membuat malware untuk sekedar ajang pamer layaknya defacement. Malware dibuat demi tujuan yang lebih besar dan masif, dan biasanya tidak berjalan secara sendiri-sendiri melainkan menjadi sebuah network atau perkumpulan. Discovery Disuatu pagi tiba-tiba salah satu website yang kami kelola menunjukkan tampilan yang aneh. Melihat pesan error seperti ini tentunya yang langsung terpikir adalah memeriksa source code-nya, ada yang tidak beres. Setelah diperisa ternyata benar script-nya telah disisipi oleh malware. Di tahap ini kita bisa meningkatkan asumsi kita terkait dampak lainnya, bagaimana jika yang telah disisipi tidak hanya file index.php ini saja? untuk memastikannya maka perlu dilakukan pencarian lebih dalam. Mencari…

  • Programming,  Server

    Dump dan Backup MySQL ke S3 DigitalOcean Spaces

    Alur untuk backup otomatis database langsung ke S3 services, salah satunya ke DigitalOcean (DO) Spaces Integrasi s3cmd Download sesuai platform dari https://s3tools.org/s3cmd kemudian jalankan comman untuk konfigurasi : s3cmd --configure Lengkapi credentials sehingga dapat terhubung dengan S3 service Script untuk Dump and Push Buat sebuah file dengan nama do.sh berisi perintah berikut (sesuaikan variabel) Atur Penjadwalan Buka crontab mode edit dan tambahkan command berikut (waktu bisa disesuaikan) : 0 0 * * * /bin/sh ~/do.sh

  • Coretan,  Internet,  Server

    Domain Local Apache di Windows Environment

    Sebelumnya saya pernah menulis tentang bagaimana membuat custom local domain untuk apache pada macOS, kali ini saya akan share konfigurasi yang sama namun pada OS berbasis Windows. Secara umum alurnya tidak jauh berbeda, bahkan software-software yang digunakan pun masih tetap sama. Kembali mengingatkan bahwa dalam konfigurasi ini kita ingin membuat lingkungan pengembangan aplikasi web kita menjadi lebih sederhana dan terstruktur, misalnya dari alamat local yang awalnya http://localhost/project-A/subproject-A1/child-project-A11 cukup menjadi http://a11.local atau http://sub1.project-a1.local Contoh domain diatas menggunakan .local, sebetulnya tidak ada keharusan untuk menggunakan domain tersebut karena sifatnya yang memang lokal kita bisa menggunakan domain yang kita inginkan, misalnya .dev, .private, .test, dan lain sebagainya. Bahkan kita bisa menggunakan public domain…

  • Programming,  Server

    Upload File Sederhana ke AWS S3 dengan PHP

    AWS telah menyediakan SDK untuk memudahkan transaksi terhadap beberapa servicenya secara program, salah satu yang disediakan adalah untuk PHP. Namun terkadang kebutuhan tidak sesuai dengan usaha yang harus dikeluarkan. Untuk sekedar upload file ke S3 milik AWS kita perlu load/download paket lengkap dari SDK nya, rasanya agak berlebihan. Setelah googling beberapa waktu akhirnya ketemu library dalam bentuk single file, yang dapat digunakan untuk beberapa kegiatan di S3, salah satunya untuk upload file. Library nya ada di repository https://github.com/23Pstars/simple-php-s3-upload Menggunakannya cukup sederhana, hanya perlu menyesuaikan script index.php dan melengkapi credentials untuk akun yang digunakan

  • Server

    Masalah User Tidak Bisa Login SSH di CWP

    Akses SSH bagi user baru di CWP secara default adalah disable dengan alasan keamanan. Kita bisa mengaktifkan akses SSH hanya dengan mencentang enable SSH pada saat membuat atau memperbaiki user di CWP. Namun terkadang meskipun SSH nya sudah di-enable, user tetap tidak dapat melakukan login ke server berbasis CWP dengan pesan error Permission Denied. Hal ini terjadi karena password yang kita gunakan merupakan sebagian atau keseluruhan dari username. Untuk dapat menggunakan SSH kita perlu melakukan reset password dengan menentukan password baru adalah selain kata yang mengandung username.

  • Coretan,  macOS,  Server

    Domain Lokal menggunakan Virtual Host di Apache

    Web developer pastinya tidak asing lagi dengan alamat 127.0.0.1 a.k.a localhost. 127.0.0.1 maupun localhost merujuk pada suatu alamat pada mesin komputer kita, atau biasa disebut dengan host, disanalah si Apache biasanya bersarang. Untuk project yang sifatnya masih development biasanya akan menggunakan alamat tersebut. Hanya saja akan ada kendala dimana dalam satu host berisi lebih dari satu project atau aplikasi. Jika demikain tentu kita akan mengakses project tersebut secara nested. http://localhost/project-A/subproject-A1/child-project-A11 Panjang? Tentunya. Beberapa tahun terakhir saya selalu menggunakan alias pada domain lokal saat development. http://a11.local atau https://a11.local

  • Server

    Git Aliases via .profile dan .gitconfig

    Setiap hendak menyimpan code, setidaknya 4 command diatas yang paling sering kita ketik. Untuk sedikit memudahkan hal tersebut, git telah memberikan fasilitas aliases bagi kita untuk menyingkat perintah git. Ada dua opsi yang bisa digunakan, menggunakan alias via .profile dan .gitconfig. Pada opsi .profile, deklarasi dilakukan sejak pertama kali kita melakukan login ke sistem (~/.profile). Namun saya tidak merekomendasiakan hal ini, karena scope alias adalah sistem. Kita tidak pernah tahu ada aplikasi lain yang menggunakan caller gs, gaa, gcm, dan gpom sehinga justru akan menjadi berbahaya. Saya lebih prefer untuk menggunakan versi git. Versi git memiliki dua opsi juga, ingin ditentukan secara global atau ingin ditentukan per-project. Saya lebih suka…

  • Internet,  Server

    Mengganti Webuzo dengan CentOS Web Panel

    Setelah beberapa tahun terakhir aktif menggunakan Webuzo, tiba saatnya move on kepada software lain. Kali ini tempat singgah berikutnya adalah CentOS Web Panel (CWP). CWP merupakan panel control untuk kebutuhan website pada server dengan distro CentOS. Dengan banyaknya domain yang terdistribusi dalam beberapa server LRsoft, proses migrasi mungkin akan memakan banyak waktu. Tapi setidaknya proses ini hanya dilakukan sekali untuk jangan waktu yang panjang berikutnya. Beberapa data yang perlu dimigrasi adalah file system, yakni semua script dan data lainnya yang berkaitan dengan sistem. Berikutnya adalah database, merupakan gudang data inti dari aplikasi atau web. Dan terakhir adalah DNS function, termasuk MX dan CNAME records. Record MX untuk menentukan mail server…

  • Server

    Ketika DDoS menyerang

    Mengelola server merupakan pekerjaan yang tidak selalu mudah. Sesuatu yang sifatnya open public pastinya memiliki banyak ancaman yang tidak pernah dapat ditebak kapan datangnya. Berapa tahun terakhir saya bertugas untuk mengelola beberapa server yang menaungi cukup banyak website, mulai dari bisnis, personal, iseng, sampai yang tidak penting.

  • Server

    Menambahkan sertifikat SSL untuk cURL di PHP

    Sejak PHP versi 5.6 autentikasi SSL terhadap akses cURL (CURLOPT_SSL_VERIFYPEER) default menjadi TRUE. Hal ini mengakibatkan ketika menggunakan fungsi file_get_contents() selalu melakukan validasi sertifikat SSL terhadap URL tujuan yang menggunakan protokol SSL. Meskipun URL tujuan telah terinstall sertifikat SSL yang valid, namun cURL tidak dapat membuktikan validitas SSL jika belum memiliki dokumen pembanding sendiri (CA certs list). Hari ini kebetulan saya juga mengalami masalah yang sama, ketika memasang webuzo di server yang baru. Tidak lama setelah konfigurasi telah selesai dilakukan saya baru sadar kalau beberapa fungsionalitas website tidak bekerja seperti biasanya. Setelah memeriksa berkas log saya mendapati pesan warning sebagai berikut: