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