diff --git a/article/updating-the-bios-on-lenovo-laptops-from-linux-using-a-usb-flash-stick/index.html b/article/updating-the-bios-on-lenovo-laptops-from-linux-using-a-usb-flash-stick/index.html index 319da8a..7cc7b9e 100644 --- a/article/updating-the-bios-on-lenovo-laptops-from-linux-using-a-usb-flash-stick/index.html +++ b/article/updating-the-bios-on-lenovo-laptops-from-linux-using-a-usb-flash-stick/index.html @@ -94,4 +94,4 @@ The “sdb” tells you that your USB stick is available on /dev/sdb. Don’t ju
  • Select the USB stick.
  • Make sure your laptop has its power supply plugged in. (It will refuse to update otherwise.)
  • Follow the instructions.
  • - \ No newline at end of file + \ No newline at end of file diff --git a/bacula-cheatsheet/index.html b/bacula-cheatsheet/index.html index cfd68f5..fb1b4e2 100644 --- a/bacula-cheatsheet/index.html +++ b/bacula-cheatsheet/index.html @@ -170,4 +170,4 @@ \ No newline at end of file + \ No newline at end of file diff --git a/debian-packages-are-so-old/index.html b/debian-packages-are-so-old/index.html index 47311c0..b04b1ef 100644 --- a/debian-packages-are-so-old/index.html +++ b/debian-packages-are-so-old/index.html @@ -104,4 +104,4 @@
  • files of third-party software should go to /opt but quite often they are scattered in the wrong places
  • expired APT keys because the developers didn’t care about expiry dates
  • -

    However not all is bad. Some third-party packages are very good. Your mileage may vary though.

    \ No newline at end of file +

    However not all is bad. Some third-party packages are very good. Your mileage may vary though.

    \ No newline at end of file diff --git a/getting-help-on-irc/index.html b/getting-help-on-irc/index.html index 2876ed1..8575406 100644 --- a/getting-help-on-irc/index.html +++ b/getting-help-on-irc/index.html @@ -123,4 +123,4 @@ Has it ever worked? What did you change? (I switched accounts to a new provider.

    See also:

    \ No newline at end of file + \ No newline at end of file diff --git a/index.html b/index.html index d33d2ed..e0b62f3 100644 --- a/index.html +++ b/index.html @@ -144,4 +144,4 @@ want to thank Christoph for his great work and support and hope the guide will n

    Francisco:

    Thank you Christoph. I’ve just setup my mail server and i’m very happy with it. I’ve learned a lot.

    - \ No newline at end of file + \ No newline at end of file diff --git a/ispmail-bookworm/automatic-installation-with-ansible/index.html b/ispmail-bookworm/automatic-installation-with-ansible/index.html index c9baedb..1737a76 100644 --- a/ispmail-bookworm/automatic-installation-with-ansible/index.html +++ b/ispmail-bookworm/automatic-installation-with-ansible/index.html @@ -77,4 +77,4 @@
    ⚠️ This page is part of the ISPmail guide for Debian Bookworm. Please use the newer guide for Debian Trixie.

    Automatic installation with Ansible

    If you want to set up multiple mail servers then automation is your friend. Nowadays Ansible is commonly used for that purpose. If you are dealing with system administration you should have such a tool in your toolbox.

    I have created an Ansible playbook on Github that you can download and use. Using it is pretty simple:

    apt install ansible git
    git clone https://github.com/Signum/ispmail-bookworm-ansible.git
    cd ispmail-bookworm-ansible/ansible
    ansible-playbook ispmail.yml -c local
    -

    Please follow the hints in the README.md within the repository.

    \ No newline at end of file +

    Please follow the hints in the README.md within the repository.

    \ No newline at end of file diff --git a/ispmail-bookworm/faq-frequently-asked-questions/index.html b/ispmail-bookworm/faq-frequently-asked-questions/index.html index e880dd6..d030413 100644 --- a/ispmail-bookworm/faq-frequently-asked-questions/index.html +++ b/ispmail-bookworm/faq-frequently-asked-questions/index.html @@ -121,4 +121,4 @@ Everything here has been generated using open-source software and is not using a interest quickly and regret your offer. The guide is huge. It may not appear like much but once you start typing you realize just how many months of work went into it. Even translating will take 1-2 weeks of your time. And after that someone would have to maintain both the original version and your translation. We tried that a couple of times and it -did not turn out well.

    \ No newline at end of file +did not turn out well.

    \ No newline at end of file diff --git a/ispmail-bookworm/managing-users-aliases-and-domains/index.html b/ispmail-bookworm/managing-users-aliases-and-domains/index.html index 8c5ac52..a421b30 100644 --- a/ispmail-bookworm/managing-users-aliases-and-domains/index.html +++ b/ispmail-bookworm/managing-users-aliases-and-domains/index.html @@ -99,4 +99,4 @@ Demo: http://ima.jungclaussen.com/de

    ISPmail Admin screenshot

    ispmail-userctl

    Section titled “ispmail-userctl”

    Christian G. has created a text-based program to help you manage your mail accounts. You may like it if you just want a little help adding accounts and setting passwords but not provide a full blown web interface.

    -

    You can find his Python script at Github.

    \ No newline at end of file +

    You can find his Python script at Github.

    \ No newline at end of file diff --git a/ispmail-bookworm/monitoring-and-backup/index.html b/ispmail-bookworm/monitoring-and-backup/index.html index 8ef0ff8..01e851c 100644 --- a/ispmail-bookworm/monitoring-and-backup/index.html +++ b/ispmail-bookworm/monitoring-and-backup/index.html @@ -113,4 +113,4 @@

    …daily to get a proper database backup that can be restored later.

    I also like to backup the output of these files because they help me figure out the specific layout of a server:

    fdisk -l
    lshw
    lsb_release -a
    dpkg --get-selections
    -

    If one of your users just accidentally deleted an email and wants it back then simply get the files from /var/vmail/domain/user/Maildir/… from the backup and put them into the original location. Dovecot will handle everything else. You don’t need to restart anything.

    \ No newline at end of file +

    If one of your users just accidentally deleted an email and wants it back then simply get the files from /var/vmail/domain/user/Maildir/… from the backup and put them into the original location. Dovecot will handle everything else. You don’t need to restart anything.

    \ No newline at end of file diff --git a/ispmail-bookworm/success-stories/index.html b/ispmail-bookworm/success-stories/index.html index e3b5568..8a7da95 100644 --- a/ispmail-bookworm/success-stories/index.html +++ b/ispmail-bookworm/success-stories/index.html @@ -74,4 +74,4 @@ })();
    ⚠️ This page is part of the ISPmail guide for Debian Bookworm. Please use the newer guide for Debian Trixie.

    Success stories

    I would appreciate if you leave a comment here telling others if your mail server is running. Perhaps even a word about the purpose of the mail server and the number of users you have. That allows others to see that their time is well-spent and indeed leads to a working mail server. Thanks for your feedback.

    \ No newline at end of file +
    ⚠️ This page is part of the ISPmail guide for Debian Bookworm. Please use the newer guide for Debian Trixie.

    Success stories

    I would appreciate if you leave a comment here telling others if your mail server is running. Perhaps even a word about the purpose of the mail server and the number of users you have. That allows others to see that their time is well-spent and indeed leads to a working mail server. Thanks for your feedback.

    \ No newline at end of file diff --git a/ispmail-trixie/anti-spoofing-dkim-spf/index.html b/ispmail-trixie/anti-spoofing-dkim-spf/index.html index af37398..f6e3b25 100644 --- a/ispmail-trixie/anti-spoofing-dkim-spf/index.html +++ b/ispmail-trixie/anti-spoofing-dkim-spf/index.html @@ -221,13 +221,22 @@ specified otherwise in a map. Always use a specific selector so that you can lat into trouble.

    Using maps is simple. First we need to change the selector_map setting of the dkim_signing module. Create a new rspamd configuration file:

    -
    Run this on your server
    # Tell rspamd to look up selectors in our mapping file
    cat > /etc/rspamd/local.d/dkim_signing.conf << 'EOF'
    path = "/var/lib/rspamd/dkim/$domain.$selector.key";
    selector_map = "/etc/rspamd/dkim_selectors.map";
    EOF
    -
    # Restart rspamd
    systemctl restart rspamd
    +
    Run this on your server
    # Tell rspamd to look up selectors in our mapping file
    cat > /etc/rspamd/local.d/dkim_signing.conf << 'EOF'
    path = "/var/lib/rspamd/dkim/$domain.$selector.key";
    selector_map = "/etc/rspamd/dkim_selectors.map";
    allow_username_mismatch = true;
    EOF
    +
    # Restart rspamd
    systemctl restart rspamd

    The configuration is simple. rspamd will look for the domain-to-key mapping in the dkim_selectors.map file. Create that file for your own domain and selector:

    Run this on your server
    # Add the mapping of domain/selector (use your own domain here)
    echo example.org 2025100901 > /etc/rspamd/dkim_selectors.map

    That’s all. rspamd now knows that whenever it sees an outgoing email from anyone@example.org it will get the DKIM private key from /var/lib/rspamd/dkim/example.org.2025100901.key and use it to sign the email.

    +

    The allow_username_mismatch setting makes rspamd sign an email even if the +authenticated user (during relaying) does not match the actual sender address. +Sounds complicated? Well, the use case is aliases. Imagine that +john@example.com has an alias address of pizza@example.org. If John logs in +as john@example.org but chooses to set his sender address to +pizza@example.org then rspamd will (by default) not add a DKIM signature due +to a mismatch. Setting allow_username_mismatch overrides this behavior and +John’s email will be signed even if he sends on behalf of pizza@example.org. +(Thanks, DBL, for the hint.)

    Send a test email

    Section titled “Send a test email”

    You could either just send an email from your mail client (or Roundcube) through your mail server to another email address. Or you could use swaks. Use your own addresses and password of course:

    diff --git a/ispmail-trixie/overview/index.html b/ispmail-trixie/overview/index.html index 6bbf0d2..8d8c386 100644 --- a/ispmail-trixie/overview/index.html +++ b/ispmail-trixie/overview/index.html @@ -78,4 +78,4 @@ it helps to get a better understanding of the steps involved in receiving email. We will prepare the necessary configuration in the next chapters.

    Use the arrows to navigate between slides:

    -
    • Slide 1
    • Slide 2
    • Slide 3
    • Slide 4
    • Slide 5
    • Slide 6
    • Slide 7
    • Slide 8
    • Slide 9
    • Slide 10
    • Slide 11
    • Slide 12
    • Slide 13
    • Slide 14
    • Slide 15
    • Slide 16
    • Slide 17
    • Slide 18
    • Slide 19
    • Slide 20
    • Slide 21
    • Slide 22
    • Slide 23
    • Slide 24
    \ No newline at end of file +
    • Slide 1
    • Slide 2
    • Slide 3
    • Slide 4
    • Slide 5
    • Slide 6
    • Slide 7
    • Slide 8
    • Slide 9
    • Slide 10
    • Slide 11
    • Slide 12
    • Slide 13
    • Slide 14
    • Slide 15
    • Slide 16
    • Slide 17
    • Slide 18
    • Slide 19
    • Slide 20
    • Slide 21
    • Slide 22
    • Slide 23
    • Slide 24
    \ No newline at end of file diff --git a/linux/renaming-multiple-files/index.html b/linux/renaming-multiple-files/index.html index 4ce3c52..fe4e801 100644 --- a/linux/renaming-multiple-files/index.html +++ b/linux/renaming-multiple-files/index.html @@ -83,4 +83,4 @@
    rename 'tr/a-zA-Z//s' *

    Or you have many JPEG files that look like “img0000154.jpg” but you want the first five zeros removed as you don’t need them:

    rename 's/img00000/img/' *.jpg
    -

    In fact you can use any Perl operator as an argument. The actual documentation for the ‘s’ and ‘y’/’tr’ operators are found in the ‘perlop’ manpage.

    \ No newline at end of file +

    In fact you can use any Perl operator as an argument. The actual documentation for the ‘s’ and ‘y’/’tr’ operators are found in the ‘perlop’ manpage.

    \ No newline at end of file diff --git a/linuxtip/pipes/index.html b/linuxtip/pipes/index.html index 9171b6c..4dbd4f8 100644 --- a/linuxtip/pipes/index.html +++ b/linuxtip/pipes/index.html @@ -145,4 +145,4 @@ Useful at the end of a pipe. Allows you to browse through the output one page at Shows the first ten lines only. “head -50” shows the first 50 lines.
  • tail
    Shows the last ten lines only. “tail -50” shows the last 50 lines. “tail -f” follows a certain file.
  • - \ No newline at end of file + \ No newline at end of file diff --git a/pagefind/fragment/en_1a40311.pf_fragment b/pagefind/fragment/en_1a40311.pf_fragment new file mode 100644 index 0000000..9af35cd Binary files /dev/null and b/pagefind/fragment/en_1a40311.pf_fragment differ diff --git a/pagefind/fragment/en_4337134.pf_fragment b/pagefind/fragment/en_4337134.pf_fragment deleted file mode 100644 index 9cf06b0..0000000 Binary files a/pagefind/fragment/en_4337134.pf_fragment and /dev/null differ diff --git a/pagefind/fragment/en_4aa11a9.pf_fragment b/pagefind/fragment/en_4aa11a9.pf_fragment new file mode 100644 index 0000000..51534f7 Binary files /dev/null and b/pagefind/fragment/en_4aa11a9.pf_fragment differ diff --git a/pagefind/fragment/en_e762d1a.pf_fragment b/pagefind/fragment/en_e762d1a.pf_fragment deleted file mode 100644 index 1703f15..0000000 Binary files a/pagefind/fragment/en_e762d1a.pf_fragment and /dev/null differ diff --git a/pagefind/index/en_144359f.pf_index b/pagefind/index/en_144359f.pf_index new file mode 100644 index 0000000..abf69ac Binary files /dev/null and b/pagefind/index/en_144359f.pf_index differ diff --git a/pagefind/index/en_168c3a6.pf_index b/pagefind/index/en_168c3a6.pf_index deleted file mode 100644 index 3781400..0000000 Binary files a/pagefind/index/en_168c3a6.pf_index and /dev/null differ diff --git a/pagefind/index/en_3afdf7c.pf_index b/pagefind/index/en_3afdf7c.pf_index new file mode 100644 index 0000000..de66d61 Binary files /dev/null and b/pagefind/index/en_3afdf7c.pf_index differ diff --git a/pagefind/index/en_51c1182.pf_index b/pagefind/index/en_51c1182.pf_index new file mode 100644 index 0000000..302d653 Binary files /dev/null and b/pagefind/index/en_51c1182.pf_index differ diff --git a/pagefind/index/en_6a4fcbf.pf_index b/pagefind/index/en_6a4fcbf.pf_index deleted file mode 100644 index 146d82c..0000000 Binary files a/pagefind/index/en_6a4fcbf.pf_index and /dev/null differ diff --git a/pagefind/index/en_879ff52.pf_index b/pagefind/index/en_879ff52.pf_index deleted file mode 100644 index e5e9c2f..0000000 Binary files a/pagefind/index/en_879ff52.pf_index and /dev/null differ diff --git a/pagefind/index/en_9457b0d.pf_index b/pagefind/index/en_9457b0d.pf_index deleted file mode 100644 index a96ee34..0000000 Binary files a/pagefind/index/en_9457b0d.pf_index and /dev/null differ diff --git a/pagefind/index/en_97b3f7a.pf_index b/pagefind/index/en_97b3f7a.pf_index new file mode 100644 index 0000000..7bb2641 Binary files /dev/null and b/pagefind/index/en_97b3f7a.pf_index differ diff --git a/pagefind/index/en_a6b873c.pf_index b/pagefind/index/en_a6b873c.pf_index deleted file mode 100644 index 7fae922..0000000 Binary files a/pagefind/index/en_a6b873c.pf_index and /dev/null differ diff --git a/pagefind/index/en_c2cc5d3.pf_index b/pagefind/index/en_c2cc5d3.pf_index new file mode 100644 index 0000000..0aceaa5 Binary files /dev/null and b/pagefind/index/en_c2cc5d3.pf_index differ diff --git a/pagefind/index/en_c968cda.pf_index b/pagefind/index/en_c968cda.pf_index deleted file mode 100644 index 5940836..0000000 Binary files a/pagefind/index/en_c968cda.pf_index and /dev/null differ diff --git a/pagefind/index/en_e28f6c9.pf_index b/pagefind/index/en_e28f6c9.pf_index new file mode 100644 index 0000000..d978495 Binary files /dev/null and b/pagefind/index/en_e28f6c9.pf_index differ diff --git a/pagefind/index/en_efea613.pf_index b/pagefind/index/en_efea613.pf_index deleted file mode 100644 index 626db96..0000000 Binary files a/pagefind/index/en_efea613.pf_index and /dev/null differ diff --git a/pagefind/index/en_f19060c.pf_index b/pagefind/index/en_f19060c.pf_index new file mode 100644 index 0000000..c1056d3 Binary files /dev/null and b/pagefind/index/en_f19060c.pf_index differ diff --git a/pagefind/pagefind-entry.json b/pagefind/pagefind-entry.json index 9232a17..3367a09 100644 --- a/pagefind/pagefind-entry.json +++ b/pagefind/pagefind-entry.json @@ -1 +1 @@ -{"version":"1.5.2","languages":{"en":{"hash":"en_e29c1b9c78","wasm":"en","page_count":59}},"include_characters":["_","‿","⁀","⁔","︳","︴","﹍","﹎","﹏","_"]} \ No newline at end of file +{"version":"1.5.2","languages":{"en":{"hash":"en_3fb283d698","wasm":"en","page_count":59}},"include_characters":["_","‿","⁀","⁔","︳","︴","﹍","﹎","﹏","_"]} \ No newline at end of file diff --git a/pagefind/pagefind.en_3fb283d698.pf_meta b/pagefind/pagefind.en_3fb283d698.pf_meta new file mode 100644 index 0000000..a425194 Binary files /dev/null and b/pagefind/pagefind.en_3fb283d698.pf_meta differ diff --git a/pagefind/pagefind.en_e29c1b9c78.pf_meta b/pagefind/pagefind.en_e29c1b9c78.pf_meta deleted file mode 100644 index cfde341..0000000 Binary files a/pagefind/pagefind.en_e29c1b9c78.pf_meta and /dev/null differ diff --git a/reference/example/index.html b/reference/example/index.html index c08fc53..57512dc 100644 --- a/reference/example/index.html +++ b/reference/example/index.html @@ -79,4 +79,4 @@ addressing a specific use case, they should give a comprehensive outline of what

    Further reading

    Section titled “Further reading”
    \ No newline at end of file + \ No newline at end of file diff --git a/rsnapshot-and-usb-drives/index.html b/rsnapshot-and-usb-drives/index.html index 3d0899e..b1aaf54 100644 --- a/rsnapshot-and-usb-drives/index.html +++ b/rsnapshot-and-usb-drives/index.html @@ -134,4 +134,4 @@

    Off-site backup

    Section titled “Off-site backup”

    Of course if you lost the one external disk then all your backups would be ruined. So I suggest you get a second external disk and once a month swap them. Depending on your paranoia you can lock them in your bank’s deposit box or give it to your mother-in-law. As opposed to other backup solutions you can just use the second disk without much configuration. Make sure the autofs knows about it and plug it in.

    Thanks

    Section titled “Thanks”
    -

    Kudos to Jochen R. who recommended rsnapshot to me.

    \ No newline at end of file +

    Kudos to Jochen R. who recommended rsnapshot to me.

    \ No newline at end of file diff --git a/squid-acls/index.html b/squid-acls/index.html index ef6e90e..8d03fa2 100644 --- a/squid-acls/index.html +++ b/squid-acls/index.html @@ -118,4 +118,4 @@

    The second http_access line would force the user to re-authenticate time and again if he/she is not member of the PROXY_ALLOWED group. This is perhaps not what you want. You rather wanted to deny access to non-members. So you need to rewrite this http_access line so that an ACL matches that has nothing to do with authentication. This is the correct example:

    acl ldap-auth proxy_auth REQUIRED
    acl ldapgroup-allowed external LDAP_group PROXY_ALLOWED
    acl dummy src 0.0.0.0/0.0.0.0
    http_access deny !ldap-auth
    http_access deny !ldapgroup-allowed dummy
    http_access allow all
    -

    This way the second http_access line still matches. But it’s the dummy ACL which is now last in the line. Since dummy is a static ACL (that always matches) and has nothing to do with authentication you will find that the access is just denied.

    \ No newline at end of file +

    This way the second http_access line still matches. But it’s the dummy ACL which is now last in the line. Since dummy is a static ACL (that always matches) and has nothing to do with authentication you will find that the access is just denied.

    \ No newline at end of file diff --git a/understanding-lvm/index.html b/understanding-lvm/index.html index b44b3e0..6d4af2e 100644 --- a/understanding-lvm/index.html +++ b/understanding-lvm/index.html @@ -161,4 +161,4 @@

    Booting from an LV

    Section titled “Booting from an LV”

    Using LV for all partitions used to be a problem in the past. Debian created an ext2 partition for /boot to make sure the system boots. This has become obsolete for quite a while. You can use LVs everywhere and Debian will happily boot the system.

    RAID

    Section titled “RAID”
    -

    By default LVM uses RAID-0. That is the RAID level that makes you lose everything if a single disk fails. LVM support RAID levels 1 and 5 though. Besides the LVM man pages I mainly found this web page describing it.

    \ No newline at end of file +

    By default LVM uses RAID-0. That is the RAID level that makes you lose everything if a single disk fails. LVM support RAID levels 1 and 5 though. Besides the LVM man pages I mainly found this web page describing it.

    \ No newline at end of file