← man/system_admin
wfsctl — man wfsctl — 80×24
ugur@toprak:~/man/system_admin$man wfsctl
Bölüm 1 Sistem Yönetimi

wfsctl

WebDAV Dosya Paylaşımı (WebDAV File Sharing) kontrol yardımcı programı

Özet

wfsctl komut [argüman]

Genel Bakış

wfsctl yardımcı programı, yöneticilerin WebDAV Dosya Paylaşımı (WFS) hizmetini başlatmasına, durdurmasına ve durumunu kontrol etmesine olanak tanır. Ayrıca yöneticilerin WebDAV paylaşım noktaları (share points) oluşturmasına ve silmesine imkan verir. Apache httpd sunucusunu yapılandırarak çalışır. wfsctl komutu root ayrıcalıkları gerektirir.

Komutlar

wfsctl aşağıdaki komutları sağlar:

start WFS yapılandırmasını etkinleştirir ve bunu uygulamak için Apache web sunucusunu başlatır veya yeniden başlatır. Gerekirse, bu işlem hostname(1) komutu tarafından belirlenen makinenin ana bilgisayar adıyla eşleşen bir SSL Kimliği (SSL Identity) oluşturur ve bunu Sistem anahtar zincirine (System keychain) yerleştirir. Ayrıca, gerekirse parametrelendirilmiş httpd yapılandırma dosyaları tarafından kullanılmak üzere ortam değişkeni tanımlarını günceller. (Apache web sunucusunu başlatmanın, httpd süreci için bir başlatma işi yükleyen "apachectl start" komutuna eşdeğer olduğunu unutmayın.)

stop WFS yapılandırmasını devre dışı bırakır ve zaten çalışıyorsa Apache'yi yeniden başlatır.

status Apache'nin çalışıp çalışmadığına bakılmaksızın WFS'nin durumunu "enabled" (etkin) veya "disabled" (devre dışı) olarak görüntüler.

shares Mevcut WebDAV paylaşım noktalarını görüntüler.

share yol Belirtilen dosya sistemi yolu için bir WebDAV paylaşım noktası oluşturur.

unshare yol | ad Belirtilen dosya sistemi yolundaki veya paylaşım noktası adındaki paylaşım noktası için WebDAV'ı devre dışı bırakır ve o paylaşım noktasında başka hiçbir dosya paylaşım hizmeti (AFP veya SMB) etkinleştirilmemişse paylaşım noktasını siler.

diagnose Apache ve WebDAV ile ilgili süreçlerin ayrıntılı durumunu görüntüler.

Ayrıntılar

WebDAV Dosya Paylaşımı şu şekilde çalışır:

  1. WebDAV istemcilerini OPTIONS veya PROPFIND yönergeleri gönderdiklerinde algılayarak

  2. Bu tür istemcilerin OD (OpenDirectory) kimlik bilgilerini sağlamasını zorunlu kılarak

  3. Kimliği doğrulanmış bu kullanıcılara, onları WebDAV istemcileri olarak tanımak için bir HTTP tanımlama bilgisi (cookie) atayarak

  4. Bu kullanıcı adına, bir WebDAV sunucusu olarak yapılandırılmış bir Apache httpd süreci örneği başlatarak

  5. HTTP trafiğini httpd'nin o kullanıcıya özel örneğine tersine vekil (reverse proxy) sunarak; böylece WebDAV istemcisinin (genellikle iOS üzerindeki bir iWork uygulaması), kimliği doğrulanmış kullanıcının ayrıcalıklarıyla sunucu makinesindeki ana dizine ve paylaşım noktalarına erişebilmesini sağlayarak

  6. WebDAV paylaşım noktası olarak işaretlenmiş paylaşım noktalarını algılayarak.

Apache'nin nasıl yapılandırıldığına bağlı olarak, bu özellik diğer Apache web hizmeti işlevleriyle bir arada çalışabilir.

Notlar

• WebDAV Dosya Paylaşımı SSL gerektirir ve aksi takdirde ağ üzerinden açık metin olarak gönderilecek kimlik bilgilerini kullanan Temel (Basic) kimlik doğrulama yöntemini kullanır. Ayrıca SSL için mod_ssl ve OpenDirectory kimlik bilgileriyle Temel kimlik doğrulama için mod_authnz_od_apple Apache modüllerini kullandığını unutmayın.

