HOWTO: Automatically import your public SSH keys into LXD Instances
Dustin Kirkland
on 25 February 2017
Tags: cloud-init , containers , LXD
Just another reason why LXD is so awesome…
You can easily configure your own cloud-init configuration into your LXD instance profile.
In my case, I want cloud-init to automatically ssh-import-id kirkland, to fetch my keys from Launchpad. Alternatively, I could use gh:dustinkirkland to fetch my keys from Github.
Here’s how!
First, edit your default LXD profile (or any other, for that matter):
$ lxc profile edit default
Then, add the config snippet, like this:
config:
user.vendor-data: |
#cloud-config
users:
- name: root
ssh-import-id: gh:dustinkirkland
shell: /bin/bash
description: Default LXD profile
devices:
eth0:
name: eth0
nictype: bridged
parent: lxdbr0
type: nic
name: default
Save and quit in your interactive editor, and then launch a new instance:
$ lxc launch ubuntu:x
Creating amazed-manatee
Starting amazed-manatee
Find your instance’s IP address:
$ lxc list
+----------------+---------+----------------------+----------------------------------------------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+----------------+---------+----------------------+----------------------------------------------+------------+-----------+
| amazed-manatee | RUNNING | 10.163.22.135 (eth0) | fdce:be5e:b787:f7d2:216:3eff:fe1c:773 (eth0) | PERSISTENT | 0 |
+----------------+---------+----------------------+----------------------------------------------+------------+-----------+
And now SSH in!
$ ssh ubuntu@10.163.22.135
$ ssh -6 ubuntu@fdce:be5e:b787:f7d2:216:3eff:fe1c:773
Enjoy!
:-Dustin
Fast, dense, and secure container and VM management at any scale
LXD brings flexible resource limits, advanced snapshot and networking support, and better security — all making for easier, leaner and more robust containerised solutions and VMs.
Newsletter signup
Related posts
Canonical partners with Snyk for scanning chiseled Ubuntu containers
Canonical, the publisher of Ubuntu, is pleased to announce a new partnership with developer-focused cybersecurity company Snyk. Snyk Container, Snyk’s...
Introducing MicroCloud Cluster Manager
Canonical introduces the beta release of MicroCloud Cluster Manager, a new way to discover, organize, and operate your MicroCloud environments from a single,...
Native integration available between Canonical LXD and HPE Alletra MP B10000
Native integration available between Canonical LXD and HPE Alletra MP B10000. The integration combines efficient open source virtualization with high...