Docker e chaves criptografadas
1 responda
- votos
-
- 2019-02-03
Sim,vocêpodeexecutar o Signer Tezos separadamente dobinário de origeme,em seguida,deixe-o conectar-se aonó de Tezosem execuçãono contêiner de Docker. É assim que vocêpodefazerisso.
On Tezos-signater Server Execute a seguir 3 comandos do diretório onde o Binário Tezos-Signer ébaixado:
- .
- Tezos-signater Gen Keys Alice
- gato ~/.tezos-signater/public_key_hashs
Isso vaiproduzir algo assim: [{"nome": "Alice","valor": "tz1abc ..."}]
Copie sua chave de chavepública que separece com "tz1abc ..." acima.
- Signer de soquete de lançamento de Tezos-signater -A Home-IP
onde Home-IP éendereço IP do seu servidor onde Tezos-signatingestá sendoexecutado. Porpadrão,usa aporta 7732
Nota: comando acima solicitará a senhapara sua chave criptografada,parainiciar o signatário doamon. Vocêprecisamanter seu deamonem execuçãopara que o signatário remotofuncione. Então é recomendadoexecutá-lo como serviço defundo. Eu recomendo usar tmux parafazerisso.
Agorano servidor onde seu dockerestá sendoexecutado,execute os seguintes comandos:
1) ./mainnet.sh clienteimportação chave secreta Alice TCP://Home-IP: 7732/tz1abc ...
onde
Home-IP é omesmo que usadonoponto 3 acima
tz1abc ... é omesmo hash de chavepública usadonoponto 2 acima
comando acimairáimportar a chavepública do servidor de canto,mas a chaveprivada aindapermaneceno servidor de assinatura. Se você verificar o arquivo de chavesprivadas armazenadono contêiner de Docker,vocêencontraráem vez de chaveprivadaeste valor seria armazenamento [{"nome": "Alice", "Valor": "TCP://Home-IP: 7732/tz1abc ...."}]
Bakerem execuçãono contêiner receberá automaticamente atransação assinada do servidor de assinatura usando o valor acima contatando o servidor de assinaturaem que o cantor de Tezos-cantor deveestarnoestado deexecução.
info: para verificar asteclasprivadas armazenadasno contêiner de Docker Use oprocesso abaixo:
//paraentrarnomodo shellno contêiner
- .
- dockerexec -itmainnet_node_1/bin/sh
//parainserir o diretórioem que as chaves sãomantidasno contêiner de docker
-
cd/var/run/tezos/client/
-
secret_keys degato
Yes you can run tezos-signer separately from source binary and then let it connect to tezos-node running in docker container. This is how you can do it.
On tezos-signer server run following 3 commands from directory where tezos-signer binary is downloaded:
- tezos-signer gen keys alice
- cat ~/.tezos-signer/public_key_hashs
This will output something like this: [ { "name": "alice", "value": "tz1abc..." } ]
Copy your public key hash which looks like "tz1abc..." above.
- tezos-signer launch socket signer -a home-ip
where home-ip is IP address of your server where tezos-signer is running. By default it uses port 7732
NOTE: Above command will prompt for password for your encrypted key, to start the signer deamon. You need to keep your deamon running in order for remote signer to work. So it is recommended to run it as background service. I recommend using tmux to do that.
Now on server where your docker is running, run following commands:
1) ./mainnet.sh client import secret key alice tcp://home-ip:7732/tz1abc...
where
home-ip is same as used in point 3 above
tz1abc... is same public key hash used in point 2 above
Above command will import the public key from singing server, but private key still remains on signing server. If you check the private keys file stored in docker container you'll find instead of private key this value would be store [{ "name": "alice", "value": "tcp://home-ip:7732/tz1abc...." }]
Baker running in container will automatically get the transaction signed from signing server using the above value by contacting the signing server where tezos-singer deamon must be in running state.
INFO: To check private keys stored in docker container use below process:
// To enter the shell mode in container
- docker exec -it mainnet_node_1 /bin/sh
// To enter the directory where keys are maintained in docker container
cd /var/run/tezos/client/
cat secret_keys
-
Pergunta de acompanhamento: Quanto recursos o doemon do signatário consumiria?Estou considerandoexecutando-oem um laptop (backup dabateria) com razão.Perguntando-se como um laptopbeefypara obter ...?Followup question: How much resource would the signer daemon consume? I'm considering running it on a laptop (battery backup) with ledger. Wondering how beefy a laptop to get...?
- 0
- 2019-02-03
- asbjornenge
-
@asbjornenge: Provavelmentebompedir à suapergunta de acompanhamento como umanovapergunta.Sinta-se livrepara referência aeste seprecisar.@asbjornenge : probably good to ask your followup question as a new question. Feel free to reference to this one if you need to.
- 0
- 2019-02-03
- Ezy
-
@asbjornenge signer daemonnão deve consumirmuitos dos seus recursos comotudo o que é assinar astransações apedido.Então,setudo que você quiser éexecutar um daemon do signatário,umprocessador únicobásico,2 GB de RAM,60GB deespaçoem discofuncionaria.@asbjornenge signer daemon should not consume much of your resources as all it does is sign the transactions on request. So if all you want is to run a signer daemon on it, a basic single processor, 2GB RAM, 60GB disk space would work.
- 2
- 2019-02-04
- Sachin Tomar
-
Claro,obrigado.Ditoisto,issofunciona com anova atualizaçãoempurrada há alguns dias?Eunoto que Mainnet.shnãoestámais se comportando (pelomenosparamim).Clear, thanks. That said, does this work with the new update pushed out a few days ago? I notice that mainnet.sh is no longer behaving (at least for me).
- 0
- 2019-02-07
- nurikabe
-
Eunão achonada deerrado com anova atualização.Minha configuraçãoestáfuncionandobem.Vocêpodeelaborar seuproblemaem umanovapergunta se aindaestiverenfrentando algumproblema?I don't find anything wrong with the new update. My setup is working fine. Can you elaborate your problem in a new question if you are still facing any problem?
- 0
- 2019-02-12
- Sachin Tomar
Existe umamaneira recomendada de usar o Docker script degerenciamento deimagens com chaves criptografadas (protegidaspor senha)?
O scriptparecefuncionarbem seeunãoprotegerminhas chaves;Maspara chavesprotegidasnãoparece ser umamaneira de Docker solicitar de volta à linha de comandopara uma senha.
Eupoderia serexecutado
tezos-signer
separadamentee ter os recipientes Bakere Endosserfalar comisso?