• "webdav" adı ayrılmıştır (URL'lerin özel olarak işlenmesini tetikler), bu nedenle "/webdav" olarak adlandırılan veya alt yol olarak "webdav" içeren paylaşım noktası yollarına izin verilmez. Ve paylaşım noktaları içindeki "webdav" adlı klasörler kullanılamaz olacaktır. "WebDAV" gibi büyük/küçük harf varyasyonları veya "webdav.d" gibi diğer varyasyonlar üzerinde herhangi bir kısıtlama yoktur.

• DropBox klasörlerine WebDAV Dosya Paylaşımı aracılığıyla erişilemez.

Yapılandırılabilir Ayarlar

Yönetici tarafından yapılandırılabilen bazı ayarlar /etc/wfs/wfs.plist dosyasında tutulur, bunlar arasında şunlar yer alır:

ServerName Apache web sunucusunun kullanması gereken ana bilgisayar adı ve ayrıca kimlik sertifikasının Ortak Adı (Common Name). Bu yapılandırılmamışsa veya boş bir dizeye ayarlanmışsa, makinenin hostname(1) değeri kullanılır.

ServerAddr Apache web sunucusunun HTTPS isteklerini dinlemek için kullanması gereken IP adresi. Varsayılan değer "*", bu da tüm adresler anlamına gelir.

ServerPort Apache web sunucusunun HTTPS isteklerini dinlemek için kullanması gereken TCP portu. Varsayılan, standart HTTPS portu olan 443'tür.

AccessGroup WebDAV Dosya Paylaşımı hizmetine erişmesine izin verilen Open Directory grubu. Varsayılan değer "everyone"dır ve kimliği doğrulanmış tüm kullanıcılara erişim sağlar. Yöneticiler, erişimi daha da kısıtlamak için bu ayarı değiştirebilir. Kimliği doğrulanmış kullanıcılar, en fazla, dosya sistemi izinleri tarafından kendilerine normalde izin verilen ayrıcalıklara sahip olacaktır. Misafir erişimi için herhangi bir hüküm yoktur, bu nedenle kimliği doğrulanmamış kullanıcıların erişimi yoktur.

SynthesizeSharePointForUserHomeDir Uzak WebDAV istemcilerinin kendi ana dizinlerini bir paylaşım noktası olarak görmelerine izin verilip verilmeyeceği. Varsayılan değer True'dur.

WebDAV Dosya Paylaşımı için Apache yapılandırma dosyası parametrelendirilmiştir ve httpd sunucusu, parametreleri httpd'ye ileten httpd-wrapper yardımcı programı tarafından yönetilir. Bu normalde şeffaftır, ancak Apache yapılandırma dosyası sözdizimini kontrol etmek için "apachectl configtest" veya "httpd -t" komutlarını kullanmayın. Bunun yerine "httpd-wrapper -t" komutunu kullanın.

Geri Dönüş Değerleri

wfsctl başarı durumunda 0 durum kodu döndürür. Başarısızlık durumunda sıfır olmayan bir durum kodu döndürür ve ayrıca ek tanılama bilgileri de dökebilir.

WebDAV İstemcileri

• WebDAV istemcileri, uzak bir sunucudaki WebDAV Paylaşımlarına erişmek için düzgün şekilde yapılandırılmalıdır.

• WebDAV istemcileri; Numbers, Keynote ve Pages gibi bazı iOS uygulamalarını ve macOS Finder'ın "Sunucuya Bağlan" (Connect-to-Server) özelliğini içerir. (iOS Dosyalar (Files) uygulamasının WebDAV Dosya Paylaşımı konumlarını bulamadığını unutmayın.)

• WebDAV istemcileri genellikle host'un tam URL'si ve https şeması ile yapılandırılmalıdır (çünkü http->https yönlendirmesi genellikle WebDAV işlemleriyle uyumlu değildir). Yolda /webdav belirtilmesi gerekli değildir. Dolayısıyla örneğin "Server Name" şu şekilde belirtilebilir:

https://hostname.example.com

• macOS Server tarafından bir zamanlar sağlanan yapılandırılabilir sanal ana bilgisayar (virtual host) davranışı mevcut değildir, bu nedenle WebDAV istemcileri URL'lerinde alternatif ana bilgisayar adlarını kullanamayabilir.

Dosyalar

/etc/wfs/httpd_webdavsharing.conf httpd ana örneği için parametrelendirilmiş Apache yapılandırma dosyası

/etc/wfs/httpd_webdavsharing_template.conf Kullanıcıya özel httpd örnekleri için parametrelendirilmiş Apache yapılandırma dosyası

/etc/wfs/httpd_webdavsharing_sharepoints.conf Her bir paylaşım noktasına özgü yönergeleri sağlayan Apache yapılandırma dosyası; paylaşım noktaları wfsctl tarafından değiştirildiğinde dinamik olarak oluşturulur

/etc/wfs/wfs.plist WFS için yönetici tarafından yapılandırılabilen ayarların saklandığı dosya.

/etc/apache2/env.plist Ortam değişkeni tanımlarının otomatik olarak yönetildiği dosya; bu değişkenler parametrelendirilmiş yapılandırma dosyalarında kullanılmak üzere httpd'ye iletilir.

/Library/Logs/WebDAVFileSharing.log Ana WebDAV Dosya Paylaşımı günlük dosyası

/etc/apache2/other/httpd_webdavsharing.conf WebDAV Dosya Paylaşımı etkinleştirildiğinde Apache tarafından görülen bir sembolik bağlantı (symlink). WebDAV Dosya Paylaşımı devre dışı bırakıldığında, bu sembolik bağlantı kenara taşınır.

/var/run/webdavsharing/<username>/ Kullanıcıya özel WebDAV Dosya Paylaşımı günlüklerini saklamak için kimliği doğrulanmış her kullanıcı adına oluşturulan bir dizin.

/usr/share/sandbox/wfs.sb Kullanıcıya özel httpd örnekleri için parametrelendirilmiş korumalı alan (sandbox) profili.

/etc/wfs/wfs.sb Korumalı alan (sandbox) profilinin dinamik olarak oluşturulan kısmı

Sunucu Uygulaması (Server App)

macOS Server yüklenip yükseltildiğinde ve Profile Manager için Apache örneği etkinleştirildiğinde, WebDAV Dosya Paylaşımı Server tarafından sunulan WebDAV davranışlarını destekleyecek şekilde yeniden yapılandırılır:

  1. macOS Server, standart HTTP/S TCP 80 ve 443 portlarında (Profile Manager için) HTTP tabanlı hizmetler sağlar. Bu nedenle port çakışmasını önlemek için masaüstü Apache yapılandırması (WebDAV Dosya Paylaşımı yapılandırması dahil) yalnızca localhost üzerinde port 81'e geçiş yapar ve WFS trafiği localhost:81'e ters vekil (reverse proxy) sunulur.

  2. macOS Server kendi SSL sertifikalarını yönetir ve SSL uç noktasını (endpoint) sağlar. Bu nedenle WebDAV Dosya Paylaşımı için masaüstü Apache yapılandırması SSL olmayan (non-SSL) moduna geçirilir.

macOS Server yüklenip yükseltildiğinde ve Profile Manager için Apache örneği etkinleştirildiğinde, WebDAV paylaşım noktalarını yönetmek için wfsctl kullanmak hala mümkündür, örn.:

sudo wfsctl share /Volumes/Data/Share1

  1. High Sierra öncesi macOS Server sürümlerinde kullanıcı arayüzünde oluşturulan tüm paylaşım noktaları güncellemeler boyunca korunur ve WebDAV paylaşım noktası olarak işaretlenenler, macOS Server kurulu olsun veya olmasın, High Sierra veya daha yeni sürümlere güncelleme yapıldıktan sonra da kullanılabilir olmaya devam etmelidir.

Profile Manager için Apache örneği devre dışı bırakıldığında veya macOS Server kaldırıldığında ya da düşürüldüğünde, yukarıda açıklanan port değişiklikleri ve SSL değişiklikleri geri alınır.

Ayrıca Bakınız

httpd(8), httpd-wrapper(8)