You are browsing a read-only backup copy of Wikitech. The live site can be found at wikitech.wikimedia.org
Help:SSH Fingerprints: Difference between revisions
Jump to navigation
Jump to search
imported>Krinkle (Doesn't do anything. Also, output of Special:PrefixIndex is a table, which doesn't work well inside <ul>) |
imported>Alex Monk (example script to generate these pages) |
||
Line 1: | Line 1: | ||
{{Special:PrefixIndex/{{FULLPAGENAME}}/}} | {{Special:PrefixIndex/{{FULLPAGENAME}}/}} | ||
To find this information, locally you can just run this: | |||
<syntaxhighlight lang="bash">for file in /etc/ssh/*_key.pub; do ssh-keygen -lf $file; done</syntaxhighlight> | |||
Remotely (and to format it for these pages), something like this should work: | |||
<syntaxhighlight lang="python3">#!/usr/bin/python3 | |||
import sys | |||
if len(sys.argv) == 0: | |||
print('Must specify hostname') | |||
sys.exit(0) | |||
hostname = sys.argv[1] | |||
port = 22 | |||
if len(sys.argv) > 2: | |||
port = sys.argv[2] | |||
import subprocess, tempfile | |||
with tempfile.NamedTemporaryFile() as tf: | |||
keyscanCommand = 'ssh-keyscan', '-t', 'rsa,ecdsa,ed25519', '-p', str(port), hostname | |||
subprocess.call(keyscanCommand, stdout = tf.file, stderr = open('/dev/null')) | |||
keygenProcess = subprocess.Popen(['ssh-keygen', '-l', '-f', tf.name], stdout = subprocess.PIPE) | |||
stdout, stderr = keygenProcess.communicate() | |||
for line in stdout.decode('ascii').splitlines(): | |||
bitlen, fingerprint, hostname, type = line.split(' ') | |||
print(type[1:-1] + ': <code>' + fingerprint + '</code>\n')</syntaxhighlight> |
Revision as of 20:05, 10 October 2015
- SSH Fingerprints/apt1001.wikimedia.org
- SSH Fingerprints/apt2001.wikimedia.org
- SSH Fingerprints/bast1001.wikimedia.org
- SSH Fingerprints/bast1002.wikimedia.org
- SSH Fingerprints/bast1003.wikimedia.org
- SSH Fingerprints/bast2001.wikimedia.org
- SSH Fingerprints/bast2002.wikimedia.org
- SSH Fingerprints/bast3001.wikimedia.org
- SSH Fingerprints/bast3002.wikimedia.org
- SSH Fingerprints/bast3004.wikimedia.org
- SSH Fingerprints/bast3005.wikimedia.org
- SSH Fingerprints/bast4001.wikimedia.org
- SSH Fingerprints/bast4002.wikimedia.org
- SSH Fingerprints/bast4003.wikimedia.org
- SSH Fingerprints/bast5001.wikimedia.org
- SSH Fingerprints/bast5002.wikimedia.org
- SSH Fingerprints/cumin1001.eqiad.wmnet
- SSH Fingerprints/deploy1001.eqiad.wmnet
- SSH Fingerprints/deploy1002.eqiad.wmnet
- SSH Fingerprints/deploy2002.codfw.wmnet
- SSH Fingerprints/deployment-tin.deployment-prep.eqiad.wmflabs
- SSH Fingerprints/dev-buster.toolforge.org
- SSH Fingerprints/dev.toolforge.org
- SSH Fingerprints/gerrit.wikimedia.org:29418
- SSH Fingerprints/gerrit1001.wikimedia.org
- SSH Fingerprints/gerrit1002.wikimedia.org
- SSH Fingerprints/git-ssh.wikimedia.org
- SSH Fingerprints/gitlab.wikimedia.org
- SSH Fingerprints/gitlab1001.wikimedia.org
- SSH Fingerprints/gitlab2001.wikimedia.org
- SSH Fingerprints/hooft.esams.wikimedia.org
- SSH Fingerprints/icinga1001.wikimedia.org
- SSH Fingerprints/icinga2001.wikimedia.org
- SSH Fingerprints/install1003.eqiad.wmnet
- SSH Fingerprints/install2003.codfw.wmnet
- SSH Fingerprints/login-buster.toolforge.org
- SSH Fingerprints/login-trusty.tools.wmflabs.org
- SSH Fingerprints/login.toolforge.org
- SSH Fingerprints/mira.codfw.wmnet
- SSH Fingerprints/miscweb1002.eqiad.wmnet
- SSH Fingerprints/miscweb2002.codfw.wmnet
- SSH Fingerprints/mwdebug1001.eqiad.wmnet
- SSH Fingerprints/mwdebug1002.eqiad.wmnet
- SSH Fingerprints/mwdebug1003.eqiad.wmnet
- SSH Fingerprints/mwdebug2001.codfw.wmnet
- SSH Fingerprints/mwdebug2002.codfw.wmnet
- SSH Fingerprints/mwmaint1001.eqiad.wmnet
- SSH Fingerprints/mwmaint1002.eqiad.wmnet
- SSH Fingerprints/mwmaint2001.codfw.wmnet
- SSH Fingerprints/mwmaint2002.codfw.wmnet
- SSH Fingerprints/naos.codfw.wmnet
- SSH Fingerprints/notebook1003.eqiad.wmnet
- SSH Fingerprints/people1001.eqiad.wmnet
- SSH Fingerprints/people1002.eqiad.wmnet
- SSH Fingerprints/people1003.eqiad.wmnet
- SSH Fingerprints/phab1001.eqiad.wmnet
- SSH Fingerprints/phab1003.eqiad.wmnet
- SSH Fingerprints/phab2001.codfw.wmnet
- SSH Fingerprints/planet1002.eqiad.wmnet
- SSH Fingerprints/planet2002.codfw.wmnet
- SSH Fingerprints/primary.bastion.wmcloud.org
- SSH Fingerprints/puppetmaster1001.eqiad.wmnet
- SSH Fingerprints/puppetmaster2001.codfw.wmnet
- SSH Fingerprints/releases1001.eqiad.wmnet
- SSH Fingerprints/releases1002.eqiad.wmnet
- SSH Fingerprints/releases2001.codfw.wmnet
- SSH Fingerprints/releases2002.codfw.wmnet
- SSH Fingerprints/restricted.bastion.wmcloud.org
- SSH Fingerprints/rhenium.wikimedia.org
- SSH Fingerprints/stat1002.eqiad.wmnet
- SSH Fingerprints/stat1003.eqiad.wmnet
- SSH Fingerprints/stat1004.eqiad.wmnet
- SSH Fingerprints/stat1005.eqiad.wmnet
- SSH Fingerprints/stat1006.eqiad.wmnet
- SSH Fingerprints/stat1007.eqiad.wmnet
- SSH Fingerprints/stat1008.eqiad.wmnet
- SSH Fingerprints/terbium.eqiad.wmnet
- SSH Fingerprints/tin.eqiad.wmnet
- SSH Fingerprints/trusty-dev.tools.wmflabs.org
- SSH Fingerprints/wikitech-static.wikimedia.org
To find this information, locally you can just run this:
for file in /etc/ssh/*_key.pub; do ssh-keygen -lf $file; done
Remotely (and to format it for these pages), something like this should work:
#!/usr/bin/python3
import sys
if len(sys.argv) == 0:
print('Must specify hostname')
sys.exit(0)
hostname = sys.argv[1]
port = 22
if len(sys.argv) > 2:
port = sys.argv[2]
import subprocess, tempfile
with tempfile.NamedTemporaryFile() as tf:
keyscanCommand = 'ssh-keyscan', '-t', 'rsa,ecdsa,ed25519', '-p', str(port), hostname
subprocess.call(keyscanCommand, stdout = tf.file, stderr = open('/dev/null'))
keygenProcess = subprocess.Popen(['ssh-keygen', '-l', '-f', tf.name], stdout = subprocess.PIPE)
stdout, stderr = keygenProcess.communicate()
for line in stdout.decode('ascii').splitlines():
bitlen, fingerprint, hostname, type = line.split(' ')
print(type[1:-1] + ': <code>' + fingerprint + '</code>\n')