]> git.proxmox.com Git - pmg-docs.git/blame - pmg-installation.adoc
bump version to 6.2-1
[pmg-docs.git] / pmg-installation.adoc
CommitLineData
03c03402
DM
1Installation
2============
3
4{pmg} is based on Debian and comes with an installation CD-ROM
7cf7c2d3 5which includes a complete Debian ("buster" for version 6.x) system as
03c03402
DM
6well as all necessary {pmg} packages.
7
582a64ad 8The installer asks you a few questions, then partitions the local
03c03402
DM
9disk(s), installs all required packages, and configures the system
10including a basic network setup. You can get a fully functional system
11within a few minutes. This is the preferred and recommended
12installation method.
13
14Alternatively, {pmg} can be installed on top of an existing Debian
15system. This option is only recommended for advanced users since
16it requires more detailed knowledge about {pmg} and Debian.
17
39abbce4 18[[pmg_install_iso]]
03c03402
DM
19Using the {pmg} Installation CD-ROM
20-----------------------------------
21
e9fb7667 22You can download the ISO from https://www.proxmox.com. It includes the
b2d388d4 23following:
03c03402
DM
24
25* Complete operating system (Debian Linux, 64-bit)
26
b2d388d4
DM
27* The {pmg} installer, which partitions the hard drive(s) with ext4,
28 ext3, xfs or ZFS and installs the operating system.
03c03402
DM
29
30* Linux kernel
31
32* Postfix MTA, ClamAV, Spamassassin and the {pmg} toolset
33
582a64ad 34* Web-based management interface for using the toolset
03c03402 35
b2d388d4
DM
36Please burn the downloaded ISO image to a CD or create a
37xref:create_bootable_usb[bootable USB stick].
38
39Then insert the installation CD-ROM on the physical host where you want
582a64ad 40to install {pmg} and boot from that drive. Afterwards you
b2d388d4 41can choose the following menu options:
03c03402
DM
42
43image::images/installer/pmg-grub-menu.png[]
44
45Install {pmg}::
46
47Start normal installation.
48
49Install {pmg} (Debug mode)::
50
51Start installation in debug mode. It opens a shell console at several
52installation steps, so that you can debug things if something goes
582a64ad 53wrong. You can press `CTRL-D` to exit those debug consoles and continue
03c03402
DM
54installation. This option is mostly for developers and not meant for
55general use.
56
57Rescue Boot::
58
59This option allows you to boot an existing installation. It searches
60all attached hard disks and, if it finds an existing installation,
61boots directly into that disk using the existing Linux kernel. This
62can be useful if there are problems with the boot block (grub), or the
63BIOS is unable to read the boot block from the disk.
64
65Test Memory::
66
67Runs `memtest86+`. This is useful to check if your memory is
68functional and error free.
69
dc69da07 70You normally select *Install {pmg}* to start the installation.
03c03402 71
dc69da07 72image::images/installer/pmg-select-target-disk.png[]
03c03402 73
dc69da07
DM
74First step ist to read our EULA (End User License Agreement). After
75that you get prompted to select the target hard disk(s).
03c03402 76
582a64ad
OB
77CAUTION: By default, the whole server is used and all existing data is removed.
78Make sure there is no important data on the server before proceeding with the
79installation.
03c03402 80
03c03402
DM
81The `Options` button lets you select the target file system, which
82defaults to `ext4`. The installer uses LVM if you select `ext3`,
83`ext4` or `xfs` as file system, and offers additional option to
84restrict LVM space (see <<advanced_lvm_options,below>>)
85
86If you have more than one disk, you can also use ZFS as file system.
87ZFS supports several software RAID levels, so this is specially useful
88if you do not have a hardware RAID controller. The `Options` button
89lets you select the ZFS RAID level, and you can choose disks there.
90
dc69da07
DM
91image::images/installer/pmg-select-location.png[]
92
582a64ad
OB
93The next page asks for basic configuration options like your
94location, the timezone and keyboard layout. The location is used to
95select a download server near you to speed up updates. The installer is
96usually able to auto-detect those settings, so you only need to change
97them in rare situations when auto-detection fails, or when you want to
98use a keyboard layout not commonly used in your country.
dc69da07
DM
99
100image::images/installer/pmg-set-password.png[]
101
102You then need to specify an email address and the superuser (root)
103password. The password must have at least 5 characters, but we highly
104recommend to use stronger passwords - here are some guidelines:
105
106- Use a minimum password length of 12 to 14 characters.
107
108- Include lowercase and uppercase alphabetic characters, numbers and symbols.
109
60522152
TL
110- Avoid character repetition, keyboard patterns, dictionary words, letter or
111 number sequences, usernames, relative or pet names, romantic links (current
112 or past) and biographical information (e.g., ID numbers, ancestors' names or
113 dates).
dc69da07 114
aecce55c
TL
115It is sometimes necessary to send notification to the system administrator, for
116example:
dc69da07
DM
117
118- Information about available package updates.
119
120- Error messages from periodic CRON jobs.
121
aecce55c 122All those notification mails will be sent to the specified email address.
dc69da07
DM
123
124image::images/installer/pmg-setup-network.png[]
03c03402 125
aecce55c
TL
126The next step is the network configuration. Please note that you can use either
127IPv4 or IPv6 here, but not both. If you want to configure a dual stack node,
128you can easily do that after installation.
03c03402 129
f6249b79
TL
130image::images/installer/pmg-summary.png[]
131
aecce55c
TL
132When you press `Next`, you will see an overview of your entered configuration.
133Please re-check every setting, you can still use the `Previous` button to go
134back and edit any settings.
f6249b79 135
aecce55c
TL
136After pressing `Install`, the installer starts to format disks, and copies
137packages to the target disk(s).
dc69da07
DM
138
139image::images/installer/pmg-installation.png[]
140
582a64ad
OB
141Copying the packages usually takes a few minutes. Please wait until that is
142finished, and reboot the server.
03c03402 143
f03ead41
SI
144Further configuration is done via the Proxmox web interface.
145
146[thumbnail="pmg-gui-login-window.png"]
03c03402 147
f03ead41
SI
148Just point your browser to the IP address given during installation
149(https://youripaddress:8006).
b5b01ac3 150
b2d388d4
DM
151. Login and upload subscription key.
152+
aecce55c
TL
153NOTE: Default login is "root" and the password is chosen during the
154installation.
03c03402 155
b2d388d4
DM
156. Check the IP configuration and hostname.
157
582a64ad 158. Check and save the timezone.
b2d388d4
DM
159
160. Check your xref:firewall_settings[Firewall settings].
161
162. Configure {pmg} to forward the incoming SMTP traffic to your Mail
163server ('Configuration/Mail Proxy/Default Relay') - 'Default
164Relay' is your e-mail server.
165
166. Configure your e-mail server to send all outgoing messages through
303ee757 167your {pmg} ('Smart Host', port 26 by default).
b2d388d4
DM
168
169For detailed deployment scenarios see chapter
170xref:chapter_deployment[Planning for Deployment].
171
582a64ad
OB
172After the installation you have to route all your incoming and
173outgoing e-mail traffic to the {pmg}. For incoming traffic you
b2d388d4
DM
174have to configure your firewall and/or DNS settings. For outgoing
175traffic you need to change the existing e-mail server configuration.
176
03c03402
DM
177
178[[advanced_lvm_options]]
179Advanced LVM Configuration Options
180~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
181
182The installer creates a Volume Group (VG) called `pmg`, and additional
183Logical Volumes (LVs) called `root` and `swap`. The size of
184those volumes can be controlled with:
185
186`hdsize`::
187
582a64ad
OB
188Defines the total disk size to be used. This way you can save free
189space on the disk for further partitioning (i.e. for an additional PV
190and VG on the same disk that can be used for LVM storage).
03c03402
DM
191
192`swapsize`::
193
194Defines the size of the `swap` volume. The default is the size of the
195installed memory, minimum 4 GB and maximum 8 GB. The resulting value cannot
196be greater than `hdsize/8`.
197
03c03402
DM
198`minfree`::
199
2729e8b8 200Defines the amount of free space left in LVM volume group `pmg`.
03c03402
DM
201With more than 128GB storage available the default is 16GB, else `hdsize/8`
202will be used.
203+
204NOTE: LVM requires free space in the VG for snapshot creation (not
205required for lvmthin snapshots).
206
207
208ZFS Performance Tips
209~~~~~~~~~~~~~~~~~~~~
210
211ZFS uses a lot of memory, so it is best to add additional RAM if you
212want to use ZFS. A good calculation is 4GB plus 1GB RAM for each TB
213RAW disk space.
214
215ZFS also provides the feature to use a fast SSD drive as write cache. The
216write cache is called the ZFS Intent Log (ZIL). You can add that after
582a64ad 217the installation using the following command:
03c03402
DM
218
219 zpool add <pool-name> log </dev/path_to_fast_ssd>
220
221
3372775f
DM
222include::pmg-usbstick.adoc[]
223
224
39abbce4 225[[pmg_install_on_debian]]
03c03402
DM
226Install {pmg} on Debian
227-----------------------
228
229{pmg} ships as a set of Debian packages, so you can install it
230on top of a normal Debian installation. After configuring the
582a64ad 231xref:pmg_package_repositories[Package repositories], you need to run:
03c03402
DM
232
233[source,bash]
234----
3e2d2270
TL
235apt update
236apt install proxmox-mailgateway
03c03402
DM
237----
238
239Installing on top of an existing Debian installation looks easy, but
582a64ad 240it assumes that you have correctly installed the base system, and you
03c03402
DM
241know how you want to configure and use the local storage. Network
242configuration is also completely up to you.
243
244NOTE: In general, this is not trivial, especially when you use LVM or
245ZFS.
e3eaa56a
DM
246
247
39abbce4 248[[pmg_install_on_debian_container]]
c13d3d4f
TL
249Install {pmg} as Linux Container Appliance
250------------------------------------------
251
252The full functionality of {pmg} can also run on top of a Debian-based LXC
253instance. In order to keep the set of installed software, and thus the
582a64ad 254necessary updates minimal, you can use the `proxmox-mailgateway-container`
c13d3d4f
TL
255meta-package. It does not depend on any Linux Kernel, firmware, or components
256used for booting from bare-metal, like grub2.
17a13972
TL
257
258A ready-to-use appliance template is available through the
259https://www.proxmox.com/proxmox-ve[Proxmox VE] appliance manager in the `mail`
260section, so if you already use Proxmox VE you can setup a {pmg} instance in a
261minute.
262
263NOTE: It's recommended to use a static network configuration. If DHCP should be
582a64ad 264used ensure that the container always leases the same IP, for example, by
17a13972 265reserving one with the containers network MAC address.
5991f9eb 266
3e2d2270
TL
267Additionally you can also install this on top of a container based Debian
268installation. After configuring the
269xref:pmg_package_repositories[Package repositories], you need to run:
270
271[source,bash]
272----
273apt update
274apt install proxmox-mailgateway-container
275----
5991f9eb 276
e3eaa56a
DM
277[[pmg_package_repositories]]
278Package Repositories
279--------------------
280
281All {debian} based systems use
e9fb7667 282https://en.wikipedia.org/wiki/Advanced_Packaging_Tool[APT] as package
e3eaa56a
DM
283management tool. The list of repositories is defined in
284`/etc/apt/sources.list` and `.list` files found inside
285`/etc/apt/sources.d/`. Updates can be installed directly using
3e2d2270 286`apt`, or via the GUI.
e3eaa56a
DM
287
288Apt `sources.list` files list one package repository per line, with
289the most preferred source listed first. Empty lines are ignored, and a
290`#` character anywhere on a line marks the remainder of that line as a
291comment. The information available from the configured sources is
3e2d2270 292acquired by `apt update`.
e3eaa56a
DM
293
294.File `/etc/apt/sources.list`
295----
7cf7c2d3 296deb http://ftp.debian.org/debian buster main contrib
e3eaa56a 297
7cf7c2d3 298deb http://ftp.debian.org/debian buster-updates main contrib
aedc8192 299
e3eaa56a 300# security updates
79569792 301deb http://security.debian.org/debian-security buster/updates main contrib
e3eaa56a 302----
79569792 303// FIXME for 7.0: change security update suite to bullseye-security
e3eaa56a
DM
304
305In addition, {pmg} provides three different package repositories.
306
307
308{pmg} Enterprise Repository
309~~~~~~~~~~~~~~~~~~~~~~~~~~~
310
311This is the default, stable and recommended repository, available for
312all {pmg} subscription users. It contains the most stable packages,
313and is suitable for production use. The `pmg-enterprise` repository is
314enabled by default:
315
316.File `/etc/apt/sources.list.d/pmg-enterprise.list`
317----
7cf7c2d3 318deb https://enterprise.proxmox.com/debian/pmg buster pmg-enterprise
e3eaa56a
DM
319----
320
321As soon as updates are available, the `root@pam` user is notified via
322email about the available new packages. On the GUI, the change-log of
323each package can be viewed (if available), showing all details of the
324update. So you will never miss important security fixes.
325
326Please note that and you need a valid subscription key to access this
327repository. We offer different support levels, and you can find further
d2ae160b 328details at {pricing-url}.
e3eaa56a
DM
329
330NOTE: You can disable this repository by commenting out the above line
331using a `#` (at the start of the line). This prevents error messages
332if you do not have a subscription key. Please configure the
333`pmg-no-subscription` repository in that case.
334
335
336{pmg} No-Subscription Repository
337~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
338
339As the name suggests, you do not need a subscription key to access
340this repository. It can be used for testing and non-production
341use. Its not recommended to run on production servers, as these
342packages are not always heavily tested and validated.
343
344We recommend to configure this repository in `/etc/apt/sources.list`.
345
346.File `/etc/apt/sources.list`
347----
7cf7c2d3 348deb http://ftp.debian.org/debian buster main contrib
e3eaa56a
DM
349
350# PMG pmg-no-subscription repository provided by proxmox.com,
351# NOT recommended for production use
7cf7c2d3 352deb http://download.proxmox.com/debian/pmg buster pmg-no-subscription
e3eaa56a
DM
353
354# security updates
79569792 355deb http://security.debian.org/debian-security buster/updates main contrib
e3eaa56a
DM
356----
357
358
359{pmg} Test Repository
360~~~~~~~~~~~~~~~~~~~~~
361
362Finally, there is a repository called `pmgtest`. This one contains the
363latest packages and is heavily used by developers to test new
364features. As usual, you can configure this using
365`/etc/apt/sources.list` by adding the following line:
366
367.sources.list entry for `pmgtest`
368----
7cf7c2d3 369deb http://download.proxmox.com/debian/pmg buster pmgtest
e3eaa56a
DM
370----
371
582a64ad 372WARNING: the `pmgtest` repository should only be used
e3eaa56a
DM
373for testing new features or bug fixes.
374
375
376SecureApt
377~~~~~~~~~
378
379We use GnuPG to sign the `Release` files inside those repositories,
380and APT uses that signatures to verify that all packages are from a
381trusted source.
382
383The key used for verification is already installed if you install from
384our installation CD. If you install by other means, you can manually
385download the key with:
386
7cf7c2d3 387 # wget http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
e3eaa56a
DM
388
389Please verify the checksum afterwards:
390
391----
7cf7c2d3
SI
392# sha512sum /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
393acca6f416917e8e11490a08a1e2842d500b3a5d9f322c6319db0927b2901c3eae23cfb5cd5df6facf2b57399d3cfa52ad7769ebdd75d9b204549ca147da52626 /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
e3eaa56a
DM
394----
395
396or
397
398----
7cf7c2d3
SI
399# md5sum /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
400f3f6c5a3a67baf38ad178e5ff1ee270c /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
e3eaa56a
DM
401----
402
403