DDOS와 같은 공격으로부터 베이킹 노드를 보호하는 방법은 무엇입니까?
3 대답
- 투표
-
- 2019-01-31
-
9732
는 P2P 연결의 기본 포트이며 노드를 시작할 때--net-addr=ADDR:PORT
로 재정의 할 수 있습니다. -
8732
는 RPC 연결의 기본 포트이며--rpc-addr=ADDR:PORT
로 재정의 할 수 있습니다.
- 모든 네트워킹은 TCP를 사용합니다.
iptables
를 사용하는 경우 아래 규칙이 특히tezos에 충분합니다.구성에 따라 DNS,NTP,DHCP와 같은 다른 비tezos 네트워크 서비스를 허용해야합니다.
# Allow Tezos RPC iptables -A INPUT -p tcp --dport 8732 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --sport 8732 -m conntrack --ctstate ESTABLISHED -j ACCEPT # Allow Tezos P2P connections iptables -A INPUT -p tcp --dport 9732 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --dport 9732 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --sport 9732 -m conntrack --ctstate ESTABLISHED -j ACCEPT
9732
is the default port for P2P connections, can be overridden with--net-addr=ADDR:PORT
when starting the node8732
is the default port for RPC connections, can be overridden with--rpc-addr=ADDR:PORT
- All networking uses TCP.
If using
iptables
the below rules should suffice for tezos specifically.Be aware you will need to allow other non tezos network services like DNS,NTP,DHCP depending on your configuration.
# Allow Tezos RPC iptables -A INPUT -p tcp --dport 8732 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --sport 8732 -m conntrack --ctstate ESTABLISHED -j ACCEPT # Allow Tezos P2P connections iptables -A INPUT -p tcp --dport 9732 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --dport 9732 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --sport 9732 -m conntrack --ctstate ESTABLISHED -j ACCEPT
-
그러나 사용하지 않는 포트를 닫아도 DDOS에서 베이커를 보호 할 수는 없습니까?이를 수행하는 표준 방법은 여러 공용 노드 뒤에 베이커 (개인 노드 구성에서)를 숨기는 것입니다.이렇게하면 제빵사가 직접 대상을 지정할 수 없으며 활성 DDOS가있는 경우 공용 노드를 교체 할 수 있습니다.But closing unused ports won't safeguard a baker from a DDOS, will it? The standard way of doing that is to hide a baker (in private node config) behind a number of public nodes. Doing so means a baker can't be directly targeted and public nodes can be swapped out if there is an active DDOS.
- 3
- 2019-02-01
- latte_jed
-
맞습니다. OP에는 실제로 답변해야 할 두 가지 질문이 있습니다. 하나는 DDOS에 대한 것이고 다른 하나는 Tezos 포트에 대한 것입니다.그에 따라 질문을 두 개로 나누어야합니다.You are correct, I guess the OP actually has 2 questions to be answered - one on DDOS and one on Tezos ports. The question ought to be split in two accordingly.
- 1
- 2019-02-02
- xtzbaker
-
노드가 개인 모드에있는 경우 포트 9732에서 들어오는 연결을 허용하지 않고 관련되고 설정된 들어오는 연결 만 허용 할 수도 있습니다.개인 노드는 어쨌든 신뢰할 수있는 노드에 대한 연결 만 설정하고 다른 신뢰할 수없는 노드는 연결할 수 없습니다.When a node is in private mode, it is also possible to not allow incoming connections on port 9732 and to only allow related and established incoming connections. The private node will only establish connections to trusted nodes anyway and other, non-trusted nodes will not be able to connect.
- 0
- 2019-02-04
- cryptodad
-
- 2019-02-01
@xtzbaker는 노드가 사용하는 포트에 자리 잡고 있습니다. 베이킹 노드에 대한 DDoS 방지는 또한 베이킹을위한 가장 일반적인 설정이 신뢰할 수있는 공개 노드가있는 프라이빗 베이킹 노드를 갖는 이유 중 하나입니다.
기본적으로 제빵사와 보증인이 사용하는 단일 노드가 있으며 비공개 모드 . 개인 모드는 다른 사람의 연결을 허용하지 않으며 피어에게 노드의 존재를 해당 피어에게 브로드 캐스트하지 않도록 지시합니다. 비공개 노드를 진정으로 비공개로 유지하려면 비공개 노드의ip를 공개하지 않도록 비공개 노드의 피어를 신뢰해야합니다. 이는 사설 노드가 명시 적 피어를 신뢰할 수있는 노드로 설정해야 함을 의미합니다 (노드가 네트워크에서 사용 가능한 피어를 선택하도록하는 것과 반대).
노드를 신뢰할 수 있다는 것은 무엇을 의미합니까? 글쎄,그것은 당신이 허용하는 위험 수준에 따라 사람마다 다릅니다. 그러나 노드를 진정으로 신뢰하고 싶다면 유일한 방법은 직접 소유하는 것입니다. 즉,많은 제빵사가 재단 공개 노드를 충분히 신뢰할 수 있다고 받아들입니다.
@xtzbaker is spot on with the ports that the node uses. Preventing DDoS for the baking node is also one of the reasons that the most common setup for baking is to have a private baking node with trusted public nodes.
Basically, we have a single node that the baker and endorser uses and it's configured to be on private mode. Private mode will disallow connections from others and also tell its peers to not broadcast the node's existence to their peers. In order to truly keep our private node private, the private node's peers must be trusted to not reveal your private node's ip. This means your private node needs to set explicit peers to trusted nodes(as opposed to just let the node choose any available peers on the network).
What does it mean for a node to be trustworthy? Well, it varies from person to person depending on your accepted level of risk. But if you want to truly trust a node, the only way is to own them yourself. That said, many bakers accept the foundation public nodes to be trustworthy enough.
-
설정에 대한 정보를 제공해 주셔서 감사합니다.도커 이미지를 사용하여이 설정을 수행하는 방법을 설명 할 수 있습니다.mainnet.sh 파일에 모든 기본 구성이 있지만 설명대로 설정을 갖도록 해당 구성을 수정하는 방법은 무엇입니까?도커 이미지를 사용한 설정에 대한 정보가 많지 않습니다.Thanks for the information about the setup. Can you explain how to do this set using docker images. I see that mainnet.sh file has all the default configurations but how to modify those configuration to have a setup as explained by you? There is not much information regarding setup done using docker images.
- 0
- 2019-02-03
- Sachin Tomar
-
나는 현재 베이킹 전용 노드,특히 원장을 사용하는 이유로 도커를 사용하지 않습니다.그러나 프런트 엔드 공용 노드의 경우 도커 컨테이너를 사용하는 것이 훨씬 더 쉽게 유지 관리 할 수 있습니다.핵심 개발 팀은 메인 넷 브랜치에서 최대 몇 분 뒤에 적극적으로 유지 관리합니다.[mainnet.sh] (https://gitlab.com/tezos/tezos/blob/mainnet/scripts/alphanet.sh)를 사용할 수 있지만 사용자 지정 docker-compose 설정을 실행하면 더 잘 작동합니다.저는] (https://gist.github.com/sirneb/8419e41aea4f2d5770555301006cea20)을 사용합니다.I currently wouldn't use docker for the baking private node, specifically reasons with using a ledger. But for frontend public nodes, using docker containers is much easier to maintain. The core dev team actively maintains them, at most only minutes behind latest on the mainnet branch. You could use the [mainnet.sh](https://gitlab.com/tezos/tezos/blob/mainnet/scripts/alphanet.sh), but I find running a custom docker-compose setup works better, [this is what I use](https://gist.github.com/sirneb/8419e41aea4f2d5770555301006cea20).
- 1
- 2019-02-04
- Frank
-
- 2019-02-04
또한 노드의 인터넷 연결이 OctoVPN https ://와 같은 DDoS 보호 VPN을 통과하도록하여 보안 계층을 추가 할 수 있습니다.octovpn.com
You could also add an extra layer of security by having your node's internet connection go through a DDoS protected VPN, like OctoVPN https://octovpn.com
테 조스 노드와 베이커가 사용하는 포트와 프로토콜을 알고 싶습니다. 방화벽 설정에서 해당 포트와 프로토콜 만 활성화하여 서버에 대한 DDos 공격을 방지 할 수 있습니다.