Você pode tentar usar passe-partout .
Eu tenho usado com sucesso com o Apache, não com o Tomcat, mas é anunciado para trabalhar com o Tomcat 7.0.34 + abr 1.4.6 + jdk7-openjdk 7.u9.
Estou executando o Tomcat 6. Eu estava mexendo no meu keystore para tentar corrigir alguns problemas na cadeia de certificados, e acidentalmente rm
d a versão de produção em vez do arquivo .new
com o qual eu estava trabalhando .
Agora, o Tomcat ainda está em execução e ainda é capaz de atender a conexões HTTPS (testei-o em um navegador da web). Obviamente, deve haver uma cópia da chave privada à qual ela ainda tem acesso. Meu primeiro pensamento foi verificar /proc/PID/fd
, então eu corri sudo lsof | grep tomcat
. Isso retorna corretamente uma lista de arquivos abertos:
$ sudo lsof | head -1; sudo lsof | grep tomcat
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 2599 root cwd DIR 202,1 4096 413699 /usr/share/apache-tomcat-6.0.44/bin
java 2599 root mem REG 202,1 51715 413777 /usr/share/apache-tomcat-6.0.44/lib/tomcat-i18n-fr.jar
java 2599 root mem REG 202,1 528303 413771 /usr/share/apache-tomcat-6.0.44/lib/jasper.jar
java 2599 root mem REG 202,1 1250454 413767 /usr/share/apache-tomcat-6.0.44/lib/catalina.jar
java 2599 root mem REG 202,1 132216 413765 /usr/share/apache-tomcat-6.0.44/lib/catalina-ha.jar
java 2599 root mem REG 202,1 54334 413778 /usr/share/apache-tomcat-6.0.44/lib/tomcat-i18n-ja.jar
java 2599 root mem REG 202,1 1830791 413768 /usr/share/apache-tomcat-6.0.44/lib/ecj-4.3.1.jar
java 2599 root mem REG 202,1 54624 413764 /usr/share/apache-tomcat-6.0.44/lib/catalina-ant.jar
java 2599 root mem REG 202,1 70563 413776 /usr/share/apache-tomcat-6.0.44/lib/tomcat-i18n-es.jar
java 2599 root mem REG 202,1 112521 413770 /usr/share/apache-tomcat-6.0.44/lib/jasper-el.jar
java 2599 root mem REG 202,1 76649 413772 /usr/share/apache-tomcat-6.0.44/lib/jsp-api.jar
java 2599 root mem REG 202,1 34622 413769 /usr/share/apache-tomcat-6.0.44/lib/el-api.jar
java 2599 root mem REG 202,1 253635 413775 /usr/share/apache-tomcat-6.0.44/lib/tomcat-dbcp.jar
java 2599 root mem REG 202,1 15250 413763 /usr/share/apache-tomcat-6.0.44/lib/annotations-api.jar
java 2599 root mem REG 202,1 801374 413774 /usr/share/apache-tomcat-6.0.44/lib/tomcat-coyote.jar
java 2599 root mem REG 202,1 239165 413766 /usr/share/apache-tomcat-6.0.44/lib/catalina-tribes.jar
java 2599 root mem REG 202,1 132240 413773 /usr/share/apache-tomcat-6.0.44/lib/servlet-api.jar
java 2599 root mem REG 202,1 32384 413759 /usr/share/apache-tomcat-6.0.44/bin/tomcat-juli.jar
java 2599 root mem REG 202,1 24283 413753 /usr/share/apache-tomcat-6.0.44/bin/commons-daemon.jar
java 2599 root mem REG 202,1 22807 413749 /usr/share/apache-tomcat-6.0.44/bin/bootstrap.jar
java 2599 root 1w REG 202,1 17024956 413713 /usr/share/apache-tomcat-6.0.44/logs/catalina.out
java 2599 root 2w REG 202,1 17024956 413713 /usr/share/apache-tomcat-6.0.44/logs/catalina.out
java 2599 root 4r REG 202,1 22807 413749 /usr/share/apache-tomcat-6.0.44/bin/bootstrap.jar
java 2599 root 5r REG 202,1 24283 413753 /usr/share/apache-tomcat-6.0.44/bin/commons-daemon.jar
java 2599 root 6r REG 202,1 32384 413759 /usr/share/apache-tomcat-6.0.44/bin/tomcat-juli.jar
java 2599 root 7w REG 202,1 4072 396419 /usr/share/apache-tomcat-6.0.44/logs/catalina.2016-04-21.log
java 2599 root 8w REG 202,1 1182 396447 /usr/share/apache-tomcat-6.0.44/logs/localhost.2016-04-21.log
java 2599 root 9w REG 202,1 0 396448 /usr/share/apache-tomcat-6.0.44/logs/manager.2016-04-21.log
java 2599 root 10w REG 202,1 0 396455 /usr/share/apache-tomcat-6.0.44/logs/host-manager.2016-04-21.log
java 2599 root 11r REG 202,1 239165 413766 /usr/share/apache-tomcat-6.0.44/lib/catalina-tribes.jar
java 2599 root 12r REG 202,1 801374 413774 /usr/share/apache-tomcat-6.0.44/lib/tomcat-coyote.jar
java 2599 root 13r REG 202,1 253635 413775 /usr/share/apache-tomcat-6.0.44/lib/tomcat-dbcp.jar
java 2599 root 14r REG 202,1 132240 413773 /usr/share/apache-tomcat-6.0.44/lib/servlet-api.jar
java 2599 root 15r REG 202,1 34622 413769 /usr/share/apache-tomcat-6.0.44/lib/el-api.jar
java 2599 root 16r REG 202,1 76649 413772 /usr/share/apache-tomcat-6.0.44/lib/jsp-api.jar
java 2599 root 17r REG 202,1 112521 413770 /usr/share/apache-tomcat-6.0.44/lib/jasper-el.jar
java 2599 root 18r REG 202,1 70563 413776 /usr/share/apache-tomcat-6.0.44/lib/tomcat-i18n-es.jar
java 2599 root 19r REG 202,1 54624 413764 /usr/share/apache-tomcat-6.0.44/lib/catalina-ant.jar
java 2599 root 20r REG 202,1 1830791 413768 /usr/share/apache-tomcat-6.0.44/lib/ecj-4.3.1.jar
java 2599 root 21r REG 202,1 54334 413778 /usr/share/apache-tomcat-6.0.44/lib/tomcat-i18n-ja.jar
java 2599 root 22r REG 202,1 15250 413763 /usr/share/apache-tomcat-6.0.44/lib/annotations-api.jar
java 2599 root 23r REG 202,1 132216 413765 /usr/share/apache-tomcat-6.0.44/lib/catalina-ha.jar
java 2599 root 24r REG 202,1 1250454 413767 /usr/share/apache-tomcat-6.0.44/lib/catalina.jar
java 2599 root 25r REG 202,1 528303 413771 /usr/share/apache-tomcat-6.0.44/lib/jasper.jar
java 2599 root 26r REG 202,1 51715 413777 /usr/share/apache-tomcat-6.0.44/lib/tomcat-i18n-fr.jar
bash 29579 ec2-user cwd DIR 202,1 4096 413708 /usr/share/apache-tomcat-6.0.44/conf
sudo 30595 root cwd DIR 202,1 4096 413708 /usr/share/apache-tomcat-6.0.44/conf
grep 30596 ec2-user cwd DIR 202,1 4096 413708 /usr/share/apache-tomcat-6.0.44/conf
lsof 30597 root cwd DIR 202,1 4096 413708 /usr/share/apache-tomcat-6.0.44/conf
lsof 30598 root cwd DIR 202,1 4096 413708 /usr/share/apache-tomcat-6.0.44/conf
mas infelizmente meu keystore não é um deles. Eu acho que o Tomcat deve ter carregado na memória e, em seguida, fechou o descritor de arquivo. (O keystore estava em /conf
acima, mas esses descritores de arquivos são do meu shell aberto, não do próprio Tomcat.)
Então: existe alguma maneira de recuperar minha chave privada? Estou no Amazon Linux; uname -a
retorna Linux ip-10-0-0-105 4.4.5-15.26.amzn1.x86_64 #1 SMP Wed Mar 16 17:15:34 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
.
Você pode tentar usar passe-partout .
Eu tenho usado com sucesso com o Apache, não com o Tomcat, mas é anunciado para trabalhar com o Tomcat 7.0.34 + abr 1.4.6 + jdk7-openjdk 7.u9.