diff --git a/.ssh/config.d/20_gitlab_fdo b/.ssh/config.d/20_gitlab_fdo
index 834ef6d9c675827a3e652780f36c813e9b0e5590..3236dd0e4a8b9bd8cd787b77e5fdb37f5eb28ed9 100644
--- a/.ssh/config.d/20_gitlab_fdo
+++ b/.ssh/config.d/20_gitlab_fdo
@@ -4,5 +4,5 @@
 
 Host gitlab.freedesktop.org
 User git
-IdentityFile ~/.ssh/gitlab_fdo
+IdentityFile ~/.ssh/gitlab_fdo_ed25519
 
diff --git a/.ssh/config.d/20_gitlab_toptal b/.ssh/config.d/20_gitlab_toptal
index 76e919b32745c52dd616bdf1579cab7ad2d649d5..5baf9be1127d9338e965978bf8b791860aef4eed 100644
--- a/.ssh/config.d/20_gitlab_toptal
+++ b/.ssh/config.d/20_gitlab_toptal
@@ -4,5 +4,5 @@
 
 Host git.toptal.com
 User git
-IdentityFile ~/.ssh/gitlab_toptal
+IdentityFile ~/.ssh/gitlab_toptal_ed25519
 
diff --git a/Makefile b/Makefile
index dd643af03cc5985f344e2f7746f7f74b7eaa71d7..70209c28c78fd1a983dacffa215975be554e1261 100644
--- a/Makefile
+++ b/Makefile
@@ -6,8 +6,8 @@ mkd = mkdir -p $$(dirname $@)
 
 .PHONY: all
 all: .ssh/gitlab_ed25519
-all: .ssh/gitlab_fdo
-all: .ssh/gitlab_toptal
+all: .ssh/gitlab_fdo_ed25519
+all: .ssh/gitlab_toptal_ed25519
 all: .ssh/github_ed25519
 all: .ssh/shore_ecdsa
 all: .ssh/shore_ed25519
@@ -15,14 +15,15 @@ all: .ssh/shore_rsa
 all: .ssh/smile_ed25519
 all: .ssh/smile_rsa
 
-.ssh/%: Documents/Database.kdbx
+.ssh/%_rsa: Documents/Database.kdbx
 	$(mkd)
 	ph show --field Notes "SSH/$$(basename '$@')" > '$@'
 	chmod 600 '$@'
 
-# Disable the implicit rule above so that other files under .ssh/ will be
-# created using an explicit rule.
-.ssh/%: Documents/Database.kdbx
+.ssh/%_ed25519: Documents/Database.kdbx
+	$(mkd)
+	ph show --field Notes "SSH/$$(basename '$@')" > '$@'
+	chmod 600 '$@'
 
 all: .config/pythonrc.py
 .config/pythonrc.py: