작은 웹 사이트를 포트 80, 8080 또는 81에서 실행해야합니까?


20

nginx를 사용하여 작은 웹 사이트를 실행 중입니다. 서버 수명이 길고 임의 DoS 공격을 피하기 위해 (아마도) 트래픽이 많지 않기 때문에 웹 서버가 포트 80 대신 대체 포트에서 수신 대기하도록 설정하는 것을 고려하고 있습니다.

대체 포트 (81, 8080 등)를 수신하면 실제로 공격이나 침입의 위험이 줄어 듭니까? 아니면 그것을 유지하는 부담이 이익보다 중요합니까? 이 경우 나중에 다른 웹 서비스를 설정할 경우 다른 웹 서비스에 대체 포트를 사용해야합니까?


4
왜 일부 '공격자'가 소규모 웹 사이트에 (D) DoS 위험을 감수합니까?
Gilles Quenot

답변:


40

여기서 고려해야 할 두 가지가 있습니다.

  1. 사용자는 이름에 비표준 포트를 사용하는 것을 기억합니까? 기본적으로 포트 80이 표준이므로 URL에 입력 할 필요가 없습니다. 예를 들어, http://superuser.com포트 80 에서 실행되고 브라우저는 80을 입력 할 때의 포트라고 가정합니다. 입력하는 것과 다릅니다 http://superuser.com:80. 포트 8080에서 웹 서버를 실행하는 경우 사용자 을 입력해야합니다 http://superuser.com:8080. 보통 사용자는 기억하지 못할 것입니다.
  2. 비표준 포트에서 웹 서버를 실행하면 DoS 공격으로부터 보호됩니까? 실제로는 아닙니다. 누군가 사이트를 실제로 중단시키고 싶다면 비표준 포트에서 실행해도 사이트가 중지되지는 않습니다. 공격자는 IP의 모든 포트를 검색하여 8080 (또는 원하는 항목)이 열려 있고 HTTP 요청에 응답한다는 것을 빠르게 발견합니다.

포트 변경과 같은 방법은 " 불분명을 통한 보안 "이라고 하며 추가 작업과 불편이 귀중한 보안을 제공한다는 것은 의심의 여지가 있습니다.


6
Obscurity를 ​​통한 모든 보안이 나쁜 것은 아니라고 덧붙이고 싶습니다. 기본 관리자 또는 루트 사용자 이름을 변경하는 것이 좋습니다. 그러나 32k 만 있고 컴퓨터가 몇 초 안에 스캔 할 수 있으므로 포트 변경과 같은 것은 의미가 없습니다.
Keltari

2
보안을 추가하지는 않지만 특히 사이트에 DNS 레코드가있는 경우 원유 검색 봇으로 인해 사이트 속도가 느려지지 않습니다.
Nathan MacInnes 2016 년

1
그것은 공격의 규모에 전적으로 달려 있습니다. 기본이 아닌 포트를 사용하면 zmap 또는 nmap을 사용하는 웹 서버 취약성에 대해 / 0과 같은 대규모 스캔을 피하는 데 도움이 될 수 있습니다. 그러나 @Keltari는 정확합니다. 만약 당신이 목표라면 공격자는 당신에 대한 전체 스캔을 수행하고, 당신의 서버가 어느 포트에서 실행되고 있는지 확인한 다음, 취약하다면 ;-)합니다.
wi1

@NathanMacInnes는 오늘날 사용 가능한 기술로 소규모 사이트를 스캔하는 봇 수가 무시할 수 있으며 기본 포트 변경의 단점은 매우 크다고 가정합니다.
ILikeTacos

2
잘못 /superuser/되었습니다. 포트 443에서 실행됩니다. 보안 웹 사이트는 443을 사용합니다.
Elliot A.

5

그렇습니다. 대체 포트를 설정하면 봇이 웹을 크롤링하여 결함이있는 웹앱을 찾는 경우 일반적으로 다른 포트를 보지 않기 때문에 실제로 공격의 위험을 줄입니다.

사람 공격자가 서버를 목표로하는 경우 nginx가 수신 대기중인 실제 포트를 쉽게 찾을 수 있습니다 (오픈 포트 스캔).

이러한 대체 포트를 사용하는 것은 드물기 때문에 (프록시 나 대체 웹 서버는 제외) 걱정없이 사용할 수 있다고 생각합니다.

그러나 이러한 대체 포트를 사용하면 "기본"방문자가 웹 사이트를 찾지 못하므로 http://yourserver.com:81/ 과 같은 URL을 사용하여 사람들에게 올바른 포트를 알려주거나 링크로 작성해야합니다 . ..


2

Keltari에서 제공하는 두 가지에 대한 추가 고려 사항은 비표준 포트를 사용하면 달리 지정하지 않는 한 Google과 같은 검색 엔진 웹 크롤러가 웹 사이트를 간과 할 수 있습니다.

링크를 제공하는 사람을 제외한 모든 사람이 귀하의 웹 사이트를 찾기가 어렵다는 의도가 있다면 비표준 포트를 사용하는 것이 좋을 것 같지만 그렇지 않으면 표준 포트를 사용합니다.


1

때에 따라 다르지. "소규모 사이트"의 용도는 무엇입니까?

  • 다른 사람들이 사용할 예정이라면 표준 포트를 사용하는 것이 좋습니다. 대부분의 답변에서 언급했듯이 비표준 포트를 사용 하려면 사용자가 포트를 지정 해야 합니다 (예 : 포트 81-> yoursite.com:81). 표준 포트를 사용하는 경우 브라우저는 프로토콜 (http, https)에서 포트를 유추합니다. 재정의되지 않는 한 http : //는 일반적으로 포트 80이고 https : //는 일반적으로 포트 443입니다. 표준 포트를 사용하는 것이 좋습니다. 물론, 뒷마당에있는 집의 유일한 입구를 넣을 수는 있지만 방문자가 어떻게 거기에 있는지 알 수 있습니까?

  • 귀하 만 사용하는 테스트 사이트 인 경우 두 가지를 스스로 물어보십시오.

    • DNS 레코드 (도메인 이름)에 첨부됩니까? (DNS 참조가없는 서버는 공격이 훨씬 조용하다는 것을 알았습니다. 참고 : 더 안전한 것으로 간주하지 마십시오. 그렇지 않습니다. 공격자가 DNS를 통해 사용자를 찾기가 더 어려워집니다)
    • 포트 및 / 또는 IP를 수동으로 입력해도됩니까?

TL; DR :

  • 다른 사람이 사용 : 80/443 사용
  • 개인 : 당신까지

0

모든 포트에서 http 서버를 실행할 수 있지만 서퍼, 사용자가 포트를 기억하기가 어렵습니다.

공격이나 침입의 위험을 줄일 수 있지만 서버 보안 및 HTTP 서버 포트 80과 같은 다른 방법도 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.