<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.wplug.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ldaberko</id>
	<title>WPLUG - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.wplug.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ldaberko"/>
	<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php/Special:Contributions/Ldaberko"/>
	<updated>2026-10-31T12:26:32Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5061</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5061"/>
		<updated>2024-10-30T04:15:00Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
= Migration Progress =&lt;br /&gt;
== Servers ==&lt;br /&gt;
There are 3 current servers:  &lt;br /&gt;
* Linode - The legacy server running CentOS7.  Mediawiki was migrated off due to bot hits driving up the load.  This was also done to reduce surface attack area of an EOL CentOS.&lt;br /&gt;
* Penguin - The current production server running *only* mediawiki.&lt;br /&gt;
* Nestling - The current development/staging server.  &lt;br /&gt;
=== Penguin ===&lt;br /&gt;
This server is now serving Mediawiki.  It&#039;s a virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
=== Nestling ===&lt;br /&gt;
Currently doing dev on it.  It&#039;ll become the staging server once migration is complete.&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: &amp;lt;s&amp;gt;Nanode 1GB&amp;lt;/s&amp;gt; Linode 2 GB due to high memory use of Mailman 3.&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature or we find something better, we&#039;ll migrate again which should be much simpler.&lt;br /&gt;
&lt;br /&gt;
== Ansible ==&lt;br /&gt;
From https://www.ansible.com&lt;br /&gt;
&amp;lt;q&amp;gt;Ansible is an open source IT automation engine that automates provisioning, configuration management, application deployment, orchestration, and many other IT processes.&amp;lt;/q&amp;gt;&lt;br /&gt;
I am using ansible to automate most of the setup and migration.  Right now it does 99% of the work with some web interface clicking required here and there.&lt;br /&gt;
&lt;br /&gt;
== Setup Steps ==&lt;br /&gt;
=== Completed ===&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
* Backup mediawiki data and config for future rebuild and migration&lt;br /&gt;
* Restore mediawiki data and config&lt;br /&gt;
* Add ufw management and set up firewall&lt;br /&gt;
* fail2ban complete and added to penguin also&lt;br /&gt;
* mail aliases&lt;br /&gt;
* established staging.wplug.org subdomain&lt;br /&gt;
* mailman3 installation finally successful&lt;br /&gt;
* limit outbound mail in postfix so we don&#039;t spam people while testing&lt;br /&gt;
* ran out of memory on the 1GB plan so bumped it up to 2GB RAM&lt;br /&gt;
* added 512MB /swapfile on top of the 512MB swap partition&lt;br /&gt;
* mailman 2.1 to 3 migration &lt;br /&gt;
* mailman 3 backup and restore&lt;br /&gt;
* move django /admin page to a different url&lt;br /&gt;
* apache http and www redirect to staging.wplug.org&lt;br /&gt;
&lt;br /&gt;
=== Working On ===&lt;br /&gt;
* Cleaning up Legacy data&lt;br /&gt;
&lt;br /&gt;
=== To Do ===&lt;br /&gt;
* Create a new index page to point to wiki and mailman&lt;br /&gt;
* Migrate users and data&lt;br /&gt;
* Backup and restore using ansible&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Proper Planning =&lt;br /&gt;
This section is the preplanning done prior to the migration&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5060</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5060"/>
		<updated>2024-10-25T03:50:03Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* Server Setup Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: &amp;lt;s&amp;gt;Nanode 1GB&amp;lt;/s&amp;gt; Linode 2 GB due to high memory use of Mailman 3.&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
* Backup mediawiki data and config for future rebuild and migration&lt;br /&gt;
* Restore mediawiki data and config&lt;br /&gt;
* Add ufw management and set up firewall&lt;br /&gt;
* fail2ban complete and added to penguin also&lt;br /&gt;
* mail aliases&lt;br /&gt;
* established staging.wplug.org subdomain&lt;br /&gt;
* mailman3 installation finally successful&lt;br /&gt;
* limit outbound mail in postfix so we don&#039;t spam people while testing&lt;br /&gt;
* ran out of memory on the 1GB plan so bumped it up to 2GB RAM&lt;br /&gt;
* added 512MB /swapfile&lt;br /&gt;
* mailman 2.1 to 3 migration &lt;br /&gt;
&lt;br /&gt;
Currently working on:&lt;br /&gt;
* mailman3 - figuring out settings and backup/restore&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* Reconfigure apache to have wiki as front page.&lt;br /&gt;
* Rename django admin page, set up a fail2ban for that.&lt;br /&gt;
* Figure out where hyperkitty mailman3 index files are being saved to. /opt/mailman/mm?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5059</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5059"/>
		<updated>2024-10-17T04:50:55Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* Migration Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: &amp;lt;s&amp;gt;Nanode 1GB&amp;lt;/s&amp;gt; Linode 2 GB due to high memory use of Mailman 3.&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
