- [Open OSCAR Server] kullanarak bir Debian sunucusunda AIM/ICQ sunucusu kurabilir ve Windows 98 dahil eski ortamlardaki çeşitli istemcileri yeniden bağlayabilirsiniz
- Küçük ölçekli kullanım için düşük özellikli bir VPS bile yeterlidir; ancak dışarıdaki arkadaşlarla kullanmak için varsayılan 5190 portu, sabit IP veya dinamik DNS ve internete açık kullanıma uygun güvenlik duvarı ayarları gerekir
settings.env içindeki OSCAR_LISTENERS ve OSCAR_ADVERTISED_LISTENERS_PLAIN değerlerini LAN veya WAN moduna göre ayarlayın ve AIM istemcisini kapatılmış AOL sunucuları yerine kendi sunucunuza bağlanacak şekilde değiştirin
- Varsayılan durumda herhangi bir ekran adı ve parola ile giriş yapılabildiğinden
DISABLE_AUTH=false ile parola kimlik doğrulamasını etkinleştirip hesapları API üzerinden yönetmek gerekir
- Sunucu durumu SQLite veritabanında ve yapılandırma dosyalarında saklandığı için, gecelik tam yedekler veya sunucu durdurulduktan sonra
rsync ile kopyalama sayesinde kurtarılabilir bir AIM ortamı korunabilir
Discord yerine AIM’i yeniden çalıştırma nedeni
- Cep telefonları ve SMS yaygınlaşmadan önce okul projelerinden insan ilişkilerine kadar pek çok etkinlik AIM penceresinde gerçekleşiyordu; bu deneyimler AIM’e yönelik nostaljiyi besledi
- Son dönemde Discord kullanım deneyimi iyi olmadığı için Open OSCAR Server denendi ve kendi AIM/ICQ sunucusuna çeşitli eski istemciler bağlanabildi
- Kurulum süreci YouTube videosunda ve PeerTube videosunda da ele alındı; Macintosh Librarian’ın ayrı videosu ise AIM’in kendisini daha ayrıntılı tanıtıyor
Debian Trixie sunucusunu hazırlama
- Kurulum hedefi Debian Trixie; işletim sisteminin kurulum süreci ele alınmıyor
- Yüzlerce kişiyle sohbet etmeyi planlamıyorsanız düşük özellikli bir VPS üzerinde de çalıştırabilirsiniz
- Başta evde barındırıldı, ancak arkadaşlarla paylaşılmaya başlanınca en düşük paketli VPS’ye taşındı
- Raspberry Pi üzerinde de çalışması muhtemel, ancak doğrudan test edilmedi
- Evde veya bir güvenlik duvarının arkasında çalıştırıyorsanız AIM istemcilerinin bağlanacağı varsayılan 5190 portunu açmanız gerekir
- Bazı istemcilerde port değiştirmek kolay olmadığından varsayılan portu korumak daha iyidir
- Sabit IP’si olmayan ev ortamlarında dinamik DNS gerekir
- Kullanılan hizmet No-IP idi ve sonuçtan memnun kalındı
- Dinamik DNS’e aşina değilseniz aylık 5-10 dolarlık bir bulut sunucuda sabit IP ve daha basit bir yapılandırma kullanabilirsiniz
- Hangi yolu seçerseniz seçin, sunucuya sabit IP veya alan adıyla erişilebilmeli ve 5190 portu açık olmalıdır
- Open OSCAR Server’ın varsayılanları ev ağında test için kullanışlıdır, ancak internete açmak için uygun değildir
- Ayarları kilitleyene kadar yalnızca kendi trafiğinize izin vermeniz ve güvenlik duvarında diğer kaynaklardan gelen bağlantıları reddetmeniz önerilir
Open OSCAR Server kurulumu
wget [RELEASE URL]
[RELEASE URL] gerçek sürüm dosyası adresiyle değiştirilmelidir
- İndirilen arşiv dosyasını
tar ile açın
tar -zxvf open_oscar_server.X.XX.X.linux.x86_64.tar.gz
X.XX.X indirdiğiniz gerçek sürüm numarasıyla değiştirilir
Dinleme modu ve sunucu adresi ayarı
- Yalnızca yerel makinede çalıştıracaksanız arşivin açıldığı alt dizine geçip doğrudan çalıştırabilirsiniz
- Başka makinelerdeki istemcileri bağlamak için
settings.env dosyasını düzenlemeniz gerekir
- Open OSCAR Server üç tür istemci dinleme modu destekler
LOCAL: Varsayılandır; AIM istemcisi ile sunucu aynı makinedeyken kullanılır
LAN: Sunucu ve AIM istemcileri aynı iç ağdayken ve internet üzerinden geçmiyorken kullanılır
WAN: İnternet üzerinden dışarıdaki arkadaşların AIM istemcilerini bağlarken kullanılır
settings.env içinde iki değişken birlikte ayarlanır
OSCAR_LISTENERS: Open OSCAR Server’ın bağlantıları nasıl dinleyeceğini belirtir
OSCAR_ADVERTISED_LISTENERS_PLAIN: AIM gibi istemcilere bildirilecek sunucu adresini belirtir
- Alan adı
example.domain olan herkese açık bir VPS için yapılandırma şöyle olabilir
OSCAR_LISTENERS=WAN://0.0.0.0:5190
OSCAR_ADVERTISED_LISTENERS_PLAIN=WAN://example.domain:5190
- İç ağda
WAN yerine LAN kullanın ve alan adı yerine sunucuya atanan IP adresini yazın
- İki değişkenin modu mutlaka
LAN ve LAN, ya da WAN ve WAN şeklinde eşleşmelidir
- Her iki değişkende iki modu birden belirten bir yapılandırma da mümkündür
- Ayarları bitirdikten sonra sunucuyu aşağıdaki komutla test amaçlı çalıştırın
./open_oscar_server
AIM istemcisini bağlama
- Birçok AIM sürümünde artık kapatılmış olan varsayılan oturum açma sunucusu
login.oscar.aol.com başka bir adresle değiştirilebilir
- AIM 5.1’de sunucu adresi,
Setup içindeki büyük Configuration düğmesi üzerinden değiştirilir
- Varsayılan oturum açma sunucusu adresini
OSCAR_ADVERTISED_LISTENERS_PLAIN içinde belirttiğiniz adresle değiştirmeniz yeterlidir
- Kimlik doğrulamayı güçlendirmeden önce herhangi bir ekran adı ve parola girerek oturum açabilirsiniz
- Diğer kullanıcıların bağlanma koşulları sunucu moduna göre değişir
LAN modunda sunucuyla aynı ağda olmaları gerekir
WAN modunda dış kullanıcıların güvenlik duvarını geçebilmesi için erişim izni sağlamanız gerekir
Sunucuyu systemd ile sürekli çalıştırma
- Open OSCAR Server, SSH bağlantısı kesildikten sonra bile sunucuyu çalışır durumda tutabilen bir systemd servisi ile birlikte gelir
- Servis kurulumu ve ayarı için projenin SYSTEMD belgesini izleyin
Parola kimlik doğrulamasını etkinleştirme
- Varsayılan durumda gerçek parola doğrulanmadığından systemd servis dosyasında
DISABLE_AUTH değerini değiştirmeniz gerekir
- Aşağıdaki komutla tüm servis dosyasını varsayılan düzenleyicide düzenleyin
sudo systemctl edit --full ras.service
[Service] altındaki ortam değişkenini şöyle ayarlayın
Environment="DISABLE_AUTH=false"
- Değişken adı çift olumsuz biçimde olduğundan kimlik doğrulaması istemek için değerin
false olması gerekir
- Servis dosyasını kaydettikten sonra systemd daemon yapılandırmasını yeniden yükleyin
sudo systemctl daemon-reload
- Mevcut ekran adı ve parola ile yeniden giriş yapmayı deneyin; başarısız olursa API ile yeni kullanıcı oluşturabilirsiniz
API ile kullanıcı ve parola yönetimi
- Kimlik doğrulamayı etkinleştirdikten sonra kullanıcıları ve parolaları Open OSCAR Server’ın API’si ve
curl ile yönetin
-
Kullanıcı ekleme
curl -d'{"screen_name":"NEWUSERNAME", "password":"NEWPASSWORD"}' http://localhost:8080/user
curl içindeki -d seçeneğiyle POST verisi gönderilir
- JSON gövdesinde
screen_name ve password anahtarları yer alır
- İstek hedefi yerel sunucudaki
http://localhost:8080/user endpoint’idir
-
Mevcut kullanıcının parolasını değiştirme
curl -X PUT -d'{"screen_name":"NEWUSERNAME", "password":"NEWPASSWORD"}' http://localhost:8080/user/password
- Mevcut kullanıcıyı güncellemek için POST yerine
-X PUT kullanılır
screen_name alanına zaten var olan ekran adı yazılmalıdır
- Parola değiştirme endpoint’i
http://localhost:8080/user/password adresidir
- API, kullanıcı silme ve sohbet odası ekleme gibi işlemleri de destekler; diğer özellikler proje belgelerinde görülebilir
Yedekleme ve kurtarma
- Open OSCAR Server’ın ana durumu SQLite veritabanı ve yapılandırma dosyalarından oluştuğu için yedekleme basittir
- VPS sisteminin tamamı her gece yedekleniyor ve geri yükleme testlerinde beklendiği gibi çalıştı
- Büyük değişikliklerden önce sunucuyu durdurup tüm çalışma dizinini
rsync ile yedekleme makinesine kopyalayın
- Borgmatic kullanarak yedekleme sürecini daha basit hale getirebilirsiniz; sonraki bir yazıda ayrıntılı olarak ele alınması planlanıyor
1 yorum
Lobste.rs görüşleri
Okuması keyifliydi, ama geçmişte mesajlaşma türlerinin çok az olduğunu düşünmek bir yanılgı. AIM ya da MSN'de uzun zaman geçiren çok kişi vardı ama ben ve okul arkadaşlarım ikisini de kullanmayıp ICQ'dan IRC'ye geçmiştik; hizmet parçalanmışlığı da bugünkünden pek daha iyi değildi
https://nugget.livejournal.com/97081.html
Bir ay sonra Google'ın yanıtını aldıktan sonra yazdığım bir takip yazısı da vardı
https://nugget.livejournal.com/103322.html
Bu konuyu ele alan bir video da var. Kendim göndermeyi düşündüm ama biraz clickbait olan özgün başlığı mı korusam, yoksa DeArrow'un verdiği başlığı mı kullansam diye kararsız kaldım
İlginçti ama yazıyı okurken beklediğim cevap “peki sonra ne oluyor?”du. Başka sunucularla federasyon yoksa, konuşmak istediğin herkesin aynı sunucuda mı olması gerekiyor, yoksa bu daha çok kendi kendine konuşma amaçlı mı diye merak ettim
Yazının başında olması gereken o klasik ekran görüntüsünü atlamamış. O dönemin yazılımlarındaki pratiklik ve kullanışlılık gerçekten çok iyi cilalanmıştı
AIM'in kendisine ilgim yok ama insanların eski teknolojilerle yeniden uğraşmasını görmek hoşuma gidiyor. Yazarın diğer yazılarına da bakınca kendimi yine türlü araştırma çukurlarında bulacakmışım gibi geliyor; ama bu da kulağa kötü gelmiyor
ICQ ve AIM dönemin kendisini hiç özlemiyorum ama sonlarına doğru sektörün kısa bir altın çağı vardı. Sunucular arası federasyon yapabilen XMPP ve diğer protokollere köprü kuran ağ geçitleri sayesinde kendi sunucunu kurabiliyor ya da başkasının sunucusunda hesap açıp herkesle konuşabiliyordun
Ağ geçitleriyle bağlandığın ağlardaki hesaplarını da koruman gerekiyordu ama çoğunda ara sıra çok az bakım yapmak yetiyordu ve tek bir hesapla Google Talk, Facebook Messenger, ICQ ve MSN kullanıcılarının hepsiyle konuşabiliyordun. Yalnızca Skype inatla birlikte çalışabilir olmayı reddediyordu
Bugün kültür şaşırtıcı ölçüde değişti; açık kaynak olan Signal bile harici istemcileri engelliyor ve bu, haklı bir tepki çekmek bir yana, belli ölçüde makul bir talep gibi kabul görüyor. Sanki altın çağı, artık onu hak etmediğimiz için kaybetmişiz gibi