이 프로그램들은 어떤 관련이 있나요?
TCPD그리고의도/리네트아주 오래되었지만 그럼에도 불구하고 여전히 많은 배포판에 존재합니다... 왜죠? 그리고 hosts.allow
다음 hosts.deny
과 같은 상관관계도 있습니다 .TCPD하지만 나는 이 파일들이TCPD설치되지 않았습니다...(명령을 사용해 보십시오.포장 백또한 hosts.allow/deny
패키지 없음에 해당하지 않는 것으로 나타났습니다.)...글쎄..엉망입니다. 누구든지 나를 위해 이것을 명확히 할 수 있습니까?
감사해요
답변1
전통적인 설정은 inetd
불과 30년 전만 해도 현재 소켓 활성화를 위해 systemd가 수행하는 것과 유사한 청취 소켓을 여는 것이었습니다. inetd
연결이 되면 무조건 데몬이 시작됩니다.
일부 기본 액세스 제어의 경우 실제 서버 대신 inetd
부팅하도록 구성할 수 있습니다 . tcpd
프로그램은 hosts.allow
및 파일에 대해 연결이 허용되는지 확인 hosts.deny
하고 허용되는 경우 실제 서비스를 수행합니다.
이는 호스트 기반 방화벽 솔루션보다 훨씬 오래되었거나 유사하므로 iptables
AmiTCP 또는 AmigaOS의 Miami와 같이 방화벽이 전혀 없는 스택에서도 작동합니다.
또 다른 이점은 소스 주소의 구성을 확인하는 것이 서비스 시작의 일부이므로 일단 구성되면 방화벽 규칙을 새로 고쳐 서비스가 실수로 노출되는 일이 없다는 것입니다.
단점은 포트가 초기에 열려 있으므로 네트워크 검색에 표시되고 연결이 설정되자마자 연결이 닫히는 것입니다.
hosts.allow
파일이 "누락"된다는 것은 "모든 연결 허용"을 의미하기 때문에 파일을 hosts.deny
더 이상 사용할 수 없습니다. 따라서 파일 자체는 유효한 구성을 형성하며 여전히 해당 파일을 사용하는 사람은 아마도 자신이 무엇을 하고 있는지 알 것입니다.
서비스가 리스너 소켓으로 시작하고 시작 후 추가 연결을 수락하는 책임을 맡는 액세스 제어에 매체 옵션을 사용하면 중간 옵션의 이점을 잃게 됩니다 tcpd
(즉, 여러 병렬 연결 인스턴스에 대해 하나만 가짐).wait
inetd
아니요 udpd
. UDP 패킷의 출처를 확인할 수 없기 때문입니다.