* Backup mediawiki data and config for future rebuild and migration&lt;br /&gt;
* Restore mediawiki data and config&lt;br /&gt;
* Add ufw management and set up firewall&lt;br /&gt;
* fail2ban complete and added to penguin also&lt;br /&gt;
* mail aliases&lt;br /&gt;
* established staging.wplug.org subdomain&lt;br /&gt;
* mailman3 installation finally successful&lt;br /&gt;
* limit outbound mail in postfix so we don&#039;t spam people while testing&lt;br /&gt;
* ran out of memory on the 1GB plan so bumped it up to 2GB RAM&lt;br /&gt;
&lt;br /&gt;
Currently working on:&lt;br /&gt;
* mailman3 - final configuration&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* migrate mailman 2.1 to 3&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5058</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5058"/>
		<updated>2024-10-16T15:31:02Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* Server Setup Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
* Backup mediawiki data and config for future rebuild and migration&lt;br /&gt;
* Restore mediawiki data and config&lt;br /&gt;
* Add ufw management and set up firewall&lt;br /&gt;
* fail2ban complete and added to penguin also&lt;br /&gt;
* mail aliases&lt;br /&gt;
* established staging.wplug.org subdomain&lt;br /&gt;
* mailman3 installation finally successful&lt;br /&gt;
&lt;br /&gt;
Currently working on:&lt;br /&gt;
* mailman3 - final configuration&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* migrate mailman 2.1 to 3&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5057</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5057"/>
		<updated>2024-10-14T05:30:27Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* Server Setup Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
* Backup mediawiki data and config for future rebuild and migration&lt;br /&gt;
* Restore mediawiki data and config&lt;br /&gt;
* Add ufw management and set up firewall&lt;br /&gt;
* fail2ban complete and added to penguin also&lt;br /&gt;
&lt;br /&gt;
Currently working on:&lt;br /&gt;
* mailman3 - difficulties abound&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* Mail - aliases structure, spam filtering&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5056</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5056"/>
		<updated>2024-10-14T04:21:17Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* Server Setup Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
* Backup mediawiki data and config for future rebuild and migration&lt;br /&gt;
* Restore mediawiki data and config&lt;br /&gt;
* Add ufw management and set up firewall&lt;br /&gt;
&lt;br /&gt;
Currently working on:&lt;br /&gt;
* fail2ban - in place, working on restoring old rulesets&lt;br /&gt;
* mailman3 - difficulties abound&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* Mail - aliases structure, spam filtering&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5055</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5055"/>
		<updated>2024-10-02T01:48:40Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* Server Setup Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
* Backup mediawiki data and config for future rebuild and migration&lt;br /&gt;
* Restore mediawiki data and config&lt;br /&gt;
* Add ufw management and set up firewall&lt;br /&gt;
&lt;br /&gt;
Currently working on:&lt;br /&gt;
* mailman3&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* fail2ban&lt;br /&gt;
* Mail - aliases structure, spam filtering&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5054</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5054"/>
		<updated>2024-09-30T21:20:21Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* Server Setup Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
* Backup mediawiki data and config for future rebuild and migration&lt;br /&gt;
* Restore mediawiki data and config&lt;br /&gt;
&lt;br /&gt;
Currently testing:&lt;br /&gt;
* mailman&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* Mail - aliases structure, spam filtering&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5053</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5053"/>
		<updated>2024-09-30T21:02:27Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* Server Setup Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
* Backup mediawiki data and config for future rebuild and migration&lt;br /&gt;
* Restore mediawiki data and config&lt;br /&gt;
&lt;br /&gt;
Currently testing:&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* Mail - aliases structure, spam filtering&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5052</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5052"/>
		<updated>2024-09-26T21:18:58Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* Server Setup Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
&lt;br /&gt;
Currently testing:&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* Backup data and config for future rebuild and migration&lt;br /&gt;
* Mail - aliases structure, spam filtering&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5051</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=5051"/>
		<updated>2024-09-26T20:48:54Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
