qubes-doc/user/managing-os/debian/debian.md

136 lines
4.1 KiB
Markdown
Raw Normal View History

2014-07-28 17:14:28 -04:00
---
2015-04-10 16:17:45 -04:00
layout: doc
title: Debian Template
permalink: /doc/templates/debian/
redirect_from:
2016-05-21 10:49:01 -04:00
- /doc/debian/
- /en/doc/templates/debian/
- /doc/Templates/Debian/
- /wiki/Templates/Debian/
2014-07-28 17:14:28 -04:00
---
2015-04-22 23:26:43 -04:00
Debian template(s)
2014-07-28 17:14:28 -04:00
===============
If you would like to use Debian Linux distribution in your qubes, you can install one of the available Debian templates.
2015-04-23 10:14:55 -04:00
Updates for these templates are provided by ITL and are signed by this key:
2015-04-23 10:14:55 -04:00
pub 4096R/47FD92FA 2014-07-27
Key fingerprint = 2D43 E932 54EE EA7C B31B 6A77 5E58 18AB 47FD 92FA
uid Qubes OS Debian Packages Signing Key
The key is already installed when you install (signed) template package.
You can also obtain the key from [git repository][git] which is also integrity-protected using signed git tags.
2014-07-28 17:14:28 -04:00
2018-10-22 09:09:09 -04:00
Installing
----------
2014-07-28 17:14:28 -04:00
Templates can be installed with the following command:
2014-07-28 17:14:28 -04:00
Debian 7 (wheezy) - obsolete/archive:
2015-04-22 23:26:43 -04:00
2015-04-23 10:14:55 -04:00
[user@dom0 ~]$ sudo qubes-dom0-update qubes-template-debian-7
2015-04-22 23:26:43 -04:00
Debian 8 (jessie) - oldoldstable:
2015-04-22 23:26:43 -04:00
2015-04-23 10:14:55 -04:00
[user@dom0 ~]$ sudo qubes-dom0-update qubes-template-debian-8
Debian 9 (stretch) - oldstable:
2014-07-28 17:14:28 -04:00
[user@dom0 ~]$ sudo qubes-dom0-update qubes-template-debian-9
Debian-10 templates are currently available from the testing repository.
Debian 10 (buster) - minimal:
[user@dom0 ~]$ sudo qubes-dom0-update --enablerepo=qubes-templates-itl-testing qubes-template-debian-10-minimal
Because this template was built *before* buster became stable, it cannot be updated without [manually accepting the change in status][5149].
Also, to install additional Qubes packages you will have to enable the qubes-testing repository.
Debian 10 (buster) - stable:
[user@dom0 ~]$ sudo qubes-dom0-update --enablerepo=qubes-templates-itl-testing qubes-template-debian-10
Because this template was built *before* buster became stable, it cannot be updated without [manually accepting the change in status][5149].
Upgrading
---------
To upgrade an existing Debian TemplateVM, please consult [this guide][Upgrading]
2014-07-28 17:14:28 -04:00
Known issues
------------
### Starting services
The Debian way (generally) is to start daemons if they are installed.
This means that if you install (say) ssh-server in a template, *all* the qubes that use that template will run a ssh server when they start. (They will, naturally, all have the same server key.) This may not be what you want.
So be very careful when installing software in Templates - if the daemon spawns outbound connections then there is a serious security risk.
In general, a reasonable approach would be, (using ssh as example):
- Install the ssh service.
- systemctl stop ssh
- systemctl disable ssh
- systemctl mask ssh
- Close down template
Now the ssh service will **NOT** start in qubes based on this template.
Where you **DO** want the service to run, put this in /rw/config/rc.local:
systemctl unmask ssh
systemctl start ssh
Don't forget to make the file executable.
### Unattended Upgrades
Some users have noticed that on upgrading to Stretch, the unattended-upgrade package is installed.
This package is pulled in as part of a Recommend chain, and can be purged.
The lesson is that you should carefully look at what is being installed to your system, particularly if you run dist-upgrade.
### Package installation errors in Qubes 4.0
By default, templates in 4.0 only have a loopback interface.
Some packages will throw an error on installation in this situation.
For example, Samba expects to be configured using a network interface post installation.
One solution is to add a dummy interface to allow the package to install correctly:
ip link add d0 type dummy
ip addr add 192.168.0.1/24 dev d0
ip link set d0 up
Contributing
----------------
If you want to help in improving the template, feel free to [contribute]
2016-09-14 19:22:29 -04:00
2016-09-14 19:22:29 -04:00
More information
----------------
* [Debian wiki](https://wiki.debian.org/Qubes)
[Upgrading]: /doc/template/debian/upgrade
[5149]: https://github.com/QubesOS/qubes-issues/issues/5149
[git]: https://github.com/QubesOS/qubes-core-agent-linux/blob/master/misc/qubes-archive-keyring.gpg
[builder]: /doc/qubes-builder/
[contribute]: /doc/contributing/