ISP는 외부 DNS도 호스팅합니다. 기본적으로 localhost에 대한 항목이 포함됩니다.
예를 들면 다음과 같습니다. localhost.example.com. 127.0.0.1에서 86400
내가 그것을 제거하도록 요청했을 때 그들은 나에게 힘든 시간을주고 그것이 바인드가 작동하는 방식이라고 말합니다.
나는 왜 그것을 포함하고 싶을 지에 대해 약간의 연구를 시도했지만 많이 찾을 수 없었습니다. 가능한 XSS 공격 경로라고 생각되는 곳을 하나 이상 찾았습니다. alexa의 상위 20 개 웹 사이트 도메인에서 조회를 수행했으며 일반적으로 그러한 항목은 없지만 몇 가지가 있습니다. 다른 일부는 입장했지만 127.0.0.1을 가리키는 대신 다른 세계 라우팅 가능한 IP 주소를 가리 킵니다.
어쨌든, 왜 내 도메인의 영역에 locahost를 갖고 싶습니까? 그것을 가지고 있지 않은 문제가 있습니까? 이에 관한 모범 사례가 있습니까? 사실 내가 알지 못하는 기본 바인드입니까?
감사
답변
localhost.example.com
“localhost”요청이 인터넷으로 유출되는 것을 방지하기 위해 내부 DNS 서버에 포함되는 경우가 있습니다 (John Smith가 http://localhost/
브라우저 에 입력하는 경우 및 해석 프로그램이 hosts 파일을 찾지 않은 경우 검색 경로 ( example.com
)를 추가 함 ) &는 이름 서버에 무엇을 요구하는지 묻기 시작합니다).
localhost 항목을 가질 필요가 없습니다. ISP가 “BIND 작동 방식”이라고 생각하면 잘못 안내되거나 바보입니다. BIND는 영역 파일에있는 내용을 제공하고 해당 localhost
줄 을 제거하면 해당 항목을 제공하지 않습니다. 기록). 무료 예로서, localhost.google.com
해결하지 못하고 해당 도메인의 NS가 BIND를 실행하고 있다고 확신합니다.
XSS 벡터는 내가 생각하지 못했던 것입니다.하지만 localhost
퍼블릭 DNS에 항목이 있으면 해킹 된 머신이 “도메인에있을 수 있습니다”(127.0.0.1에서 웹 서버를 실행 함) 모든 종류의 불쾌한 것들. 항목을 제거 할 충분한 이유가있을 수 있습니다.
답변
내부 이름 확인이 이름 확인을 올바르게 처리한다고 가정하면 localhost에 대한 모든 DNS 요청은 절대 외부 DNS 공급자에게 전달되지 않아야하므로 전혀 문제가되지 않습니다.
한 가지 이유 왜 사람이 한 번에 절대 참조의 부하를 망쳐하는 웹 저작 도구를 사용하는 경우 다른 사람이 내 머리 위로 떨어져 생각할 수있는,이 작업을 수행 할 것이며, HTTP : // 로컬 호스트를 ,하지만 것으로 가정하여 ISP는 또한 DNS 박스에서 호스팅을하고 있었으며 오래 전부터 사용되었습니다.
그러나 RFC 1537 은 다음을 지정합니다.
로컬 도메인을 추가할지 여부에 대한 광범위한 논의가있었습니다. 결론은 “localhost”였습니다. 최선의 해결책이 될 것입니다. 주어진 이유는 다음과 같습니다.
“localhost”자체가 사용되고 일부 시스템에서는 작동 할 것으로 예상됩니다.
127.0.0.1을 “localhost.my_domain”으로 변환하면 원하지 않는 루프백 인터페이스를 사용하여 일부 소프트웨어가 자체 연결될 수 있습니다.
호스트가 포함 된 모든 도메인에는 “localhost”A 레코드가 있어야합니다.
따라서 ISP가 localhost를 포함하는 것이 맞지만 정규화 된 이름을 사용하는 것은 올바르지 않은 것처럼 엄격하게 말합니다.
답변
포인트가 무엇인지 잘 모르겠습니다 … 기본적으로 외부 주소는 호스트 파일에 의해 대체 될 것입니다. 호스트 파일은 거의 항상 localhost를 127.0.0.1에 매핑합니다.
그러나 기본 BIND 영역 파일에는 로컬 호스트 영역이 포함됩니다. 그것에 대해 정말 생각하지 마십시오.