bin 사용자는 무엇입니까?


27

내가 https://unix.stackexchange.com/a/484626/5132에 썼 듯이 이것은 자체 Q & A에 합당합니다.

Linux 운영 체제에서…

get get passwd bin
bin : x : 2 : 2 : bin : / bin : / usr / sbin / nologin
%
… 그리고 FreeBSD에서…

get get passwd bin
bin : * : 3 : 7 : 바이너리 명령 및 소스 : / : / usr / sbin / nologin
%
… 그리고 OpenBSD에서…

$ getent passwd bin
bin : * : 3 : 7 : 바이너리 명령 및 소스 : / : / sbin / nologin
$
… 오늘날에도 여전히 bin계정을 찾을 수 있습니다. 그러나 그것은 거의 문서화되지 않았습니다. 리눅스 표준베이스 버전 5는 단지 말한다 ...

참고 : bin레거시 응용 프로그램과의 호환성을 위해 사용자 ID / 그룹 ID가 포함되어 있습니다. 새로운 응용 프로그램은 더 이상 bin사용자 ID / 그룹 ID를 사용하지 않아야합니다 .
… 호환성 메커니즘의 특성을 설명하지 않고. Joey Hess가 2001 년에 다시 언급 한 것처럼 :

bin:

도움말 : 사용자 나 그룹이 내 시스템의 파일을 소유하고 있지 않습니다 bin. 그들은 무엇입니까? 역사적으로 그들은 아마도 바이너리의 소유자 /bin일까요? FHS, 데비안 정책 또는 base-passwd 또는 base-file의 변경 로그에는 언급되어 있지 않습니다.

M. Hess의 질문 은 데비안 도코 에서 17 년이 지난 지금 까지의 기본 암호 패키지에 대한 답이 남아 있습니다 .

그래서 bin계정은 무엇입니까?


관련 질문은 unix.stackexchange.com/questions/244989 입니다.
JdeBP

답변:


34

bin Linux의 전체 수명 동안 제대로 된 것이 아닙니다.

실행 수준과 마찬가지로 init산란 getty때문에의 레코드 /etc/inittabbin리눅스가도 발명되기 전에 계정은 유닉스 세계에서 더 이상 사용되지이었다. 1980 년대부터 NFS (Network File System)와 그 nobody사용자 의 발명과 채택에 의해 깨어진 아이디어였습니다 . 상업적 유닉스 세계의 사람들이 1990 년대에 적극적으로 사용을 중단 한 2010 년 후반에 사용자 계정 데이터베이스에 계속 존재한다는 것은 관성에 대한 증거입니다.

