Como proteger o nó de cozimento de ataques como DDoS?
3 respostas
- votos
-
- 2019-01-31
-
9732
é aportapadrãopara conexões P2P,pode ser substituída com-net-addr=addr:porta code> aoiniciar onó
-
8732
é aportapadrãopara conexões RPC,pode ser substituída com- RPC-addr=addr:porta code>
- Todas as redes usam TCP.
Seestiver usando
iptables
As regras abaixo devem ser suficientespara Tezosespecificamente.Esteja ciente de que vocêprecisarápermitir que outros serviços de redenão Tezos como DNS,NTP,DHCP,dependendo da sua configuração.
# Permitir Tezos RPC iptables -aentrada -ptcp --dport 8732 -m conntrack --ctstatenovo,estabelecido -J aceitar iptables -a saída -ptcp --sport 8732 -m conntrack --ctstateestabeleceu -J aceitar # Permitir conexões de Tezos P2P iptables -aentrada -ptcp --dport 9732 -m conntrack --ctstatenovo,estabelecido -J aceitar iptables -a saída -ptcp --dport 9732 -m conntrack --ctstatenovo,estabelecido -J aceitar iptables -a saída -ptcp --sport 9732 -m conntrack --ctstateestabelecido -J aceitar
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
-
Masfechar osportosnão utilizadosnão vai salvaguardar umpadeiro de um DDoS,vai?Amaneirapadrão defazerisso é ocultar umpadeiro (na configuração donóprivado)portrás de umnúmero denóspúblicos.Isso significa que umpadeironãopode ser diretamente segmentadoe osnóspúblicospodem sertrocados se houver um DDoS ativo.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
-
Vocêestá correto,eu acho que o OP realmentetem 2perguntas a serem respondidas - umano DDoSe umaem portas de Tezos.A questão deve ser divididaem dois de acordo.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
-
Quando umnóestánomodoprivado,também épossívelpermitir conexões deentradanaporta 9732e apenaspermitir conexões recebidas relacionadase estabelecidas.Onóprivado sóestabelecerá conexões anós confiáveis de qualquermaneirae outrosnósnão confiáveisnãopoderão se conectar.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
@xtzbakerestá localizado com asportas que onó usa. Evitar DDoSpara onó de cozimentotambém é uma das razõespelas quais a configuraçãomais comumpara cozer éter umnó de cozimentoprivado comnóspúblicos confiáveis.
Basicamente,temos um úniconó que o Bakere Endosser usae é configuradoparaestarem modoprivado . Omodoprivadonãopermitirá conexões dos outrose também dizem que seusparesnãotransmitem aexistência donópara seuspares. Afim de realmentemanternossonóprivadoprivado,ospares donóprivado devem ser confiáveis paranão revelar o IP do seunóprivado. Isso significa que seunóprivadoprecisa definir osparesexplícitosparanós confiáveis (em oposição a deixar onóescolher quaisquerpares disponíveisna rede).
O que significapara umnó ser confiável? Bem,varia depessoa apessoa,dependendo do seunível aceito de risco. Mas se você quiser realmente confiarem umnó,a únicamaneira épossuí-las a simesmo. Ditoisto,muitospadeiros aceitam osnóspúblicos dafundaçãopara serem confiáveis o suficiente.
@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.
-
Obrigadopelainformação sobre a configuração.Vocêpodeexplicar comofazerisso usando asimagens do Docker.Eu vejo que o arquivomainnet.shtem todas as configuraçõespadrão,mas comomodificaressas configuraçõesparater uma configuração conformeexplicadopor você?Não hámuitainformação sobre a configuraçãofeita usandoimagens de Docker.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
-
Atualmentenão usaria Dockerpara onóprivado de cozimento,especificamente razões com o uso de um livro.Masparanóspúblicos de Frontend,usando contêineres de Docker émuitomaisfácil demanter.Aequipe do Core Devmantém-as ativamente,nomáximo apenas algunsminutos atrás domais recenteno ramo Mainnet.Vocêpoderia usar o [mainnet.sh] (https://gitlab.com/tezos/tezos/blob/mainnet/scripts/alphanet.sh),maseu acho queexecutar uma configuraçãopersonalizada de composição de dockerfuncionamelhor,[éisso queEu uso] (https://gist.github.com/sirneb/8419e41aea4f2d5770555301d5770555301006cea20).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
Vocêtambémpode adicionar uma camadaextra de segurançaporter a conexão de Internet do seunópassarpor uma VPNprotegidapor DDoS,como Octovpn https://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
-
Concordo,também acho que a questãoera sobreproteger contra DDoSe nãotanto a questão dosportos:Agree, I also think that the question was about protecting against DDOS and not so much the question of ports:
- 0
- 2019-02-04
- jdsika
-
https://www.cloudflare.com/ddos/https://www.cloudflare.com/ddos/
- 0
- 2019-02-04
- jdsika
Eu quero saber quaisportase protocolostezos-nóe padeiro usampara queeupossa habilitar apenasessasportase protocolosna configuração domeufirewallparaevitar qualquer ataque DDoSnomeu servidor.