DO_NOT_TRACK - Gizliliği korumaya yönelik bir standart
(donottrack.sh)- DO_NOT_TRACK, her CLI aracı, SDK ve framework için farklı olan telemetri devre dışı bırakma yöntemlerini tek bir ortam değişkeniyle birleştirmeyi öneren bir girişimdir
.NET,AWS SAM CLI,Azure CLI,Gatsby,Go,Google Cloud SDK,Homebrew,Netlify CLI,Syncthingtelemetriyi kapatmak için birbirinden farklı ayarlar veya komutlar kullanmaktadırDO_NOT_TRACK=1; reklam takibini, kullanım raporlamasını, telemetriyi, çökme raporlamasını ve işlev için zorunlu olmayan, geliştiriciye veya üçüncü taraflara yönelik istekleri reddetmek anlamına gelir- Kullanıcılar
export DO_NOT_TRACK=1ayarını yapıp bunu Bash, Zsh, Fish, PowerShell ve Windows CMD kabuk yapılandırmalarına ekleyerek tüm terminal oturumlarına uygulayabilir - Yazılım geliştiricileri,
DO_NOT_TRACKdeğeri1olduğunda tüm takibi devre dışı bırakmalı ve mevcut devre dışı bırakma yöntemleriyle birlikte bu değişkene de saygı göstermelidir
Sorun ve öneri
- Birçok CLI aracı, SDK ve framework varsayılan olarak telemetri verisi toplar ve her araç için devre dışı bırakma yöntemi farklıdır
- Örneğin
.NETiçinDOTNET_CLI_TELEMETRY_OPTOUT=1,AWS SAM CLIiçinSAM_CLI_TELEMETRY=0,Azure CLIiçinAZURE_CORE_COLLECT_TELEMETRY=0,GatsbyiçinGATSBY_TELEMETRY_DISABLED=1,Goiçingo telemetry off,Google Cloud SDKiçingcloud config set disable_usage_reporting true,HomebrewiçinHOMEBREW_NO_ANALYTICS=1,Netlify CLIiçinnetlify --telemetry-disable,SyncthingiçinSTNOUPGRADE=1kullanılır DO_NOT_TRACK, kullanıcının aşağıdakileri reddettiğini açıkça ifade eden tek standart ortam değişkeni olarak önerilmektedir- Reklam takibi
- Anonim olup olmamasından bağımsız kullanım raporlaması
- Telemetri
- Çökme raporlaması
- İşlev için gerekli olmayan, yazılım geliştiricisine veya üçüncü taraflara yönelik istekler
- Kullanıcılar yalnızca yerel yazılım istediklerini
export DO_NOT_TRACK=1ile belirtebilir - Kabuk yapılandırma dosyasına eklenirse tüm terminal oturumlarında geçerli olabilir
- Bash:
~/.bashrciçineexport DO_NOT_TRACK=1 - Zsh:
~/.zshrciçineexport DO_NOT_TRACK=1 - Fish:
~/.config/fish/config.fishiçineset -x DO_NOT_TRACK 1 - PowerShell:
$PROFILEiçine$env:DO_NOT_TRACK = "1" - Windows CMD: sistem ortam değişkenine
setx DO_NOT_TRACK 1
- Bash:
Yazılım geliştiricileri ve ilgili standartlar
- Telemetri, analitik veya işlev için zorunlu olmayan ağ istekleri yapan araçlar
DO_NOT_TRACKdeğişkenini kontrol etmelidir DO_NOT_TRACKdeğeri1olarak ayarlanmışsa tüm takip devre dışı bırakılmalıdır- Mevcut devre dışı bırakma yöntemleriyle birlikte bu değişkene de saygı gösterilmelidir
- Telemetriyi varsayılan olarak etkinleştirip sonradan vazgeçme modelinden ziyade opt-in modeline geçmek de değerlendirilebilir
- no-color.org —
NO_COLOR, renkli çıktıyı devre dışı bırakma standardı - force-color.org —
FORCE_COLOR, renkli çıktıyı zorunlu kılma standardı
1 yorum
Hacker News yorumları
İş bu noktaya gelince, varsayılanın takibe onay verilmiş durum olması artık kimseyi şaşırtmıyor; bu ilginç
DO_NOT_TRACKgibi bir bayrak kulağa hoş geliyor, ama aynı zamanda varsayılanınCONSENT_TO_TRACK=1olduğu anlamına geliyormuş gibi hissettirdiği için ürkütücüİnternetin büyümesi, reklam ve sunucuların kullanıcılardan türetilmiş bilgi çıkarmasına dayanan iş modelinin ana akım olmasından kaynaklandı
Eğlenceli değil, özel değil, güvenli de değil ama çoğu yargı alanında ve sektörde yasa dışı da değil
Bu bayrak masalsı bir ütopya değil, fiilen ve hukuken yerleşmiş bir gerçekliğe verilmiş bir yanıt
Hiçbir bilgi dışarı gitmesin ve doğal olarak takip de edilmek istemiyorum; bunu tek bir ortam değişkeni ile ifade etmek baştan saçma
Takip edilmek istemediğini söyleyip bunu belirten bilgiyi vermekten hoşlanan insanları anlamakta zorlanıyorum; o bilgiyi verdiğin anda zaten işaretlenmiş oluyorsun
Değişken adlarını hep olumlu biçimde tutmayı tercih ederim; bu durumda
ALLOW_TRACKING=0olurduTutarlılık sağlar ve çifte olumsuzu önlediği için akıl yürütmesi daha kolay olur
Yine de “DO NOT TRACK” adı bir ölçüde yerleşmiş bir terim olabilir
ALLOW_TRACKINGvirgülle ayrılmış bir liste olarak uygulanabilir, böylece yalnızca izin verilecek uygulamalar belirtilebilirÖrneğin
govebrewiçin telemetri paylaşmak isteyipawsve geri kalanı için istemiyorsanALLOW_TRACKING=go,brewgibi ayarlanabilirTarayıcıdaki
DNTile aynı kaderi yaşama ihtimali yüksekYine de tüm “takip etme” ortam değişkenlerini tek bir
do_not_track.envdosyasında toplamak fena fikir değil gibiBu sayfadaki belirtime uyup işi tek bir basit ortam değişkeniyle çözmek istiyorsan https://github.com/alloydwhitlock/do-not-track-cli da var
DNTyi varsayılan olarak açmasının kullanıcıların seçme hakkını ellerinden aldığını söyleyerek bunu görmezden geldiGerçekte ise muhtemelen zaten buna uyma niyetleri yoktu
Herkese tek bir evrensel şeyi kullanmasını dayatmaktan ziyade, gerçek çözüm muhtemelen böyle bir şey olacak
Başlangıç noktası olarak bir şeyler yapmayı düşünüyorum
Bu arada Go telemetrisi varsayılan olarak sadece yerelde depolanır, yüklenmez: https://go.dev/doc/telemetry
Python
transformerskütüphanesinin Hugging Face ile iletişime geçmesini engellemenin beklediğimden zor olmasına şaşırdımHF_HUB_DISABLE_TELEMETRY=1ayarladım veWav2Vec2CTCTokenizer.from_pretrainedçağrısındalocal_files_only=Trueda belirttim, ama yine de geçerli birHF_TOKENolmadığına dair uyarı aldımAncak tesadüfen
HF_HUB_OFFLINE=1değişkenini bulduktan sonra,wav2vec2modelini diskten her yüklediğimde HF'ye dış bağlantı yapılmadığından bir nebze emin olabildimO sinir bozucu
HF_TOKENuyarısı olmasaydı bunun yaşandığını bile fark etmezdimİhtiyacın olan her şey yerelde olsa bile bağlantı kurmayı deniyerek zaman kaybetmemesi için ne yapman gerektiği sürekli değişiyor
Eskiden
TRANSFORMERS_OFFLINE,HF_DATASETS_OFFLINEgibi şeyler de vardıFaydalı bir honeypot gibi görünüyor
Bu belirtimi desteklediğini açıkça duyuran bir araç, zaten baştan açık rıza olmadan telemetri topluyor demektir; dolayısıyla kaçınılması gereken bir araç sayılabilir
DO_NOT_TRACKdesteği olması, takibin mutlaka açık rızaya dayanmayan bir model olduğu anlamına gelmezÖrneğin yazılım çökebilir ve çökme işleyicisi döküm göndermek isteyip istemediğini sorabilir
DO_NOT_TRACKvarsa çökme işleyicisinin kendisi devre dışı kalır; ne soru olur ne de döküm gönderilirBir miktar benimsenirse muhtemelen daha çok böyle çalışır
Reklam gibi takipten maddi kazanç sağlayan taraflar böyle bir seçeneği desteklemeyecektir
Yoksa pek çok modern aracı kullanamaz hale gelirsin
Şirketlerin bu öneriyi çok yavaş uygulamasını beklerken, yaygın araçlar için vazgeçme yöntemlerini tek yerde toplayan bir kaynak var mı?
Hatta bunları ayarlayıp listeyi düzenli güncelleyen bir shell modülü bile mümkün görünüyor
Muhtemelen kendi DNS'ini çalıştırıp sorunlu alan adlarını engelleme listesine eklemek daha kolay
Telemetri alan adlarından milyonlarcasını içeren iyi engelleme listeleri de var. Örneğin: https://github.com/hagezi/dns-blocklists
“Standart” diye bağıranlar, gayriresmî alternatiflerin uzun listesine sadece bir tane daha ekliyor
Tarayıcıdaki küresel takip engeli, ziyaret edilen tüm web sitelerini ve reklam amaçlı takibi kapsadığı için genel olarak işe yarıyor
Ama telemetri tamamen farklı bir mesele; varsayılan engelleme bir seçenek olabilir ama niyeti tüm araçlar için tek bir standart değişkenle ifade etmek pratikte zor
Birkaç yıl önce de aynı öneri yapılmıştı ama hiçbir yere varmadı
https://web.archive.org/web/20200613155957/https://consoledo...