sicurezza con configurazione solo baker
2 risposta
- voti
-
- 2019-01-30
Ilfirewall delfirmatario consente solo le connessioni allaporta delfirmatario dalnodo VPSil cui IP hoinseritonella whitelist. Per questomotivo,non ho ritenutonecessarioimpostare l'autenticazione delfirmatario.
Questa è laprincipalepreoccupazione di sicurezza che avrei. Ingenerale,latua configurazione è abbastanza sicura,tuttaviai rischiprincipali sono:
- Poichéilfirmatarionon dispone di autenticazione,chiunquepossa accedere altuo sistema di cotturain qualchemodopuòfirmaremessaggi conilfirmatario remoto,inclusoiltrasferimento del saldo dellatua obbligazione/deposito.
- La chiaveprivata delfirmatariopotrebbe ancheessere a rischio diessereeseguita su un VPS,poichémolti deiprovider VPSnonproteggono adeguatamente dagli attacchi del canale laterale,chepotrebbero consentire alprovider VPS o a un altro cliente di visualizzareil contenuto dellamemoria dellatua VMedesponi la chiaveprivata.
Un altrometodo sicuro chepotrebbeessere abasso costo:
- Procurati unpiccolo server Linux chepuoieseguire a casa. Potrebbetrattarsi di un PC usatopurché si disponga di 2 GB dimemoria opiùe di spazio su disco sufficienteper lablockchain (attualmente 73 GB agennaio 2019).
- Utilizza un registroper archiviare letue chiaviprivate.
- Chiedi alpanettiere di connettersiin
--private-mode
ainodi di avvio TF come staigiàfacendo,utilizzando latua connessione Internet domestica.
The the signer's firewall only allows connections to the signer port from the node VPS who's IP I whitelisted. Because of this, I didn't feel it was necessary to setup signer authentication.
This is the main security concern I would have. In general, your setup is fairly secure, however, the main risks are:
- Because the signer has no authentication, anyone that can login to your baking system somehow can sign messages with the remote signer, including balance transfer of your bond/deposit.
- The private key on your signer could also be at risk running on a VPS, as many of the VPS providers don't properly protect against side-channel attacks, which could allow the VPS provider or another customer to view the memory contents of your VM and expose the private key.
Another secure method that might be low cost:
- Obtain a small Linux server that you can run at home. This could be a used PC as long as you have 2GB of memory or more and enough disk space for the blockchain (currently 73GB as of January 2019).
- Use a Ledger to store your private keys.
- Have the baker connect in
--private-mode
to the TF boot nodes as you are already doing, using your home internet connection.
-
Grazie!Ah,ok sì,dovreiimpostare l'autenticazione.Eproprio riguardo alla chiaveprivata,dopo averinserito lapasswordper la chiave,vivràin memorianon crittografata. Per quanto riguardailpiccolo server Linux,ilmio IP vienefornitotramite DHCPe cambia spessoper qualsiasimotivo a causa delmioprovider Internet.Questo cambiamento di IPnon è unproblemaper altrinodi (inodi TF) che contattanoilmionodo?Thanks! Ah, ok yeah I should setup authentication. And right about the private key, after I enter the password for the key it will live in memory unencrypted. About the small Linux server, my IP is provided via DHCP and changes often for whatever reason due to my internet provider. This changing IP isn't a problem for other nodes (the TF nodes) contacting my node?
- 1
- 2019-01-30
- lostdorje
-
Se stai usando `--private-mode` letue connessioni sono comunquetuttein uscita (iltuonodobloccheràtutte le connessioniin entrataimpreviste) quindi avere unindirizzo IP dinamiconon sarà unproblema.If you're using `--private-mode` your connections are all outbound anyway (your node will block any unexpected inbound connections) so having a dynamic IP address won't be a problem.
- 1
- 2019-01-30
- Luke Youngblood
-
- 2019-01-30
Ilfirewall delfirmatario consente solo le connessioni allaporta delfirmatario dalnodo VPSil cui IP hoinseritonella whitelist.Per questomotivo,non ho ritenutonecessarioimpostare l'autenticazione delfirmatario.
Lo capovolgerei.Bloccatutte le connessioniin entrata alfirmatarioe faiin modo cheilfirmatario si connetta al TF.In questomodonon devipreoccuparti che unnodo dannoso cerchi di connettersi altuofirmatariotramite attacchi comeil dirottamento dell'IP.
The the signer's firewall only allows connections to the signer port from the node VPS who's IP I whitelisted. Because of this, I didn't feel it was necessary to setup signer authentication.
I would flip this. Block all incoming connections to the signer and instead have the signer connect to the TF. That way you don't have to worry about a malicious node trying to connect to your signer through attacks such as IP hijacking.
-
Non sono sicuro di averlo capito.Ilfirmatario deve accettare le richieste difirma.Ilfirmatario stessonon si connette anulla,risponde solo alle richieste difirma.I'm not sure I understand this. The signer needs to accept requests to sign. The signer itself doesn't connect to anything, it only responds to signing requests.
- 3
- 2019-01-31
- lostdorje
-
Questo è a livello di connessione.Ilfirmatario dovrebbeemettere la richiesta.Significa chepuòpotenzialmenteessere dietro un NAT,come un router domestico,e non ènecessario aprire alcunaportaper rendereilfirmatario accessibile dalmondoesterno. Ciònoninfluisce sulmodoin cui vengonoemesse le richieste difirma.Colpisce solo chi avvia la connessione TCP.This is on the connection level. The signer should issue the request. It means that it can potentially be behind a NAT, such as a home router, and you don't need to open any port to make the signer accessible from the outside world. This doesn't affect how signing requests are issued. It only affects who initiates the TCP connection.
- 1
- 2019-02-01
- adrian
Ho vistomoltepersonemenzionare le configurazioni ditezosper la cottura. L'ideagenerale sarebbe quella dieseguire unamanciata dinodi FE,probabilmente dispersigeograficamente,e quindi avere unnodoprivato che si connette solo ainodi FE. E sepossibile,ilnodoprivato userebbe un registroper le operazioni di cottura/firma.
Untale sistema sarebbeeconomicamenteimpossibileperme. Sono anche abbastanzaitinerante danonpoter semplicemente configurare un sistema domestico. Quindi volevo chiedereinformazionigenerali sulla sicurezza dellamia configurazione.
Gestisco un singolonodoin un VPS. Funzionain modalitàprivataei suoipeer sono soloi peer TF. Ilnodoparla con unfirmatarioin esecuzionein un altro VPStramite una reteprivata. Ilfirewall delfirmatario è completamentebloccatotranne cheper laporta delfirmatario che ho sceltoe ssh è disponibile solotramite unamacchinatunnel chefa ancheparte della reteprivata.
Ilfirewall delfirmatario consente solo le connessioni allaporta delfirmatario dalnodo VPSil cui IP hoinseritonella whitelist. Per questomotivo,non ho ritenutonecessarioimpostare l'autenticazione delfirmatario.
Ilfirmatariofirmaperilmioindirizzo del delegatoe l'indirizzo del delegato contienetezzies appena sufficienti (e unpiccoloextraper respirare)permetterei depositiper PRESERVED_CYCLES come output da estimato-rights.py .
Il resto deitezzies vivein un account originato altrove che delega almio delegato,con le chiavi dell'accountmemorizzate su un registro.
Alcune domande:
Puntibonus: qualcuno sa se èin lavorazione unmodello diblockchain AWS,simile a quello di Ethereum? Vedi: Utilizzo del Modello AWS Blockchainper Ethereum
(Questa domanda ha un diagramma della configurazioneesatta che èeconomicamentenonfattibileperme dato che sono solo unpanettiere solista)