- Dosya depolama için S3 merkezli altyapı fiilî standart hâline gelmiş olsa da, kişisel projeler veya self-hosting ortamlarında WebDAV hâlâ faydalı bir alternatif olarak öne çıkıyor
- Yazar, S3'ün karmaşıklığı ve bağımlılığından yorulduğunu ve basit kimlik doğrulama tabanlı bir dosya deposu olarak WebDAV'ı yeniden kullanmaya başladığını anlatıyor
- WebDAV, MacOS Finder, Windows Explorer, rclone, curl gibi çeşitli araçlarda yerleşik olarak desteklendiği için erişilebilirliği yüksek
- Apache, Nginx, Caddy gibi başlıca web sunucularında basit ayarlarla kullanıcı başına özel dizinler oluşturulabiliyor ve LDAP kimlik doğrulaması gibi sistemlerle de entegre edilebiliyor
- Bulut bağımlılığından çıkıp kendi dosya yönetimi altyapısını sade tutmak isteyen geliştiriciler için WebDAV hâlâ pratik bir seçenek
S3 merkezli dosya depolamanın sorunları
- FTP ortadan kayboldu; SFTP ise SSH ve Unix kimlik doğrulamasına aşırı bağımlı yapısı nedeniyle kullanışsız
- AWS S3 fiilen sektör standardı hâline geldiği için çoğu web uygulaması S3 bağlantısını varsayarak tasarlanıyor
- Bu da Amazon için avantajlı olsa da diğer kullanıcılar için rahatsızlık yaratıyor
- Kişisel projelerde veya self-hosting ortamlarında S3'ün karmaşık özellikleri gereksiz; yalnızca kimlik doğrulamalı bir dosya deposu yeterli
- Yazar, S3 kullanımını bırakıp WebDAV'a geçtiğini ve diğer geliştiricilerin de aynı tercihi değerlendirmesini öneriyor
WebDAV için uygun kullanıcılar ve gereksinimler
- WebDAV, dosya sistemi düzeyinde HTTP erişimine ihtiyaç duyan bireysel kullanıcılar veya küçük projeler için uygun
- Gerekli özellikler: kimlik doğrulama, dosya yazma, verimli senkronizasyon, varsayılan gizlilik, kolayca herkese açık yapabilme
- Gereksiz özellikler: gelişmiş ACL, signed URL, sürüm yönetimi, katmanlı depolama, yaşam döngüsü kuralları, kota vb.
- Bu gereksinimler çoğu bireysel geliştirici için tanıdık; OpenStack Swift, CEPH, Minio gibi karmaşık sistemleri işletmeye gerek yok
- Özellikle Minio'nun yakın zamanda yönetim arayüzünü büyük ölçüde kaldırıp JSON politika dosyalarının elle yazılmasını gerektirecek şekilde değişmesi, basit dosya depolama amacı için verimsiz kalıyor
WebDAV erişilebilirliği ve araç desteği
- WebDAV, çeşitli işletim sistemleri ve araçlarda yerleşik olarak destekleniyor
- MacOS Finder: “Sunucuya Bağlan” menüsüne
https://... girme
- Windows Explorer: “Ağ sürücüsüne bağlan” veya “Web sitesine bağlan” özelliği
- CLI ve uygulamalar: rclone, curl, CyberDuck, WinSCP, Filezilla vb.
- Birçok kişi WebDAV'ı eski moda görüyor, ancak gerçekte çoğu web sunucusunda varsayılan destek mevcut
- Apache, Nginx, Caddy, Lighttpd, IIS üzerinde kolayca etkinleştirilebiliyor
- OwnCloud, NextCloud gibi sistemler de WebDAV tabanlı erişim kullanıyor
WebDAV'ın gerçek kullanım örnekleri
- WebDAV hâlihazırda CardDAV, CalDAV biçiminde kişi ve takvim senkronizasyonunda kullanılıyor
- Yani kullanıcılar farkında olmadan günlük hayatlarında WebDAV tabanlı hizmetlerden yararlanıyor
- Yazar, Apache tabanlı bir WebDAV kurulumu yaptı ve LDAP kimlik doğrulamasını entegre ederek kullanıcı başına özel dizin erişimi sağladı
- Caddy, kullanıcı bazlı dizin ayrımını daha kolay ayarlayabiliyor, ancak Apache ile de bu rahatlıkla yapılabiliyor
- Apache yapılandırması biraz karmaşık olsa da, çok kullanıcılı ortamlarda gizliliği güvence altına alabiliyor
Apache tabanlı WebDAV yapılandırma örneği
- Apache'de gereken modüller:
mod_dav, mod_dav_fs, mod_dav_lock
- Eski istemci uyumluluğu için
BrowserMatch ayarı da dahil
- Temel yapılandırma öğeleri
DavLockDB, DavMinTimeout, DavDepthInfinity ile WebDAV davranışı kontrol ediliyor
AuthType Basic, AuthBasicProvider ldap ile LDAP kimlik doğrulaması entegre ediliyor
RewriteEngine kullanılarak giriş yapan kullanıcının yalnızca kendi dizinine erişmesi sınırlandırılıyor
/usr/local/www/webdav altında kullanıcı adıyla aynı dizin oluşturulursa, ilgili kullanıcı kimlik doğrulamasından sonra kendi alanını kullanabiliyor
WebDAV kullanım örnekleri ve genişleme potansiyeli
- Yazar, WebDAV'ı şu uygulamalarla birlikte kullanıyor
- Joplin: notları kendi sunucusuna senkronize eden uygulama
- Keepassium: iOS/MacOS için Keepass istemcisi
- VLC, Infuse: medya akışı ve oynatma
- rclone: statik blog yayımlamak için dosya senkronizasyonu (NFS/SMB'den daha hızlı ve VPN gerektirmiyor)
- Ayrıca Altmount adlı yeni bir proje keşfetmiş
- Usenet'e gönderilen içeriği indirmeden “mount” ederek doğrudan erişmeyi mümkün kılıyor
- Usenet'e kolayca çoklu gigabit hızlarında erişim sağlanabilmesi özellikle ilgi çekici
2 yorum
Ev altyapısının içinde NFS ya da SMB kullanıyorum, dışarıda ise WebDAV'ı gayet iyi kullanıyorum, haha
Hacker News yorumu
Bu sayede WebDAV sunucuları arasında senkronizasyon veya bağlama yapılabiliyor; ayrıca yerel dosya sistemini ya da S3, Google Drive gibi servisleri WebDAV sunucusu olarak sunmak da mümkün
RFC, FTP’den daha iyi ama uygulamalar arasındaki farklardan kaynaklanan standart dışı davranışlar hâlâ çok fazla, bu yüzden çeşitli çözümler gerekiyor
Değiştirme zamanı veya hash ayarlamak varsayılan olarak mümkün değil ama ownCloud ve Nextcloud gibi uygulamalar bunu destekliyor
HTTP ve TLS tabanlı olduğu için SFTP’den çok daha hızlı
NFS de TCP tabanlı ve şifreleme mümkün, ancak Windows desteği zayıf ve yalnızca macOS’te yerleşik destek var
Buna karşılık WebDAV her iki platformda da iyi çalışıyor
Şu anda davx5 kullanıyorum ama dosya erişimi kullanışsız
Kurmuş olduğum mTLS altyapısıyla iyi uyum sağladığı için WebDAV’ı tercih ediyorum
Sunucu tarafında sftpgo kullanıyorum
Bu sadece Amazon’a özgü bir teknoloji değil; Garage S3 gibi AB Horizon destekli açık kaynak projeler de var
https://garagehq.deuxfleurs.fr/
Örneğin Tailscale Drive Share WebDAV tabanlı ve Fastmail’in dosya depolamasına da WebDAV üzerinden erişilebiliyor
WebDAV oldukça hoş bir teknoloji
Çok iyi çalışıyor
Hem Windows hem de macOS’te yerleşik destek var ama sıradan kullanıcılar buna erişemiyor
Windows’ta yalnızca WSL için, macOS’te ise yalnızca sanallaştırma için mevcut olması üzücü
Arayüzden doğrudan 9p bağlanabilse harika olurdu
NextCloud istemcisiyle (masaüstü/Android) uyumlu ve Gnome Online Accounts ya da Nautilus’ta da kullanılabiliyor
https://codeberg.org/lunae/dav-next
Henüz paketleme ya da ikili sürüm yok ama geri bildirim memnuniyetle karşılanır
Şirketimizin bulut platformunda da sürücü gibi erişim sağlamak için WebDAV üzerinden bir özellik geliştiriyoruz
HTTP tabanlı altyapıyı olduğu gibi kullanabildiğimiz için ek karmaşıklık neredeyse yok
Sıkıcı ama istikrarlı teknoloji sonunda uzun ömürlü oluyor
Üstelik açık bir standart
Hâlâ birçok paylaşımlı hosting hizmeti FTP yüklemeyi öneriyor
SSH anahtarı ya da SFTP de mümkün ama belgelerde hâlâ FileZilla gibi FTP araçlarından söz ediliyor
OVHcloud’un FTP rehberi
Şifresiz bir protokolün hâlâ kullanılıyor olmasına inanmak zor
Böyle bir hosting’i hemen elerdim
Eskiden yazılım dağıtımı ve akademide kullanıldığı günleri özlüyorum ama artık neredeyse sadece son kullanım alanları kaldı
Bu sayede birden fazla iCloud hesabı kullananlar arasında senkronizasyon mümkün oluyor ve Dropbox aboneliğine de gerek kalmıyor
CloudKit’ten daha hızlı ve bakım yükü de daha az
Muhtemelen daha uzun süre kullanmaya devam edeceğim
İçinde bir web scraper da var; LLM sohbet botlarının Markdown çıktısını saklamak için iyi oluyor
Bugünlerde çoğu üretici S3 API uyumluluğu sunuyor
Sonuçta mesele galiba protokolün kendisiyle ilgili