Skip to content

Instantly share code, notes, and snippets.

@bcoles
Last active June 30, 2019 12:32
Show Gist options
  • Save bcoles/af5ac8f75a3fde42f397f53e9069b27c to your computer and use it in GitHub Desktop.
Save bcoles/af5ac8f75a3fde42f397f53e9069b27c to your computer and use it in GitHub Desktop.
Reverse /etc/services
#!/usr/bin/env ruby
# Reverse /etc/services
# Returns Hash of services and ports with service names as Hash keys
services = {}
File.read('/etc/services').each_line do |line|
next if line.strip == '' # remove blank lines
next if line.start_with?('#') # remove comment lines
if line =~ /([^\s]+)\s+(\d+\/[udptcp]{3})/
service = $1.to_sym
port = $2
if services.include?(service)
services[service] << port
else
services[service] = [port]
end
end
end
puts 'Examples:'
puts "* Telnet: #{services[:telnet].join(', ')}"
puts "* SSH: #{services[:ssh].join(', ')}"
puts "* DNS: #{services[:domain].join(', ')}"
#puts services.inspect
@bcoles
Copy link
Author

bcoles commented Apr 21, 2017

{:tcpmux=>["1/tcp"], :echo=>["7/tcp", "7/udp", "4/ddp"], :discard=>["9/tcp", "9/udp"], :systat=>["11/tcp"], :daytime=>["13/tcp", "13/udp"], :netstat=>["15/tcp"], :qotd=>["17/tcp"], :msp=>["18/tcp", "18/udp"], :chargen=>["19/tcp", "19/udp"], :"ftp-data"=>["20/tcp"], :ftp=>["21/tcp"], :fsp=>["21/udp"], :ssh=>["22/tcp", "22/udp"], :telnet=>["23/tcp"], :smtp=>["25/tcp"], :time=>["37/tcp", "37/udp"], :rlp=>["39/udp"], :nameserver=>["42/tcp"], :whois=>["43/tcp"], :tacacs=>["49/tcp", "49/udp"], :"re-mail-ck"=>["50/tcp", "50/udp"], :domain=>["53/tcp", "53/udp"], :mtp=>["57/tcp"], :"tacacs-ds"=>["65/tcp", "65/udp"], :bootps=>["67/tcp", "67/udp"], :bootpc=>["68/tcp", "68/udp"], :tftp=>["69/udp"], :gopher=>["70/tcp", "70/udp"], :rje=>["77/tcp"], :finger=>["79/tcp"], :http=>["80/tcp", "80/udp"], :link=>["87/tcp"], :kerberos=>["88/tcp", "88/udp"], :supdup=>["95/tcp"], :hostnames=>["101/tcp"], :"iso-tsap"=>["102/tcp"], :"acr-nema"=>["104/tcp", "104/udp"], :"csnet-ns"=>["105/tcp", "105/udp"], :rtelnet=>["107/tcp", "107/udp"], :pop2=>["109/tcp", "109/udp"], :pop3=>["110/tcp", "110/udp"], :sunrpc=>["111/tcp", "111/udp"], :auth=>["113/tcp"], :sftp=>["115/tcp"], :"uucp-path"=>["117/tcp"], :nntp=>["119/tcp"], :ntp=>["123/tcp", "123/udp"], :pwdgen=>["129/tcp", "129/udp"], :"loc-srv"=>["135/tcp", "135/udp"], :"netbios-ns"=>["137/tcp", "137/udp"], :"netbios-dgm"=>["138/tcp", "138/udp"], :"netbios-ssn"=>["139/tcp", "139/udp"], :imap2=>["143/tcp", "143/udp"], :snmp=>["161/tcp", "161/udp"], :"snmp-trap"=>["162/tcp", "162/udp"], :"cmip-man"=>["163/tcp", "163/udp"], :"cmip-agent"=>["164/tcp", "164/udp"], :mailq=>["174/tcp", "174/udp"], :xdmcp=>["177/tcp", "177/udp"], :nextstep=>["178/tcp", "178/udp"], :bgp=>["179/tcp", "179/udp"], :prospero=>["191/tcp", "191/udp"], :irc=>["194/tcp", "194/udp"], :smux=>["199/tcp", "199/udp"], :"at-rtmp"=>["201/tcp", "201/udp"], :"at-nbp"=>["202/tcp", "202/udp"], :"at-echo"=>["204/tcp", "204/udp"], :"at-zis"=>["206/tcp", "206/udp"], :qmtp=>["209/tcp", "209/udp"], :z3950=>["210/tcp", "210/udp"], :ipx=>["213/tcp", "213/udp"], :imap3=>["220/tcp", "220/udp"], :pawserv=>["345/tcp", "345/udp"], :zserv=>["346/tcp", "346/udp"], :fatserv=>["347/tcp", "347/udp"], :rpc2portmap=>["369/tcp", "369/udp"], :codaauth2=>["370/tcp", "370/udp"], :clearcase=>["371/tcp", "371/udp"], :ulistserv=>["372/tcp", "372/udp"], :ldap=>["389/tcp", "389/udp"], :imsp=>["406/tcp", "406/udp"], :svrloc=>["427/tcp", "427/udp"], :https=>["443/tcp", "443/udp"], :snpp=>["444/tcp", "444/udp"], :"microsoft-ds"=>["445/tcp", "445/udp"], :kpasswd=>["464/tcp", "464/udp"], :saft=>["487/tcp", "487/udp"], :isakmp=>["500/tcp", "500/udp"], :rtsp=>["554/tcp", "554/udp"], :nqs=>["607/tcp", "607/udp"], :"npmp-local"=>["610/tcp", "610/udp"], :"npmp-gui"=>["611/tcp", "611/udp"], :"hmmp-ind"=>["612/tcp", "612/udp"], :"asf-rmcp"=>["623/udp"], :qmqp=>["628/tcp", "628/udp"], :ipp=>["631/tcp", "631/udp"], :exec=>["512/tcp"], :biff=>["512/udp"], :login=>["513/tcp"], :who=>["513/udp"], :shell=>["514/tcp"], :syslog=>["514/udp"], :printer=>["515/tcp"], :talk=>["517/udp"], :ntalk=>["518/udp"], :route=>["520/udp"], :timed=>["525/udp"], :tempo=>["526/tcp"], :courier=>["530/tcp"], :conference=>["531/tcp"], :netnews=>["532/tcp"], :netwall=>["533/udp"], :gdomap=>["538/tcp", "538/udp"], :uucp=>["540/tcp"], :klogin=>["543/tcp"], :kshell=>["544/tcp"], :"dhcpv6-client"=>["546/tcp", "546/udp"], :"dhcpv6-server"=>["547/tcp", "547/udp"], :afpovertcp=>["548/tcp", "548/udp"], :idfp=>["549/tcp", "549/udp"], :remotefs=>["556/tcp"], :nntps=>["563/tcp", "563/udp"], :submission=>["587/tcp", "587/udp"], :ldaps=>["636/tcp", "636/udp"], :tinc=>["655/tcp", "655/udp"], :silc=>["706/tcp", "706/udp"], :"kerberos-adm"=>["749/tcp"], :webster=>["765/tcp", "765/udp"], :rsync=>["873/tcp", "873/udp"], :"ftps-data"=>["989/tcp"], :ftps=>["990/tcp"], :telnets=>["992/tcp", "992/udp"], :imaps=>["993/tcp", "993/udp"], :ircs=>["994/tcp", "994/udp"], :pop3s=>["995/tcp", "995/udp"], :socks=>["1080/tcp", "1080/udp"], :proofd=>["1093/tcp", "1093/udp"], :rootd=>["1094/tcp", "1094/udp"], :openvpn=>["1194/tcp", "1194/udp"], :rmiregistry=>["1099/tcp", "1099/udp"], :kazaa=>["1214/tcp", "1214/udp"], :nessus=>["1241/tcp", "1241/udp"], :lotusnote=>["1352/tcp", "1352/udp"], :"ms-sql-s"=>["1433/tcp", "1433/udp"], :"ms-sql-m"=>["1434/tcp", "1434/udp"], :ingreslock=>["1524/tcp", "1524/udp"], :"prospero-np"=>["1525/tcp", "1525/udp"], :datametrics=>["1645/tcp", "1645/udp"], :"sa-msg-port"=>["1646/tcp", "1646/udp"], :kermit=>["1649/tcp", "1649/udp"], :groupwise=>["1677/tcp", "1677/udp"], :l2f=>["1701/tcp", "1701/udp"], :radius=>["1812/tcp", "1812/udp"], :"radius-acct"=>["1813/tcp", "1813/udp"], :msnp=>["1863/tcp", "1863/udp"], :"unix-status"=>["1957/tcp"], :"log-server"=>["1958/tcp"], :remoteping=>["1959/tcp"], :"cisco-sccp"=>["2000/tcp", "2000/udp"], :search=>["2010/tcp"], :"pipe-server"=>["2010/tcp"], :nfs=>["2049/tcp", "2049/udp"], :gnunet=>["2086/tcp", "2086/udp"], :"rtcm-sc104"=>["2101/tcp", "2101/udp"], :gsigatekeeper=>["2119/tcp", "2119/udp"], :gris=>["2135/tcp", "2135/udp"], :cvspserver=>["2401/tcp", "2401/udp"], :venus=>["2430/tcp", "2430/udp"], :"venus-se"=>["2431/tcp", "2431/udp"], :codasrv=>["2432/tcp", "2432/udp"], :"codasrv-se"=>["2433/tcp", "2433/udp"], :mon=>["2583/tcp", "2583/udp"], :dict=>["2628/tcp", "2628/udp"], :"f5-globalsite"=>["2792/tcp", "2792/udp"], :gsiftp=>["2811/tcp", "2811/udp"], :gpsd=>["2947/tcp", "2947/udp"], :"gds-db"=>["3050/tcp", "3050/udp"], :icpv2=>["3130/tcp", "3130/udp"], :"iscsi-target"=>["3260/tcp"], :mysql=>["3306/tcp", "3306/udp"], :nut=>["3493/tcp", "3493/udp"], :distcc=>["3632/tcp", "3632/udp"], :daap=>["3689/tcp", "3689/udp"], :svn=>["3690/tcp", "3690/udp"], :suucp=>["4031/tcp", "4031/udp"], :sysrqd=>["4094/tcp", "4094/udp"], :sieve=>["4190/tcp"], :epmd=>["4369/tcp", "4369/udp"], :remctl=>["4373/tcp", "4373/udp"], :"f5-iquery"=>["4353/tcp", "4353/udp"], :iax=>["4569/tcp", "4569/udp"], :mtn=>["4691/tcp", "4691/udp"], :"radmin-port"=>["4899/tcp", "4899/udp"], :rfe=>["5002/udp", "5002/tcp"], :mmcc=>["5050/tcp", "5050/udp"], :sip=>["5060/tcp", "5060/udp"], :"sip-tls"=>["5061/tcp", "5061/udp"], :aol=>["5190/tcp", "5190/udp"], :"xmpp-client"=>["5222/tcp", "5222/udp"], :"xmpp-server"=>["5269/tcp", "5269/udp"], :cfengine=>["5308/tcp", "5308/udp"], :mdns=>["5353/tcp", "5353/udp"], :postgresql=>["5432/tcp", "5432/udp"], :freeciv=>["5556/tcp", "5556/udp"], :amqp=>["5672/tcp", "5672/udp"], :ggz=>["5688/tcp", "5688/udp"], :x11=>["6000/tcp", "6000/udp"], :"x11-1"=>["6001/tcp", "6001/udp"], :"x11-2"=>["6002/tcp", "6002/udp"], :"x11-3"=>["6003/tcp", "6003/udp"], :"x11-4"=>["6004/tcp", "6004/udp"], :"x11-5"=>["6005/tcp", "6005/udp"], :"x11-6"=>["6006/tcp", "6006/udp"], :"x11-7"=>["6007/tcp", "6007/udp"], :"gnutella-svc"=>["6346/tcp", "6346/udp"], :"gnutella-rtr"=>["6347/tcp", "6347/udp"], :"sge-qmaster"=>["6444/tcp", "6444/udp"], :"sge-execd"=>["6445/tcp", "6445/udp"], :"mysql-proxy"=>["6446/tcp", "6446/udp"], :"afs3-fileserver"=>["7000/tcp", "7000/udp"], :"afs3-callback"=>["7001/tcp", "7001/udp"], :"afs3-prserver"=>["7002/tcp", "7002/udp"], :"afs3-vlserver"=>["7003/tcp", "7003/udp"], :"afs3-kaserver"=>["7004/tcp", "7004/udp"], :"afs3-volser"=>["7005/tcp", "7005/udp"], :"afs3-errors"=>["7006/tcp", "7006/udp"], :"afs3-bos"=>["7007/tcp", "7007/udp"], :"afs3-update"=>["7008/tcp", "7008/udp"], :"afs3-rmtsys"=>["7009/tcp", "7009/udp"], :"font-service"=>["7100/tcp", "7100/udp"], :"http-alt"=>["8080/tcp", "8080/udp"], :"bacula-dir"=>["9101/tcp", "9101/udp"], :"bacula-fd"=>["9102/tcp", "9102/udp"], :"bacula-sd"=>["9103/tcp", "9103/udp"], :xmms2=>["9667/tcp", "9667/udp"], :nbd=>["10809/tcp"], :"zabbix-agent"=>["10050/tcp", "10050/udp"], :"zabbix-trapper"=>["10051/tcp", "10051/udp"], :amanda=>["10080/tcp", "10080/udp"], :hkp=>["11371/tcp", "11371/udp"], :bprd=>["13720/tcp", "13720/udp"], :bpdbm=>["13721/tcp", "13721/udp"], :"bpjava-msvc"=>["13722/tcp", "13722/udp"], :vnetd=>["13724/tcp", "13724/udp"], :bpcd=>["13782/tcp", "13782/udp"], :vopied=>["13783/tcp", "13783/udp"], :dcap=>["22125/tcp"], :gsidcap=>["22128/tcp"], :wnn6=>["22273/tcp", "22273/udp"], :rtmp=>["1/ddp"], :nbp=>["2/ddp"], :zip=>["6/ddp"], :kerberos4=>["750/udp", "750/tcp"], :"kerberos-master"=>["751/udp", "751/tcp"], :"passwd-server"=>["752/udp"], :"krb-prop"=>["754/tcp"], :krbupdate=>["760/tcp"], :console=>["782/tcp"], :swat=>["901/tcp"], :kpop=>["1109/tcp"], :knetd=>["2053/tcp"], :"zephyr-srv"=>["2102/udp"], :"zephyr-clt"=>["2103/udp"], :"zephyr-hm"=>["2104/udp"], :eklogin=>["2105/tcp"], :kx=>["2111/tcp"], :iprop=>["2121/tcp"], :supfilesrv=>["871/tcp"], :supfiledbg=>["1127/tcp"], :linuxconf=>["98/tcp"], :poppassd=>["106/tcp", "106/udp"], :ssmtp=>["465/tcp"], :"moira-db"=>["775/tcp"], :"moira-update"=>["777/tcp"], :"moira-ureg"=>["779/udp"], :spamd=>["783/tcp"], :omirr=>["808/tcp", "808/udp"], :customs=>["1001/tcp", "1001/udp"], :skkserv=>["1178/tcp"], :predict=>["1210/udp"], :rmtcfg=>["1236/tcp"], :wipld=>["1300/tcp"], :xtel=>["1313/tcp"], :xtelw=>["1314/tcp"], :support=>["1529/tcp"], :cfinger=>["2003/tcp"], :frox=>["2121/tcp"], :ninstall=>["2150/tcp", "2150/udp"], :zebrasrv=>["2600/tcp"], :zebra=>["2601/tcp"], :ripd=>["2602/tcp"], :ripngd=>["2603/tcp"], :ospfd=>["2604/tcp"], :bgpd=>["2605/tcp"], :ospf6d=>["2606/tcp"], :ospfapi=>["2607/tcp"], :isisd=>["2608/tcp"], :afbackup=>["2988/tcp", "2988/udp"], :afmbackup=>["2989/tcp", "2989/udp"], :xtell=>["4224/tcp"], :fax=>["4557/tcp"], :hylafax=>["4559/tcp"], :distmp3=>["4600/tcp"], :munin=>["4949/tcp"], :"enbd-cstatd"=>["5051/tcp"], :"enbd-sstatd"=>["5052/tcp"], :pcrd=>["5151/tcp"], :noclog=>["5354/tcp", "5354/udp"], :hostmon=>["5355/tcp", "5355/udp"], :rplay=>["5555/udp"], :nrpe=>["5666/tcp"], :nsca=>["5667/tcp"], :mrtd=>["5674/tcp"], :bgpsim=>["5675/tcp"], :canna=>["5680/tcp"], :"sane-port"=>["6566/tcp"], :ircd=>["6667/tcp"], :"zope-ftp"=>["8021/tcp"], :tproxy=>["8081/tcp"], :omniorb=>["8088/tcp", "8088/udp"], :"clc-build-daemon"=>["8990/tcp"], :xinetd=>["9098/tcp"], :mandelspawn=>["9359/udp"], :git=>["9418/tcp"], :zope=>["9673/tcp"], :webmin=>["10000/tcp"], :kamanda=>["10081/tcp", "10081/udp"], :amandaidx=>["10082/tcp"], :amidxtape=>["10083/tcp"], :smsqp=>["11201/tcp", "11201/udp"], :xpilot=>["15345/tcp", "15345/udp"], :"sgi-cmsd"=>["17001/udp"], :"sgi-crsd"=>["17002/udp"], :"sgi-gcd"=>["17003/udp"], :"sgi-cad"=>["17004/tcp"], :isdnlog=>["20011/tcp", "20011/udp"], :vboxd=>["20012/tcp", "20012/udp"], :binkp=>["24554/tcp"], :asp=>["27374/tcp", "27374/udp"], :csync2=>["30865/tcp"], :dircproxy=>["57000/tcp"], :tfido=>["60177/tcp"], :fido=>["60179/tcp"]}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment