Bin kullanıcısı ne içindir?


27

Https://unix.stackexchange.com/a/484626/5132 adresinde yazdığım gibi bu, kendi soru ve cevaplarına değer.

Linux işletim sistemlerinde…

% getent passwd kutusu
Bin x: 2: 2: bin: / bin / usr / Sbin / nologin
%
… Ve FreeBSD'de…

% getent passwd kutusu
bin: *: 3: 7: İkili Komutlar ve Kaynak: /: / usr / sbin / nologin
%
… Ve OpenBSD'de…

$ getent passwd kutusu
bin: *: 3: 7: İkili Komutlar ve Kaynak: /: / sbin / nologin
$
… Kişi hala bugün bir binhesap bulabilir . Ama hemen hemen belgelenmemiş. Linux Standard Base sürüm 5 sadece diyor ...

Notlar: binKullanıcı Kimliği / Grup Kimliği eski uygulamalarla uyumluluk için dahil edilmiştir. Yeni uygulamalar artık binKullanıcı Kimliği / Grup Kimliği kullanmamalıdır.
… Uyum mekanizmasının doğasını açıklamadan. Joey Hess'in 2001'de geri koyduğu gibi :

bin:

YARDIM : Sistemimdeki hiçbir dosya kullanıcıya veya gruba ait değildir bin. Ne yararı var? Tarihsel olarak, muhtemelen ikiliklerin sahipleri /binmiydi? FHS'de, Debian politikasında veya temel parola veya temel dosya değişimlerinde bahsedilmemiştir.

M. Hess'in sorusu , temel pasif paketi için Debian doco'da 17 yıl sonra bu güne kadar cevapsız kalıyor .

Öyleyse binhesap ne için?


Yanıtlar:


34

bin Linux'un ömrü boyunca hiçbir şey için uygun bir şekilde olmamıştır.

Kayıt seviyelerinden dolayı çalışma seviyeleri ve inityumurtlama gibi, hesap bile Linux icat edilmeden önce Unix dünyasında kullanılmıyordu. 1980'lerden bulan NFS (Network File System) ve onun kullanıcısı ve benimsemesi ve benimsemesi nedeniyle bir fikirdi . Ticari Unix dünyasındaki kişilerin aktif bir şekilde 1990'larda kullanılmaya son verdikleri 2010 yılının sonlarında kullanıcı hesabı veritabanlarındaki varlığı, eylemsizlik için bir kanıt niteliğindedir.getty/etc/inittabbinnobody

