diff -ru a/munin-2.0.19.ebuild b/munin-2.0.19.ebuild --- a/munin-2.0.19.ebuild 2013-12-23 05:31:24.000000000 -0800 +++ b/munin-2.0.19.ebuild 2013-12-28 20:39:05.742199596 -0800 @@ -339,15 +339,27 @@ einfo "Press enter to set up the SSH keys used for SSH transport" read - # generate one rsa (for legacy) and one ecdsa (for new systems) + # generate one rsa (for legacy systems) ssh-keygen -t rsa -f /var/lib/munin/.ssh/id_rsa -N '' -C "created by portage for ${CATEGORY}/${PN}" || die - ssh-keygen -t ecdsa -f /var/lib/munin/.ssh/id_ecdsa -N '' -C "created by portage for ${CATEGORY}/${PN}" || die + chmod 0600 /var/lib/munin/.ssh/id_rsa || die + + # generate one ecdsa (for new systems) + ssh-keygen -t ecdsa -f /var/lib/munin/.ssh/id_ecdsa -N '' -C "created by portage for ${CATEGORY}/${PN}" + if [[ "$?" -eq 0 ]]; then + chmod 0600 /var/lib/munin/.ssh/id_ecdsa || die + else + ewarn "Failed to generate an ECDSA key" + ewarn "Maybe you have net-misc/openssh[bindist]?" + sed -i -e 's|\(.*/id_ecdsa\)|#\1|' /var/lib/munin/.ssh/config + fi + chown -R munin:munin /var/lib/munin/.ssh || die - chmod 0600 /var/lib/munin/.ssh/id_{rsa,ecdsa} || die - einfo "Your public keys are available in " - einfo " /var/lib/munin/.ssh/id_rsa.pub" - einfo " /var/lib/munin/.ssh/id_ecdsa.pub" + einfo "Your public key(s) are available in " + local PUBLIC_KEY + for PUBLIC_KEY in /var/lib/munin/.ssh/id_*.pub; do + einfo " ${PUBLIC_KEY}" + done einfo "and follows for convenience" echo cat /var/lib/munin/.ssh/id_*.pub