Tutorials and Howtos: Difference between revisions

From Alpine Linux
 
(158 intermediate revisions by 40 users not shown)
Line 1: Line 1:
{{Todo|This material needs to be re-organized .. as '''Howtos are smaller articles''' and '''tutorials are more detailed document''' both need to be reordered as independent sections }}
[[Image:package_edutainment.svg|right|link=]]
[[Image:package_edutainment.svg|right|link=]]
{{TOC left}}
{{TOC left}}
'''Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.'''
'''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. Howto's have been organized in the below page based on the topics.


'''Howtos are smaller articles''' explaining how to perform a particular task with Alpine Linux, that expects a minimal knowledge from reader to perform actions.
'''The [[#Tutorials|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.


'''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 [[Talk:Tutorials_and_Howtos|Discussion]].
{{Note|
* Contributors are requested to refer to [[Help:Editing]] first and make use of resources like [[How to write a HOWTO]].
* Contributions must be complete articles.
* Don't override already made contributions, unless there is a mistake.  
* If you want to request a topic, please add your request in this page's [[Talk:Tutorials_and_Howtos|Discussion]].}}


== Desktop ==


{{Clear}}
* {{:Daily driver guide}}
=== Power management ===


== New users and Newbies ==
* [[Configure action when power-button is pressed]]
* [[Suspend on LID close]]
* [[Configure Wake-on-LAN]]


* [[Newbie Alpine Ecosystem]] (for overall information in funny sections)
=== Networking ===


==== Installation: Use cases ====
* [[Bluetooth]] - Instructions for installing and configuring Bluetooth
* [[Bonding]] - Bond (or aggregate) multiple ethernet interfaces
* [[Bridge]] - Configuring a network bridge
** [[Bridge wlan0 to eth0]]
* [[Configure Networking]]
* [[How to configure static routes]]
* Modem
** [[Using HSDPA modem]]
** [[Using serial modem]]
* [[mDNS]] - Howto implement multicast DNS resolution in Alpine.
* [[Multi ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)''
* [[PXE boot]]
* Wi-Fi
** [[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]]


* [[Alpine newbie install manual]]
=== Security ===
** [[Alpine Install: from a disc to a new computer single only boot]]
** [[Alpine Install: from a disc to a old computer single only boot]]
** [[Alpine Install: from a disc to a virtualbox machine single only]]
** [[Alpine Install: from a iso to a virtualbox machine with external disc]]
* [[Alpine_newbie_install_manual#Ways_to_install_Alpine_listed_by_architectures|Ways to install listed by architectures]]
** [[Alpine_newbie_install_manual#x86_64_x86_32_x86|x86_64 x86_32 x86 s390]]
** [[Alpine_newbie_install_manual#armhf_armv7|armhf armv7 aarch64]]
** [[Alpine_newbie_install_manual#ppc64le|ppc64le others PPC]]


==== Postinstall: desktops and applications ====
* [[Securing Alpine Linux]] How to Secure Alpine Linux using Security Technical Implementation Guides (STIGs)
* Understand [[UEFI]] and enable [[UEFI Secure Boot]]


* [[Alpine newbie apk packages|Overall info and minimal packages common to any working desktop]]
=== Backup and data migration ===
** [[Alpine newbie desktops|Alpine newbie desktops, (overall information only)]]
** [[XFCE Setup]]
** [[Alpine Newbies LXDE Desktop Environment]]
** [[Alpine Newbies Openbox Window Manager|Alpine Newbies Xorg and Openbox Window Manager]]
** [[MATE|Alpine Newbies MATE Desktop Environment]]
* [[Alpine and UEFI|Alpine and UEFI Support Status and related topics]]


==== Developers: compilers, IDEs and tools ====
* [[Migrating data]]
* [[Rsnapshot]] - setting up periodic backups


* [[Alpine newbie developer]]
=== Other topics ===
** [[Alpine newbie developer: gitea|Alpine newbie developer: Git management web frontend gitea]]
** [[Alpine newbie developer: full stack web]]


==== Servers: deploy in production ====
* [[Gaming on Alpine]]
* [[Remote Desktop Server]]
* [[Default applications|How to change default application]]
* [[CPU frequency scaling]]
* [[Mimalloc]]
* [[Enable Serial Console on Boot]]
* [[How to build the Alpine Linux kernel]]
* [[Nextcloud]] ''(Self hostable cloud suite - Dropbox Alternative)''
* [[Setting up lm_sensors]]
* [[Desktop environments and Window managers|List of supported Desktop environments and Window managers]]


* [[Alpine production deploy]]
== Diskless ==
** [[Production Web server: Lighttpd‎‎]]
** [[Production DataBases : mysql]]
** [[Production LAMP system: Lighttpd + PHP + MySQL‎‎]]
* Alpine production monitoring
** [[Cacti: traffic analysis and monitoring network]]
** [[Zabbix|Zabbix - the professional complete manager]]


== Storage ==
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''
 
** [[Back Up a Flash Memory Installation]]
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)'' <!-- Installation and Storage -->
** [[Back Up a Flash Memory Installation]] <!-- Installation and Storage -->
** [[Manually editing a existing apkovl]]
** [[Manually editing a existing apkovl]]


* [[Setting up disks manually]] <!-- Installation and Storage -->
== Other Architectures ==
* [[Setting up a software RAID array]]
<!-- ** [[Setting up a /var partition on software IDE raid1]]  Obsolete, Installation and Storage -->
* [[Raid Administration]]
* [[Setting up encrypted volumes with LUKS]]
* [[Setting up LVM on LUKS]]
* [[Setting up Logical Volumes with LVM]]
** [[Setting up LVM on GPT-labeled disks]]
** [[Installing on GPT LVM]]
* [[Filesystems|Formatting HD/Floppy/Other]] <!-- just a stub -->


* [[Setting up iSCSI]]
=== ARM ===
** [[iSCSI Raid and Clustered File Systems]]
* [[Setting up NBD]]
* [[Setting up ZFS on LUKS]]
* [[Setting up ZFS with native encryption]]
* [[High performance SCST iSCSI Target on Linux software Raid]] ''(deprecated)'' <!-- solution -->
* [[Linux iSCSI Target (TCM)]]
* [[Disk Replication with DRBD]] <!-- draft -->


* [[Burning ISOs]] <!-- just some links now -->
* [[Partitioning and Bootmanagers]]
* [[Migrating data]]
* [[Create a bootable SDHC from a Mac]]
* [[Alpine on ARM]]
* [[Alpine on ARM]]


== Networking ==
==== Raspberry Pi ====


* [[Configure Networking]]
* [[Raspberry Pi|Raspberry Pi main page]]
* [[Connecting to a wireless access point]]
* [[Raspberry Pi Bluetooth Speaker|Raspberry Pi - Bluetooth Speaker]]
* [[Bonding]]
* [[Linux Router with VPN on a Raspberry Pi|Raspberry Pi - Router with VPN]]
* [[Vlan]]
* [[Linux Router with VPN on a Raspberry Pi (IPv6)|Raspberry Pi - Router with VPN (IPv6)]]
* [[Bridge]]
* [[Classic install or sys mode on Raspberry Pi|Raspberry Pi - Sys mode install]]
* [[Bridge wlan0 to eth0]]
* [[Raspberry Pi LVM on LUKS|Raspberry Pi - Sys mode install - LVM on LUKS]]
* [[OpenVSwitch]]
* [[RPI Video Receiver|Raspberry Pi - Video Receiver]] ''(network video decoder using Rasperry Pi and omxplayer)''
* [[How to configure static routes]]
* [[Raspberry Pi 3 - Browser Client]] - kiosk or digital sign
* [[Configure a Wireguard interface (wg)]]
* [[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]]
* [[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]]


* [[Alpine Wall]] - [[How-To Alpine Wall]] - [[Alpine Wall User's Guide]] ''(a new firewall management framework)''
=== IBM Z (IBM z Systems) ===


* [[PXE boot]]
* [[s390x|s390x - Installation]]


* [[Using serial modem]]
=== PowerPC ===
* [[Using HSDPA modem]]
* [[Setting up Satellite Internet Connection]]
* [[Using Alpine on Windows domain with IPSEC isolation]]


* [[Setting up a ssh-server]] ''(Using ssh is the preferred way to administer your box remotely)'' <!-- Server and Networking -->
* [[Ppc64le|Powerpc64le - Installation]]
** [[HOWTO OpenSSH 2FA with password and Google Authenticator]] ''(A simple two factor setup for OpenSSH)''
* [[How to setup a wireless access point]] ''(Setting up Secure Wireless AP w/ WPA encryption with bridge to wired network)''
* [[How to set up Alpine as a wireless router]] ''(Setting up a firewalled, Wireless AP with wired network on a Pi Zero W)''
* [[Setting up a OpenVPN server with Alpine]] ''(Allowing single users or devices to remotely connect to your network)''
<!-- [[Using Racoon for Remote Sites]] is a different VPN tunnelling method, but that article is just a stub -->
* [[Experiences with OpenVPN-client on ALIX.2D3]]  <!-- solution -->


* [[Generating SSL certs with ACF]] <!-- Generating SSL certs with ACF 1.9 -->
== Services ==
* [[Setting up unbound DNS server]]
* [[Setting up nsd DNS server]]
* [[TinyDNS Format]]
* [[Fault Tolerant Routing with Alpine Linux]] <!-- solution -->
* [[Freeradius Active Directory Integration]]
* [[Multi_ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)''
* [[OwnCloud]] ''(Installing OwnCloud)''


* [[Seafile: setting up your own private cloud]]
{{Note| Services are arranged in alphabetical order.}}


* [[GNUnet]]
=== Content management systems ===


== Post-Install ==
* [[DokuWiki]]
<!-- If you edit this, please coordinate with Installation and Developer_Documentation#Package_management.  Note that these three sections are not exact duplicates. -->
* [[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)''
* [[Moodle]] ''(Online Learning Management system)''


* [[Alpine_newbie_apk_packages|Alpine newbie users post install and easy setups]]
=== Database ===
** [[Alpine_newbie_apk_packages#New_users:_hostname_and_network_wired_connection|First steps at post install]]
** [[Alpine_newbie_apk_packages#New_users:_common_needed_package_to_install|Enable repositories]]
** [[Alpine_newbie_apk_packages#New_users:_management_of_users_and_logins|Added the first user to use the system]]
** [[Alpine_newbie_apk_packages#install_basic_tools|First packages to install]] (need the previous [[Alpine_newbie_apk_packages#New_users:_common_needed_package_to_install|Enable repositories]]) already done!


* [[Setting up a new user]]
* [[MariaDB]] or [[MySQL|MySQL]]
* [[Enable Community Repository]] ''(Providing additional packages)''
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)''
  <!-- [[Alpine Linux package management#Local_Cache|How to enable APK caching]] -->
** [[Comparison with other distros]]
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''
** [[Back Up a Flash Memory Installation]] <!-- new -->
** [[Manually editing a existing apkovl]]
* [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically boot at next reboot)''
** [[Multiple Instances of Services]]
  <!-- [[Writing Init Scripts]] -->
* [[Alpine setup scripts#setup-xorg-base|Setting up Xorg]]
* [[Upgrading Alpine]]
<!-- Obsolete
[[Upgrading Alpine - v1.9.x]]
[[Upgrading Alpine - CD v1.8.x]]
[[Upgrading Alpine - HD v1.8.x]]
[[Upgrade to repository main|Upgrading to signed repositories]]
-->


* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''
=== DNS ===
** [[HOWTO OpenSSH 2FA with password and Google Authenticator]] ''(A simple two factor setup for OpenSSH)''
* [[setup-acf]] ''(Configures ACF (webconfiguration) so you can manage your box through https)''
* [[Changing passwords for ACF|Changing passwords]]
* [[Ansible]] ''(Configuration management)''


* [[Enable Serial Console on Boot]]
* [[DNSCrypt-Proxy]] ''Encrypt and authenticate DNS calls from your system''
<!-- Obsolete?
* [[Setting up nsd DNS server]]
* [[Error message on boot: Address space collision: host bridge window conflicts with Adaptor ROM]]
* [[Small-Time DNS with BIND9]] ''(A simple configuration with ad blocking for your home network)''
-->
* Unbound
* [[How to get regular stuff working]] ''some notes on need-to-know topics''
** [[Setting up unbound DNS server]]
* [[Installing Oracle Java]]
** [[Using Unbound as an Ad-blocker]] ''(Setup ad blocking for your network)''
* [[Rsnapshot|Setting up periodic backups with <samp>rsnapshot</samp>]]
* [[TinyDNS Format]]


== Virtualization==
=== File server ===


* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''
* [[Setting up an NFS server|nfs-server]]
* [[Xen Dom0 on USB or SD]]
* [[Setting up a Samba server|samba-server]] ''(standard file sharing)''
* [[Create Alpine Linux PV DomU]]
* [[Setting up a samba-ad-dc|samba-ad-dc]] ''(Active Directory compatible domain controller)''
* [[Xen PCI Passthrough]]
* [[Xen LiveCD]]
* [[qemu]]
* [[KVM]] ''(Setting up Alpine as a KVM hypervisor)''
* [[LXC]] ''(Setting up a Linux container in Alpine Linux)''
* [[Docker]]
* [[Install_Alpine_on_VirtualBox]]
* [[Install Alpine on VMWare]]


== Desktop Environment ==
=== Firewall and VPN ===


* [[Awesome(wm) Setup]]
* Alpine Wall ''(a new firewall management framework)''
* [[dwm]] ''(dynamic window manager for X)''
** [[Alpine Wall]]
* [[EyeOS]] ''(Cloud Computing Desktop)''
** [https://git.alpinelinux.org/awall/about/ Alpine Wall User's Guide]
* [[Gnome Setup]]
** [[How-To Alpine Wall]]
* [[KDE]]
* [[Freeradius Active Directory Integration]]
* [[MATE|MATE Setup]]
* [[GNUnet]]
* [[Oneye]] ''(Cloud Computing Desktop - Dropbox Alternative)''
* [[IGMPproxy]]
* [[Owncloud]] ''(Cloud Computing Desktop - Dropbox Alternative)''
* [[Setting up a OpenVPN server|OpenVPN server]] ''(Allowing single users or devices to remotely connect to your network)''
** (to be merged with [[OwnCloud]] ''(Your personal Cloud for storing and sharing your data on-line)'')
* [[OpenVSwitch]]
* [[Remote Desktop Server]]
* [[Tor]]
* [[Suspend on LID close]]
* [[Uncomplicated Firewall|Uncomplicated Firewall or UFW]]
* [[Sway]]
* [[Using Alpine on Windows domain with IPSEC isolation]]
* [[XFCE Setup]] and [[Xfce Desktop|Desktop Ideas]]
* [[Configure a Wireguard interface (wg)|Wireguard]]
* [[Installing Adobe flash player for Firefox]]
* [[Sound Setup]]
* [[PipeWire]]
* [[Printer Setup]]
* [[Default applications]]


== Raspberry Pi ==
=== HTTP and web services ===


* [[Raspberry Pi|Raspberry Pi (Installation)]]
* [[Althttpd]]
* [[Raspberry Pi - Headless Installation]]
* [[Apache]]
* [[Classic install or sys mode on Raspberry Pi]]
** [[Apache with php-fpm]]
* [[RPI Video Receiver]] ''(network video decoder using Rasperry Pi and omxplayer)''
** [[Setting Up Apache with PHP]]
* [[Linux Router with VPN on a Raspberry Pi]]
** [[Apache authentication: NTLM Single Signon]]
* [[Linux Router with VPN on a Raspberry Pi (IPv6)]]
* [[Darkhttpd]]
* [[Raspberry Pi 4 - Persistent system acting as a NAS and Time Machine]]
* [[Lighttpd]]
* [[Raspberry Pi 3 - Configuring it as wireless access point -AP Mode]]
** [[Lighttpd Advanced security]]
* [[Raspberry Pi 3 - Setting Up Bluetooth]]
** [[Setting Up Lighttpd With FastCGI]]
* [[Raspberry Pi 3 - Browser Client]] - kiosk or digital sign
** [[Production Web server: Lighttpd|Production web server: Lighttpd‎‎]]
* [[Raspberry Pi Zero W - Installation]]
* [[Nginx]]
* [[Raspberry Pi Bluetooth Speaker]]
** [[Nginx as reverse proxy with acme (letsencrypt)]]
** [[Nginx with PHP]]
* Squid Proxy
** [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp -->
** [[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]]
** [[Production LAMP system: Lighttpd + PHP + MySQL‎‎|Production LAMP system: Lighttpd + PHP + MariaDB/MySQL‎‎]]


== PowerPC ==
=== IRC ===


* [[Ppc64le|Powepc64le (Installation)]]
* [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)''


== IBM Z (IBM z Systems) ==
=== Mail ===


* [[s390x|s390x (Installation)]]
== Applications ==
=== Telephony ===
* [[Setting up Zaptel/Asterisk on Alpine]]
** [[Setting up Streaming an Asterisk Channel]]
* [[Freepbx on Alpine Linux]]
* [[FreePBX_V3]] ''(FreeSWITCH, Asterisk GUI web acces tool)''
* [[2600hz]] ''(FreeSWITCH, Asterisk GUI web access tool)''
* [[Kamailio]] ''(SIP Server, formerly OpenSER)''
=== Mail ===
* [[Hosting services on Alpine]] ''(Hosting mail, webservices and other services)''
* [[Hosting services on Alpine]] ''(Hosting mail, webservices and other services)''
** [[Hosting Web/Email services on Alpine]]
* [[Hosting Web/Email services on Alpine]]
* [[ISP Mail Server HowTo]] <!-- solution, Mail -->
* Exim/Dovecot
** [[ISP Mail Server Upgrade 2.x]]
** [[Small-Time Email with Exim and Dovecot]] ''(A simple configuration for your home network.)
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''
** [[Setting up dovecot with imap and tls]]
** [[ISP Mail Server 3.x HowTo]]
* [[relay email to gmail (msmtp, mailx, sendmail]]
* [[relay email (nullmailer)]]
* [[Roundcube]] ''(Webmail system)''
* [[Roundcube]] ''(Webmail system)''
* [[Setting up postfix with virtual domains]]
* [[Setting up postfix with virtual domains]]
* [[Protecting your email server with Alpine]]
* Server protection
* [[Setting up clamsmtp]]
** [[Setting up clamsmtp]]
* [[Setting up dovecot with imap and ssl]]
* [[relay email to gmail (msmtp, mailx, sendmail]]


=== HTTP ===
=== Monitoring ===
* [[Lighttpd]]
** [[Lighttpd Https access]]
** [[Setting Up Lighttpd with PHP]]
** [[Setting Up Lighttpd With FastCGI]]
* [[Cherokee]]
* [[Nginx]]
** [[Nginx_with_PHP#Nginx_with_PHP|Nginx with PHP]]
** [[Nginx as reverse proxy with acme (letsencrypt)]]
* [[Apache]]
** [[Apache with php-fpm]]
** [[Setting Up Apache with PHP]]
** [[Apache authentication: NTLM Single Signon]]


* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)'' <!-- solution, Server -->
* [[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)'' <!-- Monitoring and Security -->
* [[Linfo]]
* [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp -->
* [[PhpSysInfo]] ''(A simple application that displays information about the host it's running on)''
* [[Logcheck]] ''(log file monitoring tool)''
* [[Matomo]] ''(A real time web analytics software program)''
* [[Rasdaemon]] ''(Platform Reliability, Availability and Serviceability monitoring tool)''
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft, solution, Networking and Monitoring and Server -->
** [[Setting up NRPE daemon]] ''(Performs remote Nagios checks)'' <!-- Networking and Monitoring -->
* [[Setting Up Fprobe And Ntop|Ntop]] ''(NetFlow collection and analysis using a remote fprobe instance; for alpine 3.10-3.12 only)'' <!-- Networking and Monitoring -->
* [[SqStat]] ''(Script to look at active squid users connections)''
* [[Traffic monitoring]] <!-- Networking and Monitoring -->
** [[Setting up monitoring using rrdtool (and rrdcollect)]]
** [[Setting up traffic monitoring using rrdtool (and snmp)]] <!-- Monitoring -->
* [[Zabbix|Zabbix - the professional complete manager]] ''(Monitor and track the status of network services and hardware)''
* [[ZoneMinder video camera security and surveillance]]


* [[Setting up Transparent Squid Proxy]] <!-- draft -->
=== Remote Administration ===
** [[SqStat]] ''(Script to look at active squid users connections)''
** [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp -->
* [[Setting up Explicit Squid Proxy]]


* [[Drupal]] ''(Content Management System (CMS) written in PHP)''
* ACF
* [[WordPress]] ''(Web software to create website or blog)''
** [[Changing passwords for ACF|ACF - changing passwords]]
* [[MediaWiki]] ''(Free web-based wiki software application)''
** [[Generating SSL certs with ACF]] <!-- Generating SSL certs with ACF 1.9 -->
* [[DokuWiki]]
** [[setup-acf| ACF - setup]] ''(Configures ACF (webconfiguration/webmin) so you can manage your box through https)''
* [[Darkhttpd]]
* [[Setting up a SSH server]] ''(Using ssh is a good way to administer your box remotely)''
* [[Tomcat]]
** [[HOWTO OpenSSH 2FA with password and Google Authenticator |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)''


=== Other Servers ===
=== Telephony ===
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''
** [[HOWTO OpenSSH 2FA with password and Google Authenticator]] ''(A simple two factor setup for OpenSSH)''


* [[Setting up a nfs-server]]
* [[FreePBX|FreePBX on Alpine Linux]]
* [[Setting up a samba-server]] ''(standard file sharing)''
* [[Setting up Zaptel/Asterisk on Alpine]]
* [[Setting up a samba-ad-dc]] ''(Active Directory compatible domain controller)''
* [[Kamailio]] ''(SIP Server, formerly OpenSER)''
* [[Phpizabi]] ''(Social Networking Platform)''
* [[Statusnet]] ''(Microblogging Platform)''
* [[Pastebin]] ''(Pastebin software application)''
* [[Setting up Transmission (bittorrent) with Clutch WebUI]]


* [[Patchwork]] ''(Patch review management system)''
=== Other Servers ===
* [[Redmine]] ''(Project management system)''
* [[Request-Tracker]] ''(Ticket system)''
* [[OsTicket]] ''(Ticket system)''
* [[Setting up trac wiki|Trac]] ''(Enhanced wiki and issue tracking system for software development projects)''


* [[Alpine_newbie_developer: gitea|Setting up Git management web frontend gitea]]
* [[apcupsd]] ''(UPS Monitoring with apcupsd)''
* [[Cgit]]
* [[Chrony and GPSD | Chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]]
** [[Setting up a git repository server with gitolite and cgit]] <!-- doesn't exist yet -->
* [[Roundcube]] ''(Webmail system)''
* [[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]]
* [[Cups]]
* [[nut-ups|NUT UPS]] ''(UPS Monitoring with Network UPS Tools)''
* [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)''
* [[How To Setup Your Own IRC Network]] ''(Using {{Pkg|charybdis}} and {{Pkg|atheme-iris}})''
* [[OpenVCP]] ''(VServer Control Panel)''
* [[Mahara]] ''(E-portfolio and social networking system)''
* [[Chrony and GPSD | Using chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]]
* [[Sending SMS using gnokii]]
* [[IPTV How To|Internet Protocol television (IPTV)]]
* [[UniFi_Controller]]
* [[DNSCrypt-Proxy]] ''Encrypt and authenticate DNS calls from your system''
* [[Odoo]]
* [[Odoo]]
* [[Configure OpenLDAP | OpenLDAP]] ''(Installing and configuring the Alpine package for OpenLDAP)''
* [[Setting up a LLDAP server|lldap-server]] ''(Directory Server)''
* [[Setting up Transmission (bittorrent) with Clutch WebUI]]


=== Monitoring ===
* Setting up [[collectd]]
* [[Traffic monitoring]] <!-- Networking and Monitoring -->
* [[Setting up traffic monitoring using rrdtool (and snmp)]] <!-- Monitoring -->
* [[Setting up monitoring using rrdtool (and rrdcollect)]]
* [[Cacti: traffic analysis and monitoring network]] ''(Front-end for rrdtool networking monitor)''
* [[LTTng]] ''(Kernel and userspace tracing)''
* [[Zabbix|Zabbix - the professional complete manager]] ''(Monitor and track the status of network services and hardware)''
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft, solution, Networking and Monitoring and Server -->
** [[Setting up NRPE daemon]] ''(Performs remote Nagios checks)'' <!-- Networking and Monitoring -->
* [[Setting up Smokeping|Smokeping]] ''(Network latency monitoring)'' <!-- Networking and Monitoring -->
** [[Setting up MRTG and Smokeping to Monitor Bandwidth Usage and Network Latency]]
* [[Setting Up Fprobe And Ntop|Ntop]] ''(NetFlow collection and analysis using a remote fprobe instance)'' <!-- Networking and Monitoring -->
* [[Cvechecker]] ''(Compare installed packages for Common Vulnerabilities Exposure)'' <!-- Monitoring and Security -->


* [[IP Accounting]] <!-- Networking and Monitoring -->
== Software development ==
* [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp -->
* [[SqStat]] ''(Script to look at active squid users connections)''


* [[Piwik]] ''(A real time web analytics software program)''
* [[Cgit]]
* [[Awstats]] ''(Free log file analyzer)''
* [[OsTicket]] ''(Ticket system)''
* [[Intrusion Detection using Snort]]
* [[Patchwork]] ''(Patch review management system)''
** [[Intrusion Detection using Snort, Sguil, Barnyard and more]]
* [[Redmine]] ''(Project management system)''
* [[Dglog]] ''(Log analyzer for the web content filter DansGuardian)''
* [[Request Tracker]] ''(Ticket system)''
* [[Setting up trac wiki|Trac]] ''(Enhanced wiki and issue tracking system for software development projects)''
* [[Ansible]] ''(Configuration management)''
* [[Installing Oracle Java|Oracle Java (installation)]]


* [[Webmin]] ''(A web-based interface for Linux system)''
== Storage ==
* [[PhpPgAdmin]] ''(Web-based administration tool for PostgreSQL)''
* [[PhpMyAdmin]] ''(Web-based administration tool for MYSQL)''
* [[PhpSysInfo]] ''(A simple application that displays information about the host it's running on)''
* [[Linfo]]


* [[Setting up lm_sensors]]
* [[Setting up disks manually|Manual partitioning]]
* [[Disk Replication with DRBD|DRBD: Disk Replication]]
* [[Filesystems]]
** [[Burning ISOs]]
* [[Setting up iSCSI|iSCSI Setup]]
** [[iSCSI Raid and Clustered File Systems]]
** [[Linux iSCSI Target (TCM)|iSCSI Target (TCM)/LinuxIO (LIO)]]
** [[Linux iSCSI Target (tgt)|User space iSCSI Target (tgt)]]
* [[Setting up Logical Volumes with LVM|LVM Setup]]
** [[Setting up LVM on GPT-labeled disks|LVM on GPT-labeled disks]]
** [[Installing on GPT LVM|LVM on GPT-labeled disks (updated)]]
** [[LVM on LUKS]]
* RAID
** [[Raid Administration]]
** [[Setting up a software RAID array]]
* [[ZFS]]
** [[Root on ZFS with native encryption]]
** [[Setting up ZFS on LUKS]]
* [[CEPH|CEPH]]


* [[ZoneMinder video camera security and surveillance]]
== Virtualization ==


== Misc ==
* [[Docker]]
* [[Installing Alpine in a virtual machine]]
** [[Install Alpine on VMware ESXi]]
* [[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]]
** [[Create Alpine Linux PV DomU|Xen DomU (paravirtualized)]]
** [[Xen LiveCD]]
** [[Xen PCI Passthrough]]
** [[K8s]] Building a K8s Kubernetes Cluster on Alpine Linux


* [[:Category:Shell]]
== Tutorials ==
* [[:Category:Programming]]
* [[Running glibc programs]]
* [[:Category:Drivers]]
* [[:Category:Multimedia]]
* [[Kernel Modesetting]]
* [[CPU frequency scaling]]


== Complete Solutions ==
* [[TTY_Autologin|TTY Autologin]]
* [[Kexec|Faster rebooting with kexec]]
* [[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]]
* [[Alpine on the Aopen Chromebase or Chromebox Mini with Mainline Kernel]]
* [[Replacing non-Alpine Linux with Alpine remotely]]
* [[High performance SCST iSCSI Target on Linux software Raid]]
* [[Fault Tolerant Routing with Alpine Linux]]
* [[Fault Tolerant Routing with Alpine Linux]]
* [[Experiences with OpenVPN-client on ALIX.2D3]]
* [[Building a cloud with Alpine Linux]]
* [[ISP Mail Server HowTo]] ''(Postfix+PostfixAdmin+DoveCot+Roundcube+ClamAV+Spamd - A full-serivce ISP mail server)''
** [[ISP Mail Server Upgrade 2.x]]
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''
* [[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)]]
* [[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)'' <!-- 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]]
* [[Dynamic Multipoint VPN (DMVPN)]] combined with [[Small_Office_Services]]
* [[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]]
 
<!--
This does not attempt to be complete. Is it useful to have these listed here? I find them more accessible if grouped with their topics; also, an up-to-date list of all Draft or Obsolete pages can be found at [[Project:Wiki maintenance]].
 
== Drafts ==
Currently unfinished/works-in-progress.
* [[Using Racoon for Remote Sites]]
* [[Setting up Transparent Squid Proxy]] ''(Covers Squid proxy and URL Filtering system)''
** [[Obtaining user information via SNMP]] ''(Using the Squark Squid authentication helper)'' [!-- no longer a draft --]
* [[Setting up Streaming an Asterisk Channel]]
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)''
* [[Intrusion Detection using Snort]] ''(Installing and configuring Snort and related applications on Alpine 2.0.x)''
* [[IP Accounting]] ''(Installing and configuring pmacct for IP Accounting, Netflow/sFlow collector)''
* [[Disk Replication with DRBD]]
-->
 
 
[[Category:Newbie]]

Latest revision as of 23:10, 13 April 2025

Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.

Howtos are smaller articles explaining how to perform a particular task with Alpine Linux, that expects a minimal knowledge from reader to perform actions. Howto's have been organized in the below page based on the topics.

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.

Note:
  • Contributors are requested to refer to Help:Editing first and make use of resources like How to write a HOWTO.
  • Contributions must be complete articles.
  • Don't override already made contributions, unless there is a mistake.
  • If you want to request a topic, please add your request in this page's Discussion.

Desktop

Alpine Linux is a general purpose Linux distribution designed for power users. It is built to be small and resource efficient. If you feel the defaults are too lightweight for desktop use, it is easy to get most of the regular stuff working and use it as a daily driver.

This guide assumes you have already installed a minimal Alpine Linux system in system disk mode with working internet.

Once the above mandatory steps are completed, install any desktop of your choice either manually or using setup-desktop script.

Basics

Advanced

Power management

Networking

Security

Backup and data migration

Other topics

Diskless

Other Architectures

ARM

Raspberry Pi

IBM Z (IBM z Systems)

PowerPC

Services

Note: Services are arranged in alphabetical order.

Content management systems

  • 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)
  • Moodle (Online Learning Management system)

Database

DNS

File server

Firewall and VPN

HTTP and web services

IRC

  • NgIRCd (Server for Internet Relay Chat/IRC)

Mail

Monitoring

Remote Administration

Telephony

Other Servers


Software development

Storage

Virtualization

Tutorials