Fikir olmasıydı binkullanıcı çeşitli dizinleri olunan gibi /binve /usr/bin(ve aslında bahsedilen bazı diğerlerinin https://unix.stackexchange.com/a/448799/5132 gibi /usr/mbinve /usr/5bin) ve non-seti-UID / olmayan içlerinde set-GID dosyaları. Ayrıca manuel sayfalar gibi doco dosyalarına ve dizinlerine de sahipti.

(Bazı Unix'lerde daha ekstrem durumlarda bile sahip olunan /ve /etcikinci bir SunOS işletim sistemi imaj oluşturmada bir kabul hataydı rağmen. Eski sadece odun kafalı edildi.)

Bu nedenle, kullanıcı olarak çalışan yazılım güncellemelerini çıkarmaya izin vermek bin, sisteme karşı herhangi bir eylemde bulunmak için süper kullanıcı olarak çalışan bir battaniye izni değildi. Yazılım yükseltici, özel kullanıcı dosyalarını okuyamadı / yazamadı, posta kutularına vb. Erişemedi; Elbette süpervizör olarak güncellenen yazılımlar.

/etc/passwdDosyanızdaki diğer bazı özel hesap girişlerinin şifreleri olmalıdır. Bunlar idari hesaplardır - bin, daemon, sys, uucp, lp, ve adm. […] Bu hesapların varlığının birincil nedeni, komutların, komut dosyalarının, dosyaların ve cihazların güvenli mülkiyetidir. Bazı yöneticiler bu hesaplar için şifreleri yükler ve gerçekte bunları kullanır. […] Parola içermeyen bir binhesap, bir sistem kırıcısı için son derece kullanışlıdır.
- Rebecca Thomas ve Rik Farrow (1989). Sistem V için UNIX Yönetim Kılavuzu . Prentice Salonu. ISBN 9780139428890. s. 452.

NFS 1980'lerin başında icat edildi ve bu fikri tamamen bozdu.

Daha önce yapılan tekliflerde belirtildiği gibi, zaten titrek bir zemin vardı. Bunun nedeni, program görüntü dosyalarının, örneğin /bin/lssüper kullanıcı ayrıcalıkları elde etmek için örneğin süper kullanıcı ayrıcalıkları elde etmek için doğrudan bir vektör olduğu ve örneğin kullanıcı binhesabını kullanmada erişimin kazayla önlendiği doğrudan bir vektör olduğu temel uygulamalar için güncelleme yeteneği olmasıdır. bir erkek faktörün süper kullanıcı erişimi elde etmesini engellemek yerine yanlış dizinleri değiştirmek.

NFS'nin gelişi bunu vurguladı. NFS, süper kullanıcı hesabını sıradan sistem dışı bir kullanıcı hesabına yeniden yerleştirme mekanizmasına sahip olmasına rağmen, bunun gibi root-olmayan hesaplar için aynı değildi bin. Böylece bin, bir NFS istemcisine binerişebiliyorsa, NFS sunucusundaki işletim sistemi dosyalarına erişebilmelerini sağladı. Gerçekten de, NFS istemcisindeki bir süper kullanıcının, sunucudaki işletim sistemi dosyalarına ve dizinlerine sahibine erişim kazanması için, sunucudaki sıradan sistem dışı bir kullanıcı tarafından başka şekilde kaybedileceğini söyledi.

Bu 1990'ların tarafından tanınmaya ve bu sefer alınan bilgelik de oldu chownsahibi olduğu şeyler binzaten Unix güvenlik denetim araçları bir standart raporlama öğesi haline gelmiş bu deliği kapatmaya, süper ait olmanın ve karşı uyarıldı Sendmail için kurulum doco'yu seviyor.

M. Hess'in sorularına gelince, bu fikir asla Unix dünyasında kötü bir fikir olduğu bilindikten yıllar sonra ortaya çıkan Debian'da benimsenmedi, ki bu aslında Linux'un kendisinden önce kötü bir fikir olduğunu biliyordu. icat edildi. Geçmişi BSD işletim sistemleri yapar çoktan gerçek mülkiyet olarak ortadan kaldırmıştır 1980 içine streç geri, ama yine de hesap veritabanında kullanıcı hesabını korumaktadır. Örneğin FreeBSD bin: binmülkiyet root: wheel1998'de sahiplik .

daha fazla okuma


1
Bugün binAIX sistemlerinde kullanıcı ve gruba ait dosyaları gördüm . IBM'in bir nedenden dolayı kullanması mümkündür. Akla gelen bir AIX dosya kümesi java. Daha fazla doğrulamak için işteki AIX sistemlerine atlamalıyım.
Peschke

Günümüzde AIX sisteminde hala önemli sayıda bin: bin ait dosya bulunmaktadır. AIX 7.2 için IBM Bilgi Merkezi Güvenlik, - temel işletim sistemi güvenliği - Kullanıcılar, gruplar ve şifreleri bölüm de dahil olmak üzere, çeşitli "Sistem özel kullanıcı hesaplarının" amacını açıklayan bağlantılı sayfası vardır bin.
Jeff Schaller

Bir önceki bağlantısından, binolduğu değil biri kaldırmak mümkün olabilir ortak varsayılan kullanıcı kimlikleri . Ayrıca: bin'nin şifre girişi şöyledir:bin:!:2:2::/bin:
Jeff Schaller

-8

2018 için bin kullandığım 2 vaka kullanımı var. 1: çalıştırılabilir dosyalar - esas olarak işlevleri tamamlamak için kullanılan web sunucusu tarafı .exe dosyaları için. Ve 2: loglar - bazen .log veya .dat dosyalarımı bin klasörüme koyarım.


3
Rehberden mi bahsediyorsun /bin? Ya da bin kullanıcı?
Sparhawk

6
Herhangi bir Unix'te bile var mı? .exeDosyalardan bahsediyorsun .
user2357112,

5
Ve neden "dosya" dizinine logfiles veya konfigürasyon dosyalarını koydunuz?
Monica
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.