- Dengan [Open OSCAR Server], Anda bisa membangun server AIM/ICQ di server Debian dan menghubungkan kembali berbagai klien di lingkungan lama, termasuk Windows 98
- Untuk operasi skala kecil, VPS berspesifikasi rendah pun sudah cukup, tetapi jika ingin dipakai bersama teman di luar jaringan, Anda memerlukan port default 5190, IP statis atau DNS dinamis, serta pengaturan firewall yang sesuai untuk akses publik dari internet
- Sesuaikan
OSCAR_LISTENERS dan OSCAR_ADVERTISED_LISTENERS_PLAIN di settings.env dengan mode LAN atau WAN, lalu ubah klien AIM agar tersambung ke server sendiri, bukan ke server AOL yang sudah ditutup
- Secara default, pengguna bisa login dengan screen name dan kata sandi apa pun, jadi aktifkan autentikasi kata sandi dengan
DISABLE_AUTH=false dan kelola akun lewat API
- Karena status server disimpan dalam database SQLite dan file konfigurasi, Anda bisa mempertahankan lingkungan AIM yang dapat dipulihkan melalui backup penuh setiap malam atau menyalin dengan
rsync setelah server dihentikan
Mengapa Menjalankan AIM Lagi, Bukan Discord
- Sebelum ponsel dan SMS menjadi umum, banyak aktivitas—mulai dari proyek sekolah hingga relasi sosial—berlangsung di jendela AIM, dan pengalaman semacam ini menumbuhkan nostalgia terhadap AIM
- Karena pengalaman memakai Discord belakangan ini kurang baik, Open OSCAR Server dicoba, dan beberapa klien lama berhasil dihubungkan ke server AIM/ICQ sendiri
- Proses penyiapannya juga dibahas di video YouTube dan video PeerTube, sementara video terpisah dari Macintosh Librarian memperkenalkan AIM itu sendiri dengan lebih detail
Menyiapkan Server Debian Trixie
- Target instalasinya adalah Debian Trixie, dan proses instalasi sistem operasinya sendiri tidak dibahas
- Jika tidak berencana mengobrol dengan ratusan orang, server ini bisa dijalankan di VPS berspesifikasi rendah
- Awalnya dihosting di rumah, tetapi setelah mulai dibagikan dengan teman-teman, dipindahkan ke VPS paket paling rendah
- Kemungkinan bisa berjalan di Raspberry Pi, tetapi belum diuji langsung
- Jika dijalankan dari rumah atau di balik firewall, Anda perlu membuka port default 5190 yang akan digunakan klien AIM untuk tersambung
- Pada sebagian klien, mengubah port tidak mudah, jadi lebih baik mempertahankan port default
- Di lingkungan rumahan tanpa IP statis, DNS dinamis diperlukan
- Layanan yang digunakan secara langsung adalah No-IP, dan hasilnya memuaskan
- Jika belum terbiasa dengan DNS dinamis, Anda bisa memakai server cloud seharga 5–10 dolar per bulan untuk mendapatkan IP statis dan konfigurasi yang lebih sederhana
- Apa pun pilihannya, server harus bisa diakses melalui IP statis atau domain, dan port 5190 harus terbuka
- Default Open OSCAR Server memang nyaman untuk pengujian di jaringan rumah, tetapi tidak cocok untuk dibuka ke internet
- Sebelum mengunci konfigurasi, disarankan untuk hanya mengizinkan traffic Anda sendiri dan menolak koneksi dari sumber lain di firewall
Menginstal Open OSCAR Server
wget [RELEASE URL]
[RELEASE URL] harus diganti dengan alamat file rilis yang sebenarnya
- Ekstrak file arsip yang sudah diunduh dengan
tar
tar -zxvf open_oscar_server.X.XX.X.linux.x86_64.tar.gz
- Ganti
X.XX.X dengan nomor versi sebenarnya yang diunduh
Mengatur Mode Listener dan Alamat Server
- Jika hanya dijalankan di mesin lokal, Anda bisa masuk ke subdirektori hasil ekstraksi dan langsung menjalankannya
- Untuk menghubungkan klien dari mesin lain, Anda harus mengedit
settings.env
- Open OSCAR Server mendukung tiga mode listener klien
LOCAL: nilai default, digunakan saat klien AIM dan server berada di mesin yang sama
LAN: digunakan saat server dan klien AIM berada di jaringan internal yang sama dan tidak melewati internet
WAN: digunakan saat menghubungkan klien AIM milik teman di luar jaringan melalui internet
- Di
settings.env, atur dua variabel berikut secara bersamaan
OSCAR_LISTENERS: menentukan cara Open OSCAR Server menerima koneksi
OSCAR_ADVERTISED_LISTENERS_PLAIN: menentukan alamat server yang akan diberitahukan ke klien seperti AIM
- Jika memakai VPS publik dengan domain
example.domain, konfigurasinya bisa seperti berikut
OSCAR_LISTENERS=WAN://0.0.0.0:5190
OSCAR_ADVERTISED_LISTENERS_PLAIN=WAN://example.domain:5190
- Untuk jaringan internal, ganti
WAN dengan LAN, dan gunakan alamat IP yang diberikan ke server sebagai pengganti domain
- Mode kedua variabel harus sama, seperti
LAN dan LAN, atau WAN dan WAN
- Konfigurasi yang mencantumkan kedua mode pada kedua variabel juga dimungkinkan
- Setelah konfigurasi selesai, jalankan server untuk pengujian dengan perintah berikut
./open_oscar_server
Menghubungkan Klien AIM
- Di beberapa versi AIM, server login default
login.oscar.aol.com yang kini sudah ditutup bisa diganti dengan alamat lain
- Di AIM 5.1, alamat server diubah melalui tombol besar
Configuration di Setup
- Cukup ganti alamat server login default dengan alamat yang ditentukan di
OSCAR_ADVERTISED_LISTENERS_PLAIN
- Sebelum autentikasi diperkuat, Anda bisa login dengan memasukkan screen name dan kata sandi apa pun
- Syarat koneksi untuk pengguna lain berbeda tergantung mode server
- Dalam mode
LAN, mereka harus berada di jaringan yang sama dengan server
- Dalam mode
WAN, Anda harus memberikan akses agar pengguna eksternal bisa melewati firewall
Menjalankan Server Terus-menerus dengan systemd
- Open OSCAR Server menyertakan layanan systemd yang memungkinkan server terus berjalan bahkan setelah koneksi SSH terputus
- Untuk instalasi dan konfigurasi layanan, ikuti dokumentasi SYSTEMD dari proyek tersebut
Mengaktifkan Autentikasi Kata Sandi
- Secara default, kata sandi sebenarnya tidak diverifikasi, jadi Anda perlu mengubah
DISABLE_AUTH di file layanan systemd
- Edit file layanan lengkap dengan editor default menggunakan perintah berikut
sudo systemctl edit --full ras.service
- Atur variabel lingkungan di bawah
[Service] seperti berikut
Environment="DISABLE_AUTH=false"
- Karena nama variabelnya berbentuk negasi ganda, nilainya harus
false agar autentikasi diwajibkan
- Setelah menyimpan file layanan, muat ulang konfigurasi daemon systemd
sudo systemctl daemon-reload
- Coba login lagi dengan screen name dan kata sandi yang sudah ada; jika gagal, Anda bisa membuat pengguna baru lewat API
Mengelola Pengguna dan Kata Sandi lewat API
- Setelah autentikasi diaktifkan, kelola pengguna dan kata sandi dengan API Open OSCAR Server dan
curl
-
Menambahkan pengguna
curl -d'{"screen_name":"NEWUSERNAME", "password":"NEWPASSWORD"}' http://localhost:8080/user
- Opsi
-d pada curl mengirim data POST
- Di body JSON, masukkan key
screen_name dan password
- Target request adalah endpoint
http://localhost:8080/user di server lokal
-
Mengubah kata sandi pengguna yang sudah ada
curl -X PUT -d'{"screen_name":"NEWUSERNAME", "password":"NEWPASSWORD"}' http://localhost:8080/user/password
- Untuk memperbarui pengguna yang sudah ada, gunakan
-X PUT, bukan POST
- Pada
screen_name, tentukan screen name yang sudah ada
- Endpoint untuk mengubah kata sandi adalah
http://localhost:8080/user/password
- API juga mendukung penghapusan pengguna, penambahan ruang chat, dan lainnya; fitur lain dapat dilihat di dokumentasi proyek
Backup dan Pemulihan
- Status utama Open OSCAR Server terdiri dari database SQLite dan file konfigurasi, sehingga backup-nya sederhana
- Seluruh sistem VPS dibackup setiap malam, dan pada pengujian pemulihan, semuanya berjalan sesuai harapan
- Sebelum perubahan besar, hentikan server lalu salin seluruh direktori kerja ke mesin backup dengan
rsync
- Dengan Borgmatic, proses backup bisa dibuat lebih sederhana, dan rencananya akan dibahas lebih detail di tulisan lanjutan
1 komentar
Komentar di Lobste.rs
Menarik dibaca, tetapi keliru kalau mengira dulu tidak ada banyak jenis messenger. Banyak juga orang yang menghabiskan banyak waktu di AIM atau MSN, tetapi saya dan teman-teman sekolah saya tidak memakai keduanya dan berpindah dari ICQ ke IRC, dan fragmentasi layanan juga tidak bisa dibilang lebih baik daripada sekarang
https://nugget.livejournal.com/97081.html
Ada juga tulisan lanjutan sebulan kemudian setelah menerima jawaban dari Google
https://nugget.livejournal.com/103322.html
Ada juga video yang membahas topik ini. Saya sempat ingin mengunggahnya sendiri, tetapi bimbang apakah harus mempertahankan judul aslinya yang agak clickbait, atau memakai judul yang disediakan DeArrow
Menarik, tetapi saat membaca artikelnya, jawaban yang saya harapkan adalah “lalu setelah itu bagaimana?” Saya penasaran, jika tidak terfederasi dengan server lain, apakah semua orang yang ingin diajak bicara harus berada di server yang sama, atau ini hanya untuk berbicara sendiri
Penulis tidak melewatkan screenshot klasik yang memang seharusnya ada di bagian awal tulisan. Kepraktisan dan kegunaan perangkat lunak masa itu benar-benar sudah sangat matang
Saya sendiri tidak tertarik pada AIM, tetapi menyenangkan melihat orang-orang mengutak-atik lagi teknologi lama. Setelah menelusuri tulisan-tulisan lain dari penulisnya, rasanya saya bisa ikut tercebur lagi ke rawa berbagai eksplorasi, dan itu juga tampaknya tidak buruk
Saya sama sekali tidak merindukan era ICQ dan AIM itu sendiri, tetapi di ujung masa tersebut sempat ada zaman keemasan singkat di industri ini. Berkat XMPP yang bisa melakukan federasi antarpeladen dan gateway yang menghubungkannya dengan protokol lain, kita bisa membuat server sendiri atau punya akun di server orang lain dan berbicara dengan siapa saja
Kita tetap harus memelihara akun di jaringan yang terhubung lewat gateway, tetapi kebanyakan cukup sesekali diurus, dan dengan satu akun kita bisa berbicara dengan pengguna Google Talk, Facebook Messenger, ICQ, dan MSN. Hanya Skype yang secara keras kepala menolak kompatibilitas
Kini budayanya berubah secara mengejutkan; bahkan Signal yang open source pun memblokir klien eksternal, dan alih-alih memicu penolakan yang berarti, hal itu justru diterima sampai taraf tertentu sebagai tuntutan yang masuk akal. Rasanya kita kehilangan zaman keemasan itu karena kita sudah tidak layak menikmatinya lagi