New staging server:&lt;br /&gt;
* Name: nestling&lt;br /&gt;
* OS: Debian 11&lt;br /&gt;
* Region: Chicago&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 172.234.26.233&lt;br /&gt;
* IPv6: 2600:3c06::f03c:95ff:fed6:b745&lt;br /&gt;
This server was selected to run this OS version and location because it was the only image and location that featured cloud-init which was necessary for automated builds.  Once Debian 12 gets that feature, we&#039;ll migrate over.&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
I&#039;m setting up ansible to do the server build and configuration entirely.  Nesting is the staging server.&lt;br /&gt;
Here are the steps completed:&lt;br /&gt;
* Create or rebuild new linode, with cloud-init that adds admin users and ssh public keys.&lt;br /&gt;
* Set hostname, /etc/hosts, disable root ssh login&lt;br /&gt;
* Add board group and create board home directory&lt;br /&gt;
* apt update&lt;br /&gt;
* Install apache, mariadb, php&lt;br /&gt;
* Install and run certbot&lt;br /&gt;
* Install mediawiki and restore images and sql data&lt;br /&gt;
&lt;br /&gt;
Currently testing:&lt;br /&gt;
* Mail - mua, postfix, opendkim, SPF, DKIM, DMARC&lt;br /&gt;
&lt;br /&gt;
Next steps:&lt;br /&gt;
* Mail - aliases structure, spam filtering&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=4928</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=4928"/>
		<updated>2024-06-27T16:22:57Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
== Migration Notes ==&lt;br /&gt;
New virtual server:&lt;br /&gt;
* Name: penguin&lt;br /&gt;
* OS: Debian 12&lt;br /&gt;
* Region: Atlanta&lt;br /&gt;
* Plan: Nanode 1GB&lt;br /&gt;
* IPv4: 139.144.29.132&lt;br /&gt;
* IPv6: 2600:3c02::f03c:94ff:fe10:c62f&lt;br /&gt;
&lt;br /&gt;
A and AAAA records added to wplug.org domain setup&lt;br /&gt;
&lt;br /&gt;
=== Server Setup Steps ===&lt;br /&gt;
# apt update&lt;br /&gt;
# adduser jdoe&lt;br /&gt;
# copy ssh key&lt;br /&gt;
# usermod -aG sudo jdoe&lt;br /&gt;
&lt;br /&gt;
Need to set hostname&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=4927</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=4927"/>
		<updated>2024-02-27T04:57:37Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home    - monkeybot.log is 7.3GB&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=4926</id>
		<title>2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=2024_Server_Migration&amp;diff=4926"/>
		<updated>2024-02-27T04:41:19Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is to collect information about our current configuration and options for switching to a new server going forward, since CentOS 7 goes end-of-life at 2024-06-30.  Please feel free to edit to add missing information or correct errors.&lt;br /&gt;
