When working behind corporate firewalls or restricted networks, you'll often encounter blocked ports - especially port 11371 used by GPG keyservers. The standard command fails:
gpg --keyserver keyserver.ubuntu.com --recv-keys 0A5174AF
This typically results in connection timeout errors or "no route to host" messages.
Many keyservers now support HTTP/HTTPS on standard ports (80/443) which are rarely blocked:
gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0A5174AF
gpg --keyserver hkps://keyserver.ubuntu.com:443 --recv-keys 0A5174AF
When all ports are blocked, manually download the key:
# Using curl through corporate proxy if needed
curl -x http://proxy.company.com:8080 -L "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x0A5174AF" > pubkey.asc
# Then import
gpg --import pubkey.asc
For teams, store keys in version control:
# Clone repository containing keys
git clone https://github.com/yourorg/gpg-keys.git
# Import all keys
gpg --import gpg-keys/*.asc
If you have Tor installed:
gpg --keyserver hkp://jirk5u4osbsr34t5.onion --recv-keys 0A5174AF
Always verify fingerprints after import:
gpg --fingerprint 0A5174AF
Cross-check the output with official project documentation or trusted sources.
When working behind corporate firewalls or restricted networks, you'll often encounter this error:
$ gpg --keyserver keyserver.ubuntu.com --recv-keys 0A5174AF
gpg: keyserver receive failed: Connection timed out
This happens because most keyservers use port 11371 (HKP protocol), which is frequently blocked by network administrators.
1. Using Port 80/443 via HTTP Keyserver
Some keyservers support HTTP(S) on standard web ports:
gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0A5174AF
gpg --keyserver hkps://keyserver.ubuntu.com:443 --recv-keys 0A5174AF
2. Manual Key Import via Web Interface
Many keyservers provide web interfaces:
- Visit https://keyserver.ubuntu.com
- Search for your key ID (0A5174AF in our example)
- Download the ASCII armored version
- Import locally:
gpg --import downloaded_key.asc
3. Using Alternative Protocols
# LDAP protocol (port 389 usually open):
gpg --keyserver ldap://keyserver.pgp.com --recv-keys 0A5174AF
Proxy Configuration
If you have HTTP proxy access:
gpg --keyserver-options http-proxy=http://proxy.example.com:3128 \
--keyserver hkp://keyserver.ubuntu.com --recv-keys 0A5174AF
Key Mirroring via Tor
For extreme firewall restrictions:
sudo apt install torsocks
torsocks gpg --keyserver hkp://jirk5u4osbsr34t5.onion --recv-keys 0A5174AF
Always verify the fingerprint after importing:
gpg --fingerprint 0A5174AF
For repeated use, configure your ~/.gnupg/gpg.conf:
keyserver hkps://keyserver.ubuntu.com:443
keyserver-options auto-key-retrieve
keyserver-options http-proxy=http://proxy.example.com:3128