본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
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 이다.