&lt;br /&gt;
== Server selection ==&lt;br /&gt;
&lt;br /&gt;
[https://www.linode.com/pricing?r=30335eb136f2c5f7fa3429dce9f15bea836f81d3 Linode] has been acquired by Akamai and raised their prices.  Could potentially downgrade from the $12/mo (2GB RAM) plan to the $5 (1GB RAM &amp;quot;Nanode&amp;quot;) plan depending on distro system requirements.  Could also consider dropping paid backup service or using something different.&lt;br /&gt;
&lt;br /&gt;
Other VPS providers can be considered, not sure if they are any cheaper/better.&lt;br /&gt;
&lt;br /&gt;
=== Cloud Plans ===&lt;br /&gt;
Looking at 1GB and 2GB plans.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Vendor !! Plan !! $/Mo !! Memory !! CPU !! Storage !! Transfer&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Nanode 1GB || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Linode || Linode 2GB || $12 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 1GiB || $6 || 1GiB || 1 || 25GiB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| DigitalOcean || 2GiB || $12 || 2GiB || 1 || 50GiB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $4.99 || 1GB || 1 || 30GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Hostwinds || || $9.90 || 2GB || 1 || 50GB || 2TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $5 || 1GB || 1 || 25GB || 1TB&lt;br /&gt;
|-&lt;br /&gt;
| Vultr || || $10 || 2GB || 1 || 55GB || 2TB&lt;br /&gt;
|}&lt;br /&gt;
All services seem to be similar, with price differences only by a dollar or two.&lt;br /&gt;
&lt;br /&gt;
== OS selection ==&lt;br /&gt;
&lt;br /&gt;
CentOS Linux is dead.  CentOS Stream is only viable as long as Red Hat/IBM has a business case for it.  Can consider other options like pure Debian or Ubuntu LTS.&lt;br /&gt;
&lt;br /&gt;
=== Service enumeration ===&lt;br /&gt;
&lt;br /&gt;
Services that are currently running on the WPLUG Linode server.  These should include things that are user-facing only, not infrastructure.&lt;br /&gt;
&lt;br /&gt;
* E-mail (Postfix)&lt;br /&gt;
* Mailing lists (Mailman)&lt;br /&gt;
* Wiki (MediaWiki)&lt;br /&gt;
* Monkeybot IRC bot (infobot)&lt;br /&gt;
** While one of the oldest WPLUG services, since [[IRC|freenode]] is essentially dead, there may not be good reason to keep it alive.&lt;br /&gt;
* Ticketing system (Trac)&lt;br /&gt;
** This is [https://trac.wplug.org/wplug-internet/report/6 virtually unused], likely not worth deploying.&lt;br /&gt;
&lt;br /&gt;
Infrastructure software which supports the services above.&lt;br /&gt;
&lt;br /&gt;
* Web server (Apache) - it would be possible to use Nginx instead, but I (Vance) am not familiar with setting it up&lt;br /&gt;
* PHP (Apache mod_php) for MediaWiki - could be replaced with PHP-FPM&lt;br /&gt;
* Let&#039;s Encrypt for TLS certificate (certbot)&lt;br /&gt;
* Python for Mailman, Let&#039;s Encrypt, and Trac&lt;br /&gt;
* Perl for Monkeybot&lt;br /&gt;
* MariaDB for MediaWiki - may be [http://www.mediawiki.org/wiki/Compatibility#Database possible] to use SQLite or PostgreSQL instead&lt;br /&gt;
* Greylisting daemon (Postgrey)&lt;br /&gt;
* Fail2ban&lt;br /&gt;
&lt;br /&gt;
=== Support lifetime ===&lt;br /&gt;
&lt;br /&gt;
* CentOS Stream 9 - [https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates 2027-05-31] (limited to RHEL Full Support lifetime)&lt;br /&gt;
* Rocky Linux 9 - [https://wiki.rockylinux.org/rocky/version/ 2032-05-31]&lt;br /&gt;
* AlmaLinux 9 - [https://wiki.almalinux.org/release-notes/#almalinux-9 2032-05-31]&lt;br /&gt;
* Debian 12 &amp;quot;bookworm&amp;quot; - [https://www.debian.org/News/2023/20230610.en.html 2028-06-10 or later]&lt;br /&gt;
* Ubuntu 22.04 LTS - [http://en.wikipedia.org/wiki/Ubuntu_(operating_system)#Releases 2027-04]&lt;br /&gt;
&lt;br /&gt;
=== System requirements ===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CPU&lt;br /&gt;
!RAM&lt;br /&gt;
!Disk&lt;br /&gt;
|-&lt;br /&gt;
|[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#system-requirements-reference_installing-RHEL CentOS] / Rocky / Alma 9&lt;br /&gt;
|amd64, arm64, ppc64el&lt;br /&gt;
|1.5 GB&lt;br /&gt;
|10 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://www.debian.org/releases/bookworm/amd64/ch03s04.en.html Debian 12]&lt;br /&gt;
|amd64, arm64, i386 (686 or higher), ppc64el, mipsel, mips64el&lt;br /&gt;
|512 MB&lt;br /&gt;
|4 GB&lt;br /&gt;
|-&lt;br /&gt;
|[https://ubuntu.com/server/docs/installation Ubuntu 22.04]&lt;br /&gt;
|1 GHz amd64, arm64, ppc64el&lt;br /&gt;
|1 GB&lt;br /&gt;
|2.5 GB&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Currently we are using 22 GB of disk, as follows:&lt;br /&gt;
 594M    /boot&lt;br /&gt;
 35M     /etc&lt;br /&gt;
 11G     /home&lt;br /&gt;
 25M     /opt&lt;br /&gt;
 2.2G    /root&lt;br /&gt;
 4.0K    /srv&lt;br /&gt;
 36K     /tmp&lt;br /&gt;
 2.1G    /usr&lt;br /&gt;
 6.3G    /var&lt;br /&gt;
&lt;br /&gt;
=== Software availability ===&lt;br /&gt;
&lt;br /&gt;
This table is to track, for the different distros under consideration, whether the software we need is available within its repositories.  We want to minimize the number of applications which have to be maintained manually.&lt;br /&gt;
&lt;br /&gt;
Key:&lt;br /&gt;
* B: in distro&#039;s base repository&lt;br /&gt;
* A: in an additional repository provided by the distro&lt;br /&gt;
* T: in a third-party repository&lt;br /&gt;
* ~: not available in any known repository&lt;br /&gt;
* ?: availability unknown&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!&lt;br /&gt;
!CentOS / Rocky / Alma 9&lt;br /&gt;
!Debian 12&lt;br /&gt;
!Ubuntu 22.04&lt;br /&gt;
|-&lt;br /&gt;
|postfix&lt;br /&gt;
|B 3.5.9&lt;br /&gt;
|B 3.7.5&lt;br /&gt;
|B 3.6.4&lt;br /&gt;
|-&lt;br /&gt;
|mailman&lt;br /&gt;
|~&lt;br /&gt;
|B 3.3.8&lt;br /&gt;
|A (3) 20200530&lt;br /&gt;
|-&lt;br /&gt;
|postgrey&lt;br /&gt;
|T 1.37&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.37&lt;br /&gt;
|A 1.36&lt;br /&gt;
|-&lt;br /&gt;
|mediawiki&lt;br /&gt;
|~&lt;br /&gt;
|B 1.39&lt;br /&gt;
|A 1.35&lt;br /&gt;
|-&lt;br /&gt;
|infobot&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|~&lt;br /&gt;
|-&lt;br /&gt;
|trac&lt;br /&gt;
|~&lt;br /&gt;
|[https://packages.debian.org/bookworm-backports/trac A 1.6] (backports)&lt;br /&gt;
|A 1.5.3&lt;br /&gt;
|-&lt;br /&gt;
|apache&lt;br /&gt;
|B 2.4.53&lt;br /&gt;
|B 2.4.57&lt;br /&gt;
|B 2.4.52&lt;br /&gt;
|-&lt;br /&gt;
|nginx&lt;br /&gt;
|B 1.20.1 / 1.22.1&lt;br /&gt;
|B 1.22.1&lt;br /&gt;
|B 1.18.0&lt;br /&gt;
|-&lt;br /&gt;
|php&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|B 8.1&lt;br /&gt;
|-&lt;br /&gt;
|php-fpm&lt;br /&gt;
|B 8.0 / 8.1&lt;br /&gt;
|B 8.2&lt;br /&gt;
|A 8.1&lt;br /&gt;
|-&lt;br /&gt;
|python2&lt;br /&gt;
|~&lt;br /&gt;
|[https://wiki.debian.org/Python/FAQ#Python_2_support ~]&lt;br /&gt;
|A 2.7.18&lt;br /&gt;
|-&lt;br /&gt;
|python3&lt;br /&gt;
|B 3.9.16&lt;br /&gt;
|B 3.11.2&lt;br /&gt;
|B 3.10.4&lt;br /&gt;
|-&lt;br /&gt;
|perl5&lt;br /&gt;
|B 5.32&lt;br /&gt;
|B 5.36&lt;br /&gt;
|B 5.34&lt;br /&gt;
|-&lt;br /&gt;
|mariadb&lt;br /&gt;
|B 10.5&lt;br /&gt;
|B 10.11&lt;br /&gt;
|A 10.6&lt;br /&gt;
|-&lt;br /&gt;
|mysql&lt;br /&gt;
|B 8.0&lt;br /&gt;
|~&lt;br /&gt;
|B 8.0&lt;br /&gt;
|-&lt;br /&gt;
|sqlite&lt;br /&gt;
|B 3.34&lt;br /&gt;
|B 3.40&lt;br /&gt;
|B 3.37&lt;br /&gt;
|-&lt;br /&gt;
|fail2ban&lt;br /&gt;
|T 1.0.2&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 1.0.2&lt;br /&gt;
|A 0.11.2&lt;br /&gt;
|-&lt;br /&gt;
|certbot&lt;br /&gt;
|T 2.6.0&amp;lt;sup&amp;gt;EPEL&amp;lt;/sup&amp;gt;&lt;br /&gt;
|B 2.1.0&lt;br /&gt;
|A 1.21.0&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Third-party repositories:&lt;br /&gt;
* EPEL - [https://docs.fedoraproject.org/en-US/epel/ Extra Packages for Enterprise Linux]&lt;br /&gt;
&lt;br /&gt;
== Nice-to-haves ==&lt;br /&gt;
&lt;br /&gt;
* We have an archive of static web pages from the pre-2007 server &amp;quot;penguin&amp;quot; - it would be nice to make this history available somehow.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Migration]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=Talk:2024_Server_Migration&amp;diff=4925</id>
		<title>Talk:2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=Talk:2024_Server_Migration&amp;diff=4925"/>
		<updated>2024-02-27T03:57:22Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== From Larry ==&lt;br /&gt;
&lt;br /&gt;
For service enumeration, I am in favor of removing monkeybot and trac.&lt;br /&gt;
&lt;br /&gt;
I&#039;m not familiar with nginx so we should stick with Apache.&lt;br /&gt;
&lt;br /&gt;
I&#039;d prefer to use SQLite if possible.  One less service to manage.&lt;br /&gt;
&lt;br /&gt;
For the support lifetime comparisons, the Rocky and Alma distributions do require point release upgrades to stay current until End of Support, just like Ubuntu.  Debian looks like they have new versions on a 2 year cycle with support going one year past the new release so the longest we can use one version of Debian is 3 years on average.&lt;br /&gt;
&lt;br /&gt;
I would prefer Debian even with the short lifecycle.  However I&#039;m not very familiar with any linux as server because I&#039;m used to FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Cloud service:  I&#039;m familiar with Linode and DigitalOcean.  Their 2GB $12 offerings are identical.  The lower level nanode and droplets differ by $1.  I think any of those can handle the workload.  It might fall on storage or traffic dictating our choice.&lt;br /&gt;
&lt;br /&gt;
One thing I&#039;d like to try is to configure the server using Ansible.  I think it&#039;s a good way to  semi-automate future testing and installations.&lt;br /&gt;
&lt;br /&gt;
--[[User:Ldaberko|Ldaberko]] ([[User talk:Ldaberko|talk]]) 23:23, 15 February 2024 (UTC)&lt;br /&gt;
&lt;br /&gt;
I&#039;m on board with your comments about monkeybot, trac, and Apache.&lt;br /&gt;
&lt;br /&gt;
I have no objection in principle to [https://www.mediawiki.org/wiki/Manual:SQLite using SQLite] - I think the limitations listed on that page are not a concern for our use.  The instructions linked from that page about converting from MySQL/MariaDB to SQLite are from 2013; not sure if they are still valid or how much trouble it may be to convert.  The other potential negative is the extra effort if someone in the future decides to switch back.  But I think it&#039;s worth testing out.&lt;br /&gt;
&lt;br /&gt;
About distros, presumably point release upgrades on Rocky and Alma happen with a simple yum or dnf update like they do with &amp;quot;classic&amp;quot; CentOS.  My thinking with Debian would be rather than sticking on the stable version for an extended time, to upgrade to the next version when it&#039;s available.  I am given to understand that such upgrades tend to be smooth on Debian these days, but don&#039;t have direct experience.&lt;br /&gt;
&lt;br /&gt;
FreeBSD would be fine with me, but I don&#039;t have experience using it and would need to learn some of the system admin stuff.  Presumably the programs involved would be configured the same way, so I could at least be useful there from the start.  In a quick search I couldn&#039;t find any current info if it&#039;s possible to run FreeBSD on Linode or DigitalOcean, can look deeper into this if desired.  (The docs about [https://www.digitalocean.com/community/tutorial-series/getting-started-with-freebsd running FreeBSD on DigitalOcean] are from 2015, don&#039;t know if it&#039;s currently supported.  Also, DigitalOcean basically [https://docs.digitalocean.com/support/why-is-smtp-blocked/ forbids running a mail server], which seems to me a no-go.)&lt;br /&gt;
&lt;br /&gt;
I added [[2024_Server_Migration#System_requirements|info about disk usage]] (currently 22 GB for everything, including the OS) to the base page to allow comparison to [https://www.linode.com/pricing/#compute-shared Linode], [https://www.digitalocean.com/pricing/droplets DigitalOcean], or other plans.  Currently web logs are kept for about a month, could maybe reduce usage by tweaking, also we&#039;ve made no attempt to clean up other stuff.&lt;br /&gt;
&lt;br /&gt;
Likewise I don&#039;t have a problem with Ansible or similar, but don&#039;t have any experience with it.  I would agree that our current way of doing things is very much &amp;quot;pet,&amp;quot; not &amp;quot;cattle.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
--[[User:Vance|Vance]] ([[User talk:Vance|talk]]) 04:26, 24 February 2024 (UTC)&lt;br /&gt;
&lt;br /&gt;
I was not suggesting to install FreeBSD.  I just said I had experience.  After all it&#039;s a &#039;&#039;&#039;LINUX&#039;&#039;&#039; user group :-)&lt;br /&gt;
&lt;br /&gt;
I&#039;ll see if I can get an ansible setup for a demo.&lt;br /&gt;
&lt;br /&gt;
--[[User:Ldaberko|Ldaberko]] ([[User talk:Ldaberko|talk]]) 03:57, 27 February 2024 (UTC)&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=Talk:2024_Server_Migration&amp;diff=4921</id>
		<title>Talk:2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=Talk:2024_Server_Migration&amp;diff=4921"/>
		<updated>2024-02-16T00:02:43Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: /* From Larry */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== From Larry ==&lt;br /&gt;
&lt;br /&gt;
For service enumeration, I am in favor of removing monkeybot and trac.&lt;br /&gt;
&lt;br /&gt;
I&#039;m not familiar with nginx so we should stick with Apache.&lt;br /&gt;
&lt;br /&gt;
I&#039;d prefer to use SQLite if possible.  One less service to manage.&lt;br /&gt;
&lt;br /&gt;
For the support lifetime comparisons, the Rocky and Alma distributions do require point release upgrades to stay current until End of Support, just like Ubuntu.  Debian looks like they have new versions on a 2 year cycle with support going one year past the new release so the longest we can use one version of Debian is 3 years on average.&lt;br /&gt;
&lt;br /&gt;
I would prefer Debian even with the short lifecycle.  However I&#039;m not very familiar with any linux as server because I&#039;m used to FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Cloud service:  I&#039;m familiar with Linode and DigitalOcean.  Their 2GB $12 offerings are identical.  The lower level nanode and droplets differ by $1.  I think any of those can handle the workload.  It might fall on storage or traffic dictating our choice.&lt;br /&gt;
&lt;br /&gt;
One thing I&#039;d like to try is to configure the server using Ansible.  I think it&#039;s a good way to  semi-automate future testing and installations.&lt;br /&gt;
&lt;br /&gt;
--[[User:Ldaberko|Ldaberko]] ([[User talk:Ldaberko|talk]]) 23:23, 15 February 2024 (UTC)&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=Talk:2024_Server_Migration&amp;diff=4920</id>
		<title>Talk:2024 Server Migration</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=Talk:2024_Server_Migration&amp;diff=4920"/>
		<updated>2024-02-15T23:23:15Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: Created page with &amp;quot; == From Larry ==  For service enumeration, I am in favor of removing monkeybot and trac.  I&amp;#039;m not familiar with nginx so we should stick with Apache.  I&amp;#039;d prefer to use SQLit...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== From Larry ==&lt;br /&gt;
&lt;br /&gt;
For service enumeration, I am in favor of removing monkeybot and trac.&lt;br /&gt;
&lt;br /&gt;
I&#039;m not familiar with nginx so we should stick with Apache.&lt;br /&gt;
&lt;br /&gt;
I&#039;d prefer to use SQLite if possible.  One less service to manage.&lt;br /&gt;
&lt;br /&gt;
For the support lifetime comparisons, the Rocky and Alma distributions do require point release upgrades to stay current until End of Support, just like Ubuntu.  Debian looks like they have new versions on a 2 year cycle with support going one year past the new release so the longest we can use one version of Debian is 3 years on average.&lt;br /&gt;
&lt;br /&gt;
I would prefer Debian even with the short lifecycle.  However I&#039;m not very familiar with any linux as server because I&#039;m used to FreeBSD.&lt;br /&gt;
&lt;br /&gt;
--[[User:Ldaberko|Ldaberko]] ([[User talk:Ldaberko|talk]]) 23:23, 15 February 2024 (UTC)&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
	<entry>
		<id>https://www.wplug.org/index.php?title=Meeting-20070210&amp;diff=648</id>
		<title>Meeting-20070210</title>
		<link rel="alternate" type="text/html" href="https://www.wplug.org/index.php?title=Meeting-20070210&amp;diff=648"/>
		<updated>2007-02-10T01:28:26Z</updated>

		<summary type="html">&lt;p&gt;Ldaberko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The first [[InstallFest]] of 2007 will be held on February 10th, 2007 from 10am to 3pm at Carnegie Mellon University, 3305 Newell-Simon Hall.  An installfest is an interactive event where you bring your computer to either show off some neat aspect of Linux, or seek help about getting Linux running on your hardware.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The [http://pghcodingdojo.org/ Pittsburgh Coding Dojo] will be holding an event called [http://pghcodingdojo.org/index.php/Iteration_0 Iteration Zero] concurrent with the installfest.  Follow the link for details.&lt;br /&gt;
&lt;br /&gt;
= I&#039;d like help with =&lt;br /&gt;
If you&#039;re going to be installing a particular piece of software and would like help with it, put your name on this list.&lt;br /&gt;
* &#039;&#039;&#039;Scott Kiesling:&#039;&#039;&#039;I&#039;ve got this old small notebook I got on ebay for $150 I&#039;ve been playing around with. I&#039;d like to put a minimal distro on it and see what I can get it to do. It has a cdrom but does not boot from it.  It is a [http://linux.toshiba-dme.co.jp/linux/eng/spec.php3?model=PAP302U-T Toshiba Portege 3025CT] (mine has 96 Mb). [http://www.gweep.net/~sfoskett/linux/p3010-3.html Here] are the specs, more or less. It has an external CD player but I have not been able to get it to boot off of it. I had been incrementally getting to the point where I can boot, but hadn&#039;t quite made it. I&#039;ve tried a few small distros like [http://www.puppylinux.org Puppy] and [http://www.featherweightlinux.org Featherweight], as well as some disk-based distros (there&#039;s an external floppy too), but now that I have just Googled [http://www.gweep.net/~sfoskett/linux/p3010.html this site] I may go with that. I will try to bring the relevant files on a CD. My last attempt had been variations on [http://marc.herbert.free.fr/linux/win2linstall.html this method], which got started booting (using Puppy if I remember correctly) but then got stuck. I hope I can get some help, if not, it will be fun to try. I&#039;ll probably have to leave around noon, or bring my kids in.&lt;br /&gt;
** I&#039;m not sure how much it may help, another option might be to set up the disk as a boot disk on another computer.  I&#039;ve got a little USB enclosure for 2.5 inch hard disks that works quite well that we could use to initialize the disk and pre-load it with installer software. -- [[User:Pwagstro | Patrick Wagstrom]]&lt;br /&gt;
***I&#039;d be happy to try it if you think it will work! -- [[User:Sfaius | Scott Kiesling]]&lt;br /&gt;
&lt;br /&gt;
*  There&#039;s a project that maybe a couple people could help.  It involves reworking an event signup website using some html, mysql, php (or perl or other language that can speak to mysql or postgres), and emailing out a copy of the information once someone signs up.  I&#039;m not stellar at website stuff, but if anyone is willing to help with it, it would be appreciated, and could help make someone very happy who is helping out wplug in a behind the scenes way.  [[User:Tdr | Ted]]&lt;br /&gt;
&lt;br /&gt;
*  I&#039;m going to come in and check this installfest out.  I&#039;ve got a Dell Dimension 2400 that I can&#039;t install Ubuntu on.  It freezes up on the first boot after installation. - [[User:Ldaberko | Larry Daberko]]&lt;br /&gt;
&lt;br /&gt;
= I can help with =&lt;br /&gt;
If you can help out with a particular piece of software that you think other people may be installing, put your name on this list.&lt;br /&gt;
* MythTV - [[User:Pwagstro | Patrick Wagstrom]]&lt;br /&gt;
* FreeBSD/PHP/Apache/PostgreSQL - [[User:Wmoran | Bill Moran]]&lt;br /&gt;
* Mandriva - [[User:Vance | Vance Kochenderfer]]&lt;br /&gt;
&lt;br /&gt;
* [[Installfest Services]] - [[User:Bseklecki | Brian A. Seklecki]]&lt;br /&gt;
&lt;br /&gt;
= I&#039;m going to show off =&lt;br /&gt;
If you&#039;ve got a particular setup, peripheral, or application that you&#039;re planning on showing off at the installfest, put your name on this list.&lt;br /&gt;
* Nintendo Wii Remotes controlling Linux applications - [[User:Pwagstro | Patrick Wagstrom]]&lt;br /&gt;
&lt;br /&gt;
= Meeting Staff =&lt;br /&gt;
If you would like to volunteer to assist with this meeting, please add your name to one or more of the categories below.&lt;br /&gt;
* Host: [[User:Wmoran | Bill Moran]]&lt;br /&gt;
* Co-Host: [[User:Tdr | Ted Rodgers]]&lt;br /&gt;
* Pizza: [[User:Pwagstro | Patrick Wagstrom]]&lt;br /&gt;
* Donuts: [[User:Curlynoodle | David Kraus]]&lt;br /&gt;
* Setup: [[User:Curlynoodle | David Kraus]], [[User:Pwagstro | Patrick Wagstrom]],[[User:Tdr | Ted Rodgers]]&lt;br /&gt;
* Clean Up: [[User:Curlynoodle | David Kraus]], [[User: Vance | Vance Kochenderfer]]&lt;/div&gt;</summary>
		<author><name>Ldaberko</name></author>
	</entry>
</feed>