¿Cómo proteger el nodo de horneado de ataques como DDOS?
3 respuestas
- votos
-
- 2019-01-31
-
9732
eselpuertopredeterminadopara las conexiones P2P,puede anularse con--net-addr=ADDR:PORT
aliniciarelnodo -
8732
eselpuertopredeterminadopara conexiones RPC,sepuede anular con--rpc-addr=ADDR:PORT
- Todas las redes utilizan TCP.
Si usa
iptables
,las siguientes reglas deberían ser suficientesparatezosespecíficamente.Tengaen cuenta que deberápermitir otros servicios de red queno sean detezos como DNS,NTP,DHCP,según su configuración.
# 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
-
Pero cerrar lospuertosno utilizadosnoprotegerá a unpanadero de un DDOS,¿verdad?Laformaestándar de hacerloes ocultar unpanadero (en la configuración delnodoprivado) detrás de variosnodospúblicos.Hacerlo significa queno sepuede apuntar directamente a unpanadero y losnodospúblicos sepuedenintercambiar si hay un DDOS activo.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
-
Tienes razón,supongo queel OPen realidadtiene 2preguntaspara responder: una sobre DDOS y otra sobre lospuertos de Tezos.En consecuencia,lapregunta debería dividirseen dos.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
-
Cuando unnodoestáen modoprivado,tambiénesposiblenopermitir conexionesentrantesen elpuerto 9732 y solopermitir conexionesentrantes relacionadas yestablecidas.Elnodoprivado soloestablecerá conexiones anodos confiables detodosmodos y otrosnodosno confiablesnopodrán conectarse.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 daen el clavo con lospuertos que usaelnodo. Laprevención de DDoSparaelnodo de horneadoestambién una de las razonespor las que la configuraciónmás comúnpara hornearestener unnodo de horneadoprivado connodospúblicos confiables.
Básicamente,tenemos un solonodo que usaelpanadero yelendosante yestá configuradoparaestaren modoprivado . Elmodoprivadonopermitirá las conexiones de otros ytambién les dirá a suspares quenotransmitan laexistencia delnodo a suspares. Paramantener realmenteprivadonuestronodoprivado,se debe confiaren lospares delnodoprivadopara queno revelen la IP de sunodoprivado. Esto significa que sunodoprivadonecesitaestablecerparesexplícitosparanodos confiables (en lugar de dejar queelnodoelija cualquierpar disponibleen la red).
¿Qué significa que unnodo sea confiable? Bueno,varía depersona apersona dependiendo de sunivel de riesgo aceptado. Pero si realmente desea confiaren unnodo,la únicaformaesposeerlo ustedmismo. Dichoesto,muchospanaderos aceptan que losnodospúblicos de lafundación sean lo suficientemente confiables.
@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.
-
Graciaspor lainformación sobre la configuración.¿Puedeexplicar cómo hacereste conjunto usandoimágenes de Docker?Veo queel archivomainnet.shtiene todas las configuracionespredeterminadas,pero ¿cómomodificaresas configuracionesparatener una configuración como laexplica usted?No haymuchainformación sobre la configuración realizada conimágenes de la ventana acoplable.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
-
Actualmenteno usaría la ventana acoplableparaelnodoprivado de horneado,específicamentepor razones conel uso de un libromayor.Peropara losnodospúblicosfrontend,el uso de contenedores dockeresmuchomásfácil demantener.Elequipo de desarrollo central losmantiene deforma activa,a lo sumo unosminutospor detrás de los últimosen la rama de la redprincipal.Podría usar [mainnet.sh] (https://gitlab.com/tezos/tezos/blob/mainnet/scripts/alphanet.sh),pero creo queejecutar una configuraciónpersonalizada de docker-composefuncionamejor,[estoes lo queYo uso] (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
Tambiénpuede agregar una capa adicional de seguridad haciendo que la conexión a Internet de sunodopase através de una VPNprotegida contra 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
-
De acuerdo,también creo que lapreguntaera sobre laprotección contra DDOS ynotanto la cuestión de lospuertos: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
Quiero saber quépuertos yprotocolos usatezos-node ybakerparapoder habilitar soloesospuertos yprotocolosen la configuración demi firewallparaevitar cualquier ataque DDosen mi servidor.