Tutorials and Howtos: Difference between revisions
m (→Networking: Alpine Wall User's Guide has moved to git.) |
|||
(35 intermediate revisions by 12 users not shown) | |||
Line 70: | Line 70: | ||
== Desktop == | == Desktop == | ||
* [[Daily driver guide]] | |||
* [[Alpine and UEFI]] | * [[Alpine and UEFI]] | ||
* [[Default applications]] | * [[Default applications]] | ||
* Desktop cloud | * Desktop cloud | ||
** [[Nextcloud]] ''(Self hostable cloud suite - Dropbox Alternative)'' | ** [[Nextcloud]] ''(Self hostable cloud suite - Dropbox Alternative)'' | ||
* [[Desktop environments and Window managers]] (overall information only) | * [[Desktop environments and Window managers]] (overall information only) | ||
* [[Gaming on Alpine]] | |||
* [[Printer Setup]] | * [[Printer Setup]] | ||
* [[Remote Desktop Server]] | * [[Remote Desktop Server]] | ||
Line 83: | Line 83: | ||
** [[PipeWire]] | ** [[PipeWire]] | ||
** [[PulseAudio]] | ** [[PulseAudio]] | ||
== Power management == | |||
* [[Configure action when power-button is pressed]] | |||
* [[Suspend on LID close]] | * [[Suspend on LID close]] | ||
* [[ | * [[Configure Wake-on-LAN]] | ||
== Networking == | == Networking == | ||
Line 97: | Line 101: | ||
** [[Using HSDPA modem]] | ** [[Using HSDPA modem]] | ||
** [[Using serial modem]] | ** [[Using serial modem]] | ||
* [[mDNS]] - Howto implement multicast DNS resolution in Alpine. | |||
* [[Multi ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)'' | * [[Multi ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)'' | ||
* [[PXE boot]] | * [[PXE boot]] | ||
* Wi-Fi | * Wi-Fi | ||
** [[Wi-Fi|Connecting to a wireless access point]] | ** [[Wi-Fi|Connecting to a wireless access point]] | ||
Line 118: | Line 122: | ||
* [[Linux Router with VPN on a Raspberry Pi (IPv6)|Raspberry Pi - Router with VPN (IPv6)]] | * [[Linux Router with VPN on a Raspberry Pi (IPv6)|Raspberry Pi - Router with VPN (IPv6)]] | ||
* [[Classic install or sys mode on Raspberry Pi|Raspberry Pi - Sys mode install]] | * [[Classic install or sys mode on Raspberry Pi|Raspberry Pi - Sys mode install]] | ||
* [[Raspberry Pi LVM on LUKS|Raspberry Pi - Sys mode install - LVM on LUKS]] | |||
* [[RPI Video Receiver|Raspberry Pi - Video Receiver]] ''(network video decoder using Rasperry Pi and omxplayer)'' | * [[RPI Video Receiver|Raspberry Pi - Video Receiver]] ''(network video decoder using Rasperry Pi and omxplayer)'' | ||
* [[Raspberry Pi 3 - Browser Client]] - kiosk or digital sign | * [[Raspberry Pi 3 - Browser Client]] - kiosk or digital sign | ||
Line 124: | Line 129: | ||
* [[Raspberry Pi 4 - Persistent system acting as a NAS and Time Machine]] | * [[Raspberry Pi 4 - Persistent system acting as a NAS and Time Machine]] | ||
* [[How to set up Alpine as a wireless router|Raspberry Pi Zero W - Wireless router]] ''(Setting up a firewalled, Wireless AP with wired network on a Pi Zero W)'' | * [[How to set up Alpine as a wireless router|Raspberry Pi Zero W - Wireless router]] ''(Setting up a firewalled, Wireless AP with wired network on a Pi Zero W)'' | ||
* [[RPI Video Receiver]] | |||
=== IBM Z (IBM z Systems) === | === IBM Z (IBM z Systems) === | ||
Line 143: | Line 149: | ||
* [[Installing Oracle Java|Oracle Java (installation)]] | * [[Installing Oracle Java|Oracle Java (installation)]] | ||
* [[IGMPproxy]] | * [[IGMPproxy]] | ||
* [[Alpine | * [[Alpine Package Keeper|Package Management (apk)]] ''(How to add/remove packages on your Alpine)'' | ||
** [[Comparison with other distros|Package Management - Comparison with other distros]] | ** [[Comparison with other distros|Package Management - Comparison with other distros]] | ||
* [[Running glibc programs]] | * [[Running glibc programs]] | ||
* [[Setting up a new user]] | * [[Setting up a new user]] | ||
* [[Upgrading Alpine]] | * [[Upgrading Alpine]] | ||
== Remote Administration == | == Remote Administration == | ||
Line 206: | Line 213: | ||
=== IRC === | === IRC === | ||
* [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)'' | * [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)'' | ||
Line 213: | Line 219: | ||
* Exim/Dovecot | * Exim/Dovecot | ||
** [[Small-Time Email with Exim and Dovecot]] ''(A simple configuration for your home network.) | ** [[Small-Time Email with Exim and Dovecot]] ''(A simple configuration for your home network.) | ||
** [[Setting up dovecot with imap and | ** [[Setting up dovecot with imap and tls]] | ||
* [[relay email to gmail (msmtp, mailx, sendmail]] | * [[relay email to gmail (msmtp, mailx, sendmail]] | ||
* [[Roundcube]] ''(Webmail system)'' | * [[Roundcube]] ''(Webmail system)'' | ||
* [[Setting up postfix with virtual domains]] | * [[Setting up postfix with virtual domains]] | ||
* Server protection | * Server protection | ||
** [[Setting up clamsmtp]] | ** [[Setting up clamsmtp]] | ||
=== Other Servers === | === Other Servers === | ||
* [[apcupsd]] ''(UPS Monitoring with apcupsd)'' | |||
* [[Chrony and GPSD | Chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]] | * [[Chrony and GPSD | Chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]] | ||
* [[Glpi]] ''(Manage inventory of technical resources)'' | * [[Glpi]] ''(Manage inventory of technical resources)'' | ||
* [[How to setup a Alpine Linux mirror]] | * [[How to setup a Alpine Linux mirror]] | ||
* [[Setting up an NFS server|nfs-server]] | * [[Setting up an NFS server|nfs-server]] | ||
* [[nut-ups|NUT UPS]] ''(UPS Monitoring with Network UPS Tools)'' | |||
* [[Odoo]] | * [[Odoo]] | ||
* [[Configure OpenLDAP | OpenLDAP]] ''(Installing and configuring the Alpine package for OpenLDAP)'' | * [[Configure OpenLDAP | OpenLDAP]] ''(Installing and configuring the Alpine package for OpenLDAP)'' | ||
* [[Setting up a LLDAP server|lldap-server]] ''(Directory Server)'' | |||
* [[Setting up a samba-ad-dc|samba-ad-dc]] ''(Active Directory compatible domain controller)'' | * [[Setting up a samba-ad-dc|samba-ad-dc]] ''(Active Directory compatible domain controller)'' | ||
* [[Setting up a Samba server|samba-server]] ''(standard file sharing)'' | * [[Setting up a Samba server|samba-server]] ''(standard file sharing)'' | ||
* [[Setting up Transmission (bittorrent) with Clutch WebUI]] | * [[Setting up Transmission (bittorrent) with Clutch WebUI]] | ||
=== Software development === | === Software development === | ||
Line 245: | Line 252: | ||
== Storage == | == Storage == | ||
* [[Setting up disks manually|Disk | * [[Setting up disks manually|Manual partitioning]] | ||
* [[Disk Replication with DRBD|DRBD: Disk Replication]] | |||
* [[Filesystems]] | * [[Filesystems]] | ||
** [[Burning ISOs]] | ** [[Burning ISOs]] | ||
Line 264: | Line 272: | ||
** [[Setting up ZFS with native encryption]] | ** [[Setting up ZFS with native encryption]] | ||
** [[ZFS scrub and trim]] | ** [[ZFS scrub and trim]] | ||
* [[CEPH|CEPH]] | |||
== Virtualization == | == Virtualization == | ||
Line 284: | Line 293: | ||
== Miscellaneous == | == Miscellaneous == | ||
* [[TTY_Autologin|TTY Autologin]] | |||
* [[Kexec|Faster rebooting with kexec]] | * [[Kexec|Faster rebooting with kexec]] | ||
* [[Dynamic Multipoint VPN (DMVPN)]] combined with [[Small Office Services]] | * [[Dynamic Multipoint VPN (DMVPN)]] combined with [[Small Office Services]] | ||
* [[DIY Fully working Alpine Linux for Allwinner and Other ARM SOCs]] | * [[DIY Fully working Alpine Linux for Allwinner and Other ARM SOCs]] | ||
* [[Fault Tolerant Routing with Alpine Linux]] | * [[Fault Tolerant Routing with Alpine Linux]] | ||
* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)'' | * [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)'' | ||
* [[Linux iSCSI Target (TCM)]] | * [[Linux iSCSI Target (TCM)]] | ||
* [[ISP Mail Server 3.x HowTo | * [[ISP Mail Server 3.x HowTo]] ''(Postfix+PostfixAdmin+DoveCot+Roundcube+ClamAV+Spamd - A full-service ISP mail server)'' | ||
* [[Grommunio Mail Server]] ''(Mariadb+Postfix+Rspamd+Grommunio - Full-service mail server as MS exchange replacement)'' | |||
* [[Replacing non-Alpine Linux with Alpine remotely]] | * [[Replacing non-Alpine Linux with Alpine remotely]] | ||
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft --> | * [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft --> | ||
* [[Streaming Security Camera Video with VLC]] | * [[Streaming Security Camera Video with VLC]] | ||
* [[Install Alpine on a btrfs filesystem with refind as boot manager]] | |||
* [[Compile software from source|How to Compile a software from source in Alpine Linux]] | |||
== Newbie corner == | == Newbie corner == | ||
Line 311: | Line 323: | ||
* Kubernetes | * Kubernetes | ||
** [[K8s]] Building a K8s Cluster on Alpine Linux | ** [[K8s]] Building a K8s Cluster on Alpine Linux | ||
== Security == | |||
* [[Securing Alpine Linux]] How to Secure Alpine Linux using Security Technical Implementation Guides (STIGs) |
Latest revision as of 00:45, 1 December 2024
Todo: This material has been re-organized..., but grouping should be checked: Howtos are smaller articles and tutorials are more detailed document
Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.
The tutorials are hands-on and the reader is expected to try and achieve the goals described in each step, possibly with the help of a good example. The output in one step is the starting point for the following step.
Howtos are smaller articles explaining how to perform a particular task with Alpine Linux, that expects a minimal knowledge from reader to perform actions.
IMPORTANT: contributions on those pages must be complete articles as well as requesting topics to be covered, don't override already made contributions. If you want to request a topic, please add your request in this page's Discussion.
Howtos
Applications
Miscellaneous
- Ansible (Configuration management)
Monitoring
- Awstats (Free log file analyzer)
- Cacti: traffic analysis and monitoring network (Front-end for rrdtool networking monitor)
- Cvechecker (Compare installed packages for Common Vulnerabilities Exposure)
- Linfo
- Obtaining user information via SNMP (Using squark-auth-snmp as a Squid authentication helper)
- PhpSysInfo (A simple application that displays information about the host it's running on)
- Matomo (A real time web analytics software program)
- Setting up A Network Monitoring and Inventory System (Nagios + OpenAudit and related components)
- Setting up NRPE daemon (Performs remote Nagios checks)
- Ntop (NetFlow collection and analysis using a remote fprobe instance; for alpine 3.10-3.12 only)
- Setting up lm_sensors
- SqStat (Script to look at active squid users connections)
- Traffic monitoring
- Zabbix - the professional complete manager (Monitor and track the status of network services and hardware)
- ZoneMinder video camera security and surveillance
Networking
- Alpine Wall (a new firewall management framework)
- Freeradius Active Directory Integration
- GNUnet
- OpenVPN server (Allowing single users or devices to remotely connect to your network)
- OpenVSwitch
- Using Alpine on Windows domain with IPSEC isolation
- Wireguard
Telephony
- FreePBX on Alpine Linux
- Setting up Zaptel/Asterisk on Alpine
- Kamailio (SIP Server, formerly OpenSER)
Backup and data migration
- Alpine local backup (lbu) (Permanently store your modifications in case your box needs reboot)
- Migrating data
- Rsnapshot - setting up periodic backups
Desktop
- Daily driver guide
- Alpine and UEFI
- Default applications
- Desktop cloud
- Nextcloud (Self hostable cloud suite - Dropbox Alternative)
- Desktop environments and Window managers (overall information only)
- Gaming on Alpine
- Printer Setup
- Remote Desktop Server
- Sound Systems
Power management
Networking
- Bluetooth - Instructions for installing and configuring Bluetooth
- Bonding - Bond (or aggregate) multiple ethernet interfaces
- Bridge - Configuring a network bridge
- Configure Networking
- How to configure static routes
- Modem
- mDNS - Howto implement multicast DNS resolution in Alpine.
- Multi ISP (Dual-ISP setup with load-balancing and automatic failover)
- PXE boot
- Wi-Fi
- Connecting to a wireless access point
- How to setup a wireless access point (Setting up Secure Wireless AP w/ WPA encryption with bridge to wired network)
- VLAN
Other Architectures
ARM
Raspberry Pi
- Raspberry Pi - Bluetooth Speaker
- Raspberry Pi - Installation
- Raspberry Pi - Router with VPN
- Raspberry Pi - Router with VPN (IPv6)
- Raspberry Pi - Sys mode install
- Raspberry Pi - Sys mode install - LVM on LUKS
- Raspberry Pi - Video Receiver (network video decoder using Rasperry Pi and omxplayer)
- Raspberry Pi 3 - Browser Client - kiosk or digital sign
- Raspberry Pi 3 - Configuring it as wireless access point -AP Mode
- Raspberry Pi 3 - Setting Up Bluetooth
- Raspberry Pi 4 - Persistent system acting as a NAS and Time Machine
- Raspberry Pi Zero W - Wireless router (Setting up a firewalled, Wireless AP with wired network on a Pi Zero W)
- RPI Video Receiver
IBM Z (IBM z Systems)
PowerPC
Post-Install
- CPU frequency scaling
- Enable Community repository (Providing additional packages)
- Enable Serial Console on Boot
- Init System (OpenRC) (Configure a service to automatically boot at next reboot)
- Oracle Java (installation)
- IGMPproxy
- Package Management (apk) (How to add/remove packages on your Alpine)
- Running glibc programs
- Setting up a new user
- Upgrading Alpine
Remote Administration
- ACF
- ACF - changing passwords
- Generating SSL certs with ACF
- ACF - setup (Configures ACF (webconfiguration/webmin) so you can manage your box through https)
- Setting up a SSH server (Using ssh is a good way to administer your box remotely)
- OpenSSH 2FA (A simple two factor setup for OpenSSH)
- OpenVCP (VServer Control Panel)
- PhpMyAdmin (Web-based administration tool for MYSQL)
- PhpPgAdmin (Web-based administration tool for PostgreSQL)
- Webmin (A web-based interface for Linux system)
Server
- Hosting services on Alpine (Hosting mail, webservices and other services)
- Hosting Web/Email services on Alpine
DNS
- DNSCrypt-Proxy Encrypt and authenticate DNS calls from your system
- Setting up nsd DNS server
- Setting up unbound DNS server
- TinyDNS Format
HTTP
- Apache
- Darkhttpd
- Lighttpd
- Nginx
- Squid Proxy
- Obtaining user information via SNMP (Using squark-auth-snmp as a Squid authentication helper)
- Setting up Explicit Squid Proxy
- Setting up Transparent Squid Proxy (Covers Squid proxy and URL Filtering system)
- SqStat (Script to look at active squid users connections)
- Tomcat
Hostable Content
- DokuWiki
- Drupal (Content Management System (CMS) written in PHP)
- Kopano (Microsoft Outlook compatible Groupware)
- Mahara (E-portfolio and social networking system)
- MediaWiki (Free web-based wiki software application)
- Pastebin (Pastebin software application)
- WordPress (Web software to create website or blog)
IRC
- NgIRCd (Server for Internet Relay Chat/IRC)
- Exim/Dovecot
- Small-Time Email with Exim and Dovecot (A simple configuration for your home network.)
- Setting up dovecot with imap and tls
- relay email to gmail (msmtp, mailx, sendmail
- Roundcube (Webmail system)
- Setting up postfix with virtual domains
- Server protection
Other Servers
- apcupsd (UPS Monitoring with apcupsd)
- Chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source
- Glpi (Manage inventory of technical resources)
- How to setup a Alpine Linux mirror
- nfs-server
- NUT UPS (UPS Monitoring with Network UPS Tools)
- Odoo
- OpenLDAP (Installing and configuring the Alpine package for OpenLDAP)
- lldap-server (Directory Server)
- samba-ad-dc (Active Directory compatible domain controller)
- samba-server (standard file sharing)
- Setting up Transmission (bittorrent) with Clutch WebUI
Software development
- Cgit
- OsTicket (Ticket system)
- Patchwork (Patch review management system)
- Redmine (Project management system)
- Request Tracker (Ticket system)
- Trac (Enhanced wiki and issue tracking system for software development projects)
Storage
Virtualization
- Docker
- Installing Alpine in a virtual machine
- KVM (Setting up Alpine as a KVM hypervisor)
- LXC (Setting up a Linux container in Alpine Linux)
- QEMU
- Xen
- Xen Dom0 (Setting up Alpine as a dom0 for Xen hypervisor)
- Xen Dom0 on USB or SD
- Xen DomU (paravirtualized)
- Xen LiveCD
- Xen PCI Passthrough
Tutorials
Miscellaneous
- TTY Autologin
- Faster rebooting with kexec
- Dynamic Multipoint VPN (DMVPN) combined with Small Office Services
- DIY Fully working Alpine Linux for Allwinner and Other ARM SOCs
- Fault Tolerant Routing with Alpine Linux
- High Availability High Performance Web Cache (uCarp + HAProxy for High Availability Services such as Squid web proxy)
- Linux iSCSI Target (TCM)
- ISP Mail Server 3.x HowTo (Postfix+PostfixAdmin+DoveCot+Roundcube+ClamAV+Spamd - A full-service ISP mail server)
- Grommunio Mail Server (Mariadb+Postfix+Rspamd+Grommunio - Full-service mail server as MS exchange replacement)
- Replacing non-Alpine Linux with Alpine remotely
- Setting up A Network Monitoring and Inventory System (Nagios + OpenAudit and related components)
- Streaming Security Camera Video with VLC
- Install Alpine on a btrfs filesystem with refind as boot manager
- How to Compile a software from source in Alpine Linux
Newbie corner
- How to get regular stuff working some notes on need-to-know topics
Servers
- Alpine production deploy
- Alpine production monitoring
- Kubernetes
- K8s Building a K8s Cluster on Alpine Linux
Security
- Securing Alpine Linux How to Secure Alpine Linux using Security Technical Implementation Guides (STIGs)