아이디어는 것이 었습니다 bin사용자가 다양한 디렉토리를 소유 한 같은 /bin/usr/bin(와 사실에 언급 된 다른 사람의 일부 https://unix.stackexchange.com/a/448799/5132 같은 /usr/mbin/usr/5bin)과 비 세트 - UID / 비 그 안에 set-GID 파일. 또한 매뉴얼 페이지와 같은 doco 파일 및 디렉토리를 소유했습니다.

(일부 Unices에서는 좀 더 극단적 인 경우에는 소유 /하고 /etc있었지만 후자는 SunOS 운영 체제 이미지를 만드는 데있어 실수로 인식되었습니다. 전자는 방금 끝났습니다.)

따라서 user로 실행되는 소프트웨어 업데이트를 실행 bin하는 권한은 수퍼 유저로 실행되는 시스템 권한에 대한 모든 권한이 아니 었습니다. 소프트웨어 업그레이드 프로그램이 개인 사용자 파일을 읽거나 쓰거나 사서함에 액세스 할 수 없습니다. 물론 수퍼 유저로서 소프트웨어 업데이트

/etc/passwd파일의 다른 여러 특수 계정 항목 에는 암호가 있어야합니다. 이러한 관리 계정입니다 - bin, daemon, sys, uucp, lp,와 adm. […] 이러한 계정이 존재하는 주된 이유는 명령, 스크립트, 파일 및 장치의 안전한 소유권입니다. 또한 일부 관리자는 이러한 계정의 비밀번호를 설치하고 실제로 사용합니다. […] 암호가없는 bin계정은 시스템 차단기에 매우 유용합니다.
— Rebecca Thomas와 Rik Farrow (1989). System V 용 UNIX 관리 안내서 . 프렌 티스 홀. ISBN 9780139428890. p. 452.

NFS는 1980 년대 초에 발명되었으며이 아이디어를 완전히 깨뜨 렸습니다.

앞서 인용 한 인용에서 알 수 있듯이 이미 흔들리는 땅에있었습니다. /bin/ls예를 들어, 수퍼 유저가 물론 실행 한 기본 유틸리티의 프로그램 이미지 파일을 업데이트하는 기능은 수퍼 유저 권한을 얻기위한 직접적인 벡터이며 bin계정 을 사용하여 액세스를 나누는 것은 실수로 우연히 방지 되기 때문입니다. malefactor가 수퍼 유저 액세스를 얻지 못하기보다는 잘못된 디렉토리를 수정합니다.

NFS의 출현은 이것을 강조했습니다. NFS에는 수퍼 유저 계정을 일반 비 시스템 사용자 계정으로 다시 매핑하는 메커니즘이 있었지만, 루트가 아닌 계정에 대해서는 동일하지 않았습니다 bin. 따라서 누군가 binNFS 클라이언트에서 액세스 할 수 있으면 binNFS 서버의 운영 체제 파일에 액세스 할 수 있게됩니다. 실제로, 서버의 일반 비 시스템 사용자에게 다시 매핑되는 NFS 클라이언트의 수퍼 유저는 서버의 운영 체제 파일 및 디렉토리에 대한 소유자 액세스 권한을 얻었습니다.

이는 1990 년대 초반에 의한 일반적인 지식, 그리고 그 때받은 지혜에이었다 chown가 소유 한 물건을 bin이미 유닉스 보안 감사 도구의 표준보고 항목이되었다이 구멍을 연결하는, 수퍼 유저에 의해 소유되는과에 대해 경고했다 Sendmail 설치 doco와 유사합니다.

지금까지 M. 헤스의 질문에 관한 한,이 아이디어는 그것이 실제로 리눅스 전에 나쁜 생각으로 그것을 알고 유닉스 세계에서 나쁜 생각 인 것으로 알려졌다 이후에만 존재 년에 와서 데비안에 채택되지 않았다 자체 발명되었다. 그 역사 BSD 운영 체제 않습니다 오래 전부터 실제 소유권 멀리했던 1980 년대에 스트레칭 다시, 그러나 그럼에도 불구하고 계정 데이터베이스의 사용자 계정을 유지합니다. FreeBSD는 변환 bin: bin소유권 root: wheel소유권 등을 1998 년에 , 예를 들면.

추가 자료


1
binAIX 시스템 에서 사용자 및 그룹이 오늘 소유 한 파일을 보았습니다 . IBM이이를 이유로 사용할 수 있습니다. 염두에 두는 AIX 파일 세트는 java입니다. 추가 검증을 위해 직장에서 AIX 시스템을 홉해야합니다.
Peschke

오늘날 AIX 시스템에는 여전히 많은 bin : bin 소유 파일이 있습니다. AIX 7.2 IBM 지식 센터 보안에서, - 기본 운영 체제 보안 - 사용자, 그룹 및 암호 섹션을 포함하여 다양한 "시스템 특별 사용자 계정"의 목적을 설명하는 링크 된 페이지가 있습니다 bin.
Jeff Schaller

이전 링크에서 제거 할 수 있는 공통 기본 사용자 ID 중 하나 bin아닙니다 . 또한 : 의 비밀번호 입력은 다음과 같습니다.binbin:!:2:2::/bin:
Jeff Schaller

-8

2018 년에 bin을 사용하는 두 가지 경우가 있습니다. 1 : 실행 파일-주로 기능을 완료하는 데 사용되는 웹 서버 측 .exe 파일입니다. 그리고 2 : logs-때때로 내 .log 또는 .dat 파일을 bin 폴더에 넣습니다.


3
/bin디렉토리 에 대해 이야기하고 있습니까? 아니면 빈 사용자?
Sparhawk

6
당신은 어떤 종류의 유닉스에도 있습니까? 당신은 .exe파일 에 대해 이야기하고 있습니다.
user2357112는

5
그리고 왜 "bin"디렉토리에 로그 파일이나 구성 파일을 넣을까요?
Monica와의 가벼움 경주
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.