리눅스 hosts.equiv
IT위키
더 많은 작업
- rlogin·rsh 같은 r 계열 명령으로 비밀번호 없이 접속해도 되는 신뢰 호스트를 시스템 전체 단위로 적어 두는 설정 파일
- 경로 : /etc/hosts.equiv
- 사용자별로 같은 일을 하는 파일은 각 사용자 홈 디렉터리의
~/.rhosts다
원격 호스트에서 rlogin·rsh·rcp 로 접속하면 서버는 먼저 이 파일과 접속 대상 계정의 .rhosts 를 본다. 접속해 온 호스트(와 사용자)가 적혀 있으면 비밀번호를 묻지 않고 로그인시킨다. 호스트끼리 서로를 같은(equivalent) 시스템으로 믿는다는 뜻에서 이름이 왔다.
한 줄에 호스트명 또는 호스트명 사용자명 을 적는다.
# cat /etc/hosts.equiv server1.example.com server2.example.com admin -badhost.example.com
server1.example.com: 그 호스트의 사용자는 이쪽의 같은 이름의 계정으로 비밀번호 없이 들어올 수 있다server2.example.com admin: 그 호스트의 admin 사용자만 허용한다- 앞에
-를 붙이면 그 호스트를 거부한다 +한 글자만 적으면 모든 호스트를 믿는다는 뜻이라 누구나 비밀번호 없이 들어올 수 있다. 가장 위험한 설정이다- hosts.equiv 는 root 계정에는 적용되지 않는다. root 의 신뢰 접속은
/root/.rhosts로만 정해진다
r 계열 서비스는 접속해 온 쪽의 IP 주소와 호스트 이름만 믿고 인증을 건너뛴다. 그래서 IP 스푸핑으로 신뢰 호스트를 흉내 내면 그대로 뚫린다(1994년 미트닉 공격이 이 신뢰 관계를 노렸다). 통신도 평문이다.
- r 서비스(rlogin·rsh·rexec)를 쓰지 않으면 서비스 자체를 끄고 이 파일과
.rhosts를 지운다 - 꼭 남겨야 하면 소유자를 root 로, 권한을 600 이하로 두고
+설정이 없는지 점검한다 - 원격 접속은 암호화와 공개 키 인증을 쓰는 SSH 로 대체한다
| 파일 | 하는 일 |
|---|---|
| /etc/hosts.equiv | r 계열 명령에서 비밀번호 없이 들어올 신뢰 호스트(시스템 전체) |
| ~/.rhosts | 같은 일을 사용자 계정별로 정한다 |
| /etc/hosts.allow · /etc/hosts.deny | TCP Wrapper 가 서비스별로 접속을 허용·차단할 호스트. 인증을 건너뛰게 하는 파일이 아니다 |
| /etc/hosts | 호스트명과 IP 주소의 정적 매핑 |
/etc/host.login 이라는 표준 설정 파일은 없다. 로그인할 때 읽는 셸 설정 파일은 /etc/profile, csh 계열의 /etc/csh.login 이다.