Red Hat 7.4, HostA 및 HostB를 사용하는 두 개의 호스트가 있습니다.
rsh-server 및 rsh 패키지는 둘 다에 설치됩니다.
두 호스트 모두에서 rsh 데몬이 활성화되고 명령이 , 및 rsh,rlogin,rexec
에 추가되었습니다 ./etc/securetty
/etc/hosts.equiv
HostA
HostB
~에서호스트 A, 루트를 사용하여 실행하면 rsh hostb
비밀번호를 묻지 않고 성공적으로 연결됩니다.
~에서호스트 A, 다른 사용자의 경우 오류가 발생합니다 rcmd: socket: Permission denied
.
~에서호스트 B, 루트를 사용하여 실행하면 rsh hosta
비밀번호를 묻지 않고 성공적으로 연결됩니다.
~에서호스트 B비밀번호를 묻지 않고 다른 사용자와 성공적으로 연결됩니다.
설정 비트를 추가하려고 시도했지만 chmod +a $(which rsh)
아무 소용이 없습니다. SELINUX는 두 호스트 모두에서 비활성화됩니다.
두 호스트 모두에서 방화벽이 비활성화되어 있습니다.
답변1
이 문제를 해결했습니다.
하지만 안타깝게도 왜 이런 일이 발생하는지 이해하지 못합니다.
HostA에서 실행할 때:
# getcap /bin/rsh
그들은 아무것도 반환하지 않습니다.
HostB에서는 다음을 반환합니다.
getcap /bin/rsh
/bin/rsh = cap_net_bind_service+ep
방금 패키지를 제거하고 다시 설치했는데 yum
권한이 부여되었습니다.
그런데 애초에 왜 이런 일이 일어나는 걸까요? 처음 설치할 때 무엇이 빠졌나요? 이상한.