https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&user=Silence&feedformat=atomAlpine Linux - User contributions [en]2024-03-29T14:47:38ZUser contributionsMediaWiki 1.40.0https://wiki.alpinelinux.org/w/index.php?title=Tutorials_and_Howtos&diff=13732Tutorials and Howtos2017-08-16T22:48:02Z<p>Silence: /* Desktop Environment */ added printer setup tutorial</p>
<hr />
<div>[[Image:package_edutainment.svg|right|link=]]<br />
{{TOC left}}<br />
'''Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.'''<br />
<br />
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.<br />
<br />
Howtos are smaller articles explaining how to perform a particular task with Alpine Linux.<br />
<br />
We encourage people to send in both complete articles as well as requesting topics to be covered. If you think you have the skills and knowledge to write an Alpine Linux related article please do so on this Wiki. If you want to request a topic, please add your request in this page's [[Talk:Tutorials_and_Howtos|Discussion]].<br />
<br />
{{Clear}}<br />
== Storage ==<br />
<br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)'' <!-- Installation and Storage --><br />
** [[Back Up a Flash Memory Installation]] <!-- Installation and Storage --><br />
** [[Manually editing a existing apkovl]]<br />
<br />
* [[Setting up disks manually]] <!-- Installation and Storage --><br />
* [[Setting up a software RAID array]]<br />
<!-- ** [[Setting up a /var partition on software IDE raid1]] Obsolete, Installation and Storage --> <br />
* [[Raid Administration]]<br />
* [[Setting up encrypted volumes with LUKS]]<br />
* [[Setting up LVM on LUKS]]<br />
* [[Setting up Logical Volumes with LVM]]<br />
** [[Setting up LVM on GPT-labeled disks]]<br />
** [[Installing on GPT LVM]]<br />
* [[Filesystems|Formatting HD/Floppy/Other]] <!-- just a stub --><br />
<br />
* [[Setting up iSCSI]]<br />
** [[iSCSI Raid and Clustered File Systems]]<br />
* [[Setting up NBD]]<br />
* [[High performance SCST iSCSI Target on Linux software Raid]] ''(deprecated)'' <!-- solution --><br />
* [[Linux iSCSI Target (TCM)]]<br />
* [[Disk Replication with DRBD]] <!-- draft --><br />
<br />
* [[Burning ISOs]] <!-- just some links now --><br />
* [[Partitioning and Bootmanagers]]<br />
* [[Migrating data]]<br />
* [[Create a bootable SDHC from a Mac]]<br />
* [[Alpine on ARM]]<br />
<br />
== Networking ==<br />
<br />
* [[Configure Networking]]<br />
* [[Connecting to a wireless access point]]<br />
* [[Bonding]]<br />
* [[Vlan]]<br />
* [[Bridge]]<br />
* [[OpenVSwitch]]<br />
* [[How to configure static routes]]<br />
<br />
* [[Alpine Wall]] - [[How-To Alpine Wall]] - [[Alpine Wall User's Guide]] ''(a new firewall management framework)''<br />
<br />
* [[PXE boot]]<br />
<br />
* [[Using serial modem]]<br />
* [[Using HSDPA modem]]<br />
* [[Setting up Satellite Internet Connection]]<br />
* [[Using Alpine on Windows domain with IPSEC isolation]]<br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)'' <!-- Server and Networking --><br />
* [[How to setup a wireless access point]] ''(Setting up Secure Wireless AP w/ WPA encryption with bridge to wired network)''<br />
* [[Setting up a OpenVPN server with Alpine]] ''(Allowing single users or devices to remotely connect to your network)''<br />
<!-- [[Using Racoon for Remote Sites]] is a different VPN tunnelling method, but that article is just a stub --><br />
* [[Experiences with OpenVPN-client on ALIX.2D3]] <!-- solution --><br />
<br />
* [[Generating SSL certs with ACF]] <!-- Generating SSL certs with ACF 1.9 --><br />
* [[Setting up unbound DNS server]]<br />
* [[Setting up nsd DNS server]]<br />
* [[TinyDNS Format]]<br />
* [[Fault Tolerant Routing with Alpine Linux]] <!-- solution --><br />
* [[Freeradius Active Directory Integration]]<br />
* [[Multi_ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)''<br />
* [[OwnCloud]] ''(Installing OwnCloud)''<br />
<br />
* [[Seafile: setting up your own private cloud]]<br />
<br />
== Post-Install ==<br />
<!-- If you edit this, please coordinate with Installation#Post-Install and Developer_Documentation#Package_management. Note that these three sections are not exact duplicates. --><br />
<br />
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)''<br />
<!-- [[Alpine Linux package management#Local_Cache|How to enable APK caching]] --><br />
** [[Comparison with other distros]]<br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''<br />
** [[Back Up a Flash Memory Installation]] <!-- new --><br />
** [[Manually editing a existing apkovl]]<br />
* [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically boot at next reboot)''<br />
** [[Multiple Instances of Services]]<br />
<!-- [[Writing Init Scripts]] --><br />
* [[Alpine setup scripts#setup-xorg-base|Setting up Xorg]]<br />
* [[Upgrading Alpine]]<br />
<!-- Obsolete<br />
[[Upgrading Alpine - v1.9.x]]<br />
[[Upgrading Alpine - CD v1.8.x]]<br />
[[Upgrading Alpine - HD v1.8.x]]<br />
[[Upgrade to repository main|Upgrading to signed repositories]]<br />
--><br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
* [[setup-acf]] ''(Configures ACF (webconfiguration) so you can manage your box through https)''<br />
* [[Changing passwords for ACF|Changing passwords]]<br />
* [[Ansible]] ''(Configuration management)''<br />
<br />
* [[Enable Serial Console on Boot]]<br />
<!-- Obsolete?<br />
* [[Error message on boot: Address space collision: host bridge window conflicts with Adaptor ROM]]<br />
--><br />
* [[How to get regular stuff working]] ''some notes on need-to-know topics''<br />
* [[Rsnapshot|Setting up periodic backups with <samp>rsnapshot</samp>]]<br />
<br />
== Virtualization==<br />
<br />
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''<br />
* [[Xen Dom0 on USB or SD]]<br />
* [[Create Alpine Linux PV DomU]]<br />
* [[Xen PCI Passthrough]]<br />
* [[Xen LiveCD]]<br />
* [[qemu]]<br />
* [[KVM]] ''(Setting up Alpine as a KVM hypervisor)''<br />
* [[LXC]] ''(Setting up a Linux container in Alpine Linux)''<br />
* [[Docker]]<br />
* [[Install_Alpine_on_VirtualBox]]<br />
<br />
== Desktop Environment ==<br />
<br />
* [[Awesome(wm) Setup]]<br />
* [[EyeOS]] ''(Cloud Computing Desktop)''<br />
* [[Gnome Setup]]<br />
* [[MATE|MATE Setup]]<br />
* [[Oneye]] ''(Cloud Computing Desktop - Dropbox Alternative)''<br />
* [[Owncloud]] ''(Cloud Computing Desktop - Dropbox Alternative)''<br />
** (to be merged with [[OwnCloud]] ''(Your personal Cloud for storing and sharing your data on-line)'')<br />
* [[Remote Desktop Server]]<br />
* [[Suspend on LID close]]<br />
* [[XFCE Setup]] and [[Xfce Desktop|Desktop Ideas]]<br />
* [[Installing Adobe flash player for Firefox]]<br />
* [[Sound Setup]]<br />
* [[Printer Setup]]<br />
<br />
== Raspberry Pi ==<br />
<br />
* [[Raspberry Pi|Raspberry Pi (Installation)]]<br />
* [[RPI Video Receiver]] ''(network video decoder using Rasperry Pi and omxplayer)''<br />
* [[Linux Router with VPN on a Raspberry Pi]]<br />
* [[Raspberry Pi 3 - Configuring it as wireless access point -AP Mode]]<br />
* [[Raspberry Pi 3 - Setting Up Bluetooth]]<br />
<br />
== Applications ==<br />
<br />
=== Telephony ===<br />
* [[Setting up Zaptel/Asterisk on Alpine]]<br />
** [[Setting up Streaming an Asterisk Channel]]<br />
* [[Freepbx on Alpine Linux]]<br />
* [[FreePBX_V3]] ''(FreeSWITCH, Asterisk GUI web acces tool)''<br />
* [[2600hz]] ''(FreeSWITCH, Asterisk GUI web access tool)''<br />
* [[Kamailio]] ''(SIP Server, formerly OpenSER)''<br />
<br />
=== Mail ===<br />
* [[Hosting services on Alpine]] ''(Hosting mail, webservices and other services)''<br />
** [[Hosting Web/Email services on Alpine]]<br />
* [[ISP Mail Server HowTo]] <!-- solution, Mail --><br />
** [[ISP Mail Server Upgrade 2.x]]<br />
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''<br />
* [[Roundcube]] ''(Webmail system)''<br />
* [[Setting up postfix with virtual domains]]<br />
* [[Protecting your email server with Alpine]]<br />
* [[Setting up clamsmtp]]<br />
* [[Setting up dovecot with imap and ssl]]<br />
* [[relay email to gmail (msmtp, mailx, sendmail]]<br />
<br />
=== HTTP ===<br />
* [[Lighttpd]]<br />
** [[Lighttpd Https access]]<br />
** [[Setting Up Lighttpd with PHP]]<br />
** [[Setting Up Lighttpd With FastCGI]]<br />
* [[Cherokee]]<br />
* [[Nginx]]<br />
* [[Nginx as reverse proxy with acme (letsencrypt)]]<br />
* [[Apache]]<br />
** [[Apache with php-fpm]]<br />
** [[Setting Up Apache with PHP]]<br />
** [[Apache authentication: NTLM Single Signon]]<br />
<br />
* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)'' <!-- solution, Server --><br />
<br />
* [[Setting up Transparent Squid Proxy]] <!-- draft --><br />
** [[SqStat]] ''(Script to look at active squid users connections)''<br />
** [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp --><br />
* [[Setting up Explicit Squid Proxy]]<br />
<br />
* [[Drupal]] ''(Content Management System (CMS) written in PHP)''<br />
* [[WordPress]] ''(Web software to create website or blog)''<br />
* [[MediaWiki]] ''(Free web-based wiki software application)''<br />
* [[DokuWiki]]<br />
* [[Darkhttpd]]<br />
<br />
=== Other Servers ===<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
<br />
* [[Setting up a nfs-server]]<br />
* [[Setting up a samba-server]] ''(standard file sharing)''<br />
* [[Setting up a samba-ad-dc]] ''(Active Directory compatible domain controller)''<br />
* [[Phpizabi]] ''(Social Networking Platform)''<br />
* [[Statusnet]] ''(Microblogging Platform)''<br />
* [[Pastebin]] ''(Pastebin software application)''<br />
* [[Setting up Transmission (bittorrent) with Clutch WebUI]]<br />
<br />
* [[Patchwork]] ''(Patch review management system)''<br />
* [[Redmine]] ''(Project management system)''<br />
* [[Request-Tracker]] ''(Ticket system)''<br />
* [[OsTicket]] ''(Ticket system)''<br />
* [[Setting up trac wiki|Trac]] ''(Enhanced wiki and issue tracking system for software development projects)''<br />
<br />
* [[Cgit]]<br />
** [[Setting up a git repository server with gitolite and cgit]] <!-- doesn't exist yet --><br />
* [[Roundcube]] ''(Webmail system)''<br />
* [[Glpi]] ''(Manage inventory of technical resources)''<br />
<br />
* [[How to setup a Alpine Linux mirror]]<br />
* [[Cups]]<br />
* [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)''<br />
* [[OpenVCP]] ''(VServer Control Panel)''<br />
* [[Mahara]] ''(E-portfolio and social networking system)''<br />
* [[Chrony and GPSD | Using chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]]<br />
* [[Sending SMS using gnokii]]<br />
<br />
=== Monitoring ===<br />
* Setting up [[collectd]]<br />
* [[Traffic monitoring]] <!-- Networking and Monitoring --><br />
* [[Setting up traffic monitoring using rrdtool (and snmp)]] <!-- Monitoring --><br />
* [[Setting up monitoring using rrdtool (and rrdcollect)]]<br />
* [[Setting up Cacti|Cacti]] ''(Front-end for rrdtool networking monitor)''<br />
* [[Setting up Zabbix|Zabbix]] ''(Monitor and track the status of network services and hardware)''<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft, solution, Networking and Monitoring and Server --><br />
** [[Setting up NRPE daemon]] ''(Performs remote Nagios checks)'' <!-- Networking and Monitoring --><br />
* [[Setting up Smokeping|Smokeping]] ''(Network latency monitoring)'' <!-- Networking and Monitoring --><br />
** [[Setting up MRTG and Smokeping to Monitor Bandwidth Usage and Network Latency]]<br />
* [[Setting Up Fprobe And Ntop|Ntop]] ''(NetFlow collection and analysis using a remote fprobe instance)'' <!-- Networking and Monitoring --><br />
* [[Cvechecker]] ''(Compare installed packages for Common Vulnerabilities Exposure)'' <!-- Monitoring and Security --><br />
<br />
* [[IP Accounting]] <!-- Networking and Monitoring --><br />
* [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp --><br />
* [[SqStat]] ''(Script to look at active squid users connections)''<br />
<br />
* [[Piwik]] ''(A real time web analytics software program)''<br />
* [[Awstats]] ''(Free log file analyzer)''<br />
* [[Intrusion Detection using Snort]]<br />
** [[Intrusion Detection using Snort, Sguil, Barnyard and more]]<br />
* [[Dglog]] ''(Log analyzer for the web content filter DansGuardian)''<br />
<br />
* [[Webmin]] ''(A web-based interface for Linux system)''<br />
* [[PhpPgAdmin]] ''(Web-based administration tool for PostgreSQL)''<br />
* [[PhpMyAdmin]] ''(Web-based administration tool for MYSQL)''<br />
* [[PhpSysInfo]] ''(A simple application that displays information about the host it's running on)''<br />
* [[Linfo]]<br />
<br />
* [[Setting up lm_sensors]]<br />
<br />
* [[ZoneMinder video camera security and surveillance]]<br />
<br />
== Misc ==<br />
<br />
* [[:Category:Shell]]<br />
* [[:Category:Programming]]<br />
* [[Running glibc programs]]<br />
* [[:Category:Drivers]]<br />
* [[:Category:Multimedia]]<br />
* [[Kernel Modesetting]]<br />
* [[CPU frequency scaling]]<br />
<br />
== Complete Solutions ==<br />
* [[DIY Fully working Alpine Linux for Allwinner and Other ARM SOCs]]<br />
* [[Replacing non-Alpine Linux with Alpine remotely]]<br />
* [[High performance SCST iSCSI Target on Linux software Raid]]<br />
* [[Fault Tolerant Routing with Alpine Linux]]<br />
* [[Experiences with OpenVPN-client on ALIX.2D3]]<br />
* [[Building a cloud with Alpine Linux]]<br />
<br />
* [[ISP Mail Server HowTo]] ''(Postfix+PostfixAdmin+DoveCot+Roundcube+ClamAV+Spamd - A full-serivce ISP mail server)''<br />
** [[ISP Mail Server Upgrade 2.x]]<br />
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''<br />
* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)''<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft --><br />
* [[Streaming Security Camera Video with VLC]]<br />
* [[Dynamic Multipoint VPN (DMVPN)]] combined with [[Small_Office_Services]]<br />
<br />
<br />
<!--<br />
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]].<br />
<br />
== Drafts ==<br />
Currently unfinished/works-in-progress.<br />
* [[Using Racoon for Remote Sites]]<br />
* [[Setting up Transparent Squid Proxy]] ''(Covers Squid proxy and URL Filtering system)''<br />
** [[Obtaining user information via SNMP]] ''(Using the Squark Squid authentication helper)'' [!-- no longer a draft --]<br />
* [[Setting up Streaming an Asterisk Channel]]<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)''<br />
* [[Intrusion Detection using Snort]] ''(Installing and configuring Snort and related applications on Alpine 2.0.x)''<br />
* [[IP Accounting]] ''(Installing and configuring pmacct for IP Accounting, Netflow/sFlow collector)''<br />
* [[Disk Replication with DRBD]]<br />
--></div>Silencehttps://wiki.alpinelinux.org/w/index.php?title=Printer_Setup&diff=13731Printer Setup2017-08-16T22:45:47Z<p>Silence: Adding printer instructions</p>
<hr />
<div>First, you'll need CUPS. If you have a Hewlett-Packard printer (HP brand), add the HPLIP package.<br />
{{cmd|apk add cups cups-libs cups-pdf cups-client cups-filters hplip hplip-libs}}<br />
<br />
Then go to http://localhost:631 with your web browser and follow the steps to "Add Printer". It'll ask you to log in to add a printer. Log in as root, then finish the steps. Once you're done, you should be able to print.<br />
<br />
If that doesn't work, you may also need to add HPLIP's dependencies separately. There currently is no package for CUPS DDK or foomatic.<br />
{{cmd|apk add libusb ghostscript qt py-qt python3.4 py-reportlab libjpeg libjpeg-turbo net-snmp}}</div>Silencehttps://wiki.alpinelinux.org/w/index.php?title=How-To_Alpine_Wall&diff=13730How-To Alpine Wall2017-08-16T22:13:47Z<p>Silence: /* General */ Until ip6tables gets installed along with alpine, it's important to add ip6tables too.</p>
<hr />
<div>= General =<br />
Purpose of this doc is to illustrate Alpine Wall ({{pkg|AWall}}) by examples.<BR><br />
We will explain {{pkg|AWall}} from the viewpoint of a Shorewall user.<BR><br />
<br />
{{pkg|AWall}} is available since Alpine v2.4.<BR><br />
Please see [[Alpine_Wall_User's_Guide]] for details about the syntax.<br />
<br />
Some of the below features and examples assumes that you are running {{pkg|AWall}} version 0.2.12 or later.<BR><br />
Make sure you are running latest version by running the following commands:<br />
{{cmd|apk update<br />
apk add ip6tables<br />
apk add -u awall<br />
apk version awall}}<br />
<br />
== Structure ==<br />
Your {{pkg|AWall}} firewall configuration file(s) goes to {{Path|/etc/awall/optional}}<BR><br />
Each such file is called ''Policy''.<BR><br />
{{note| {{pkg|AWall}} versions prior 0.2.12 will only look for ''Policy'' files in {{Path|/usr/share/awall/optional}}.<BR>From version 0.2.12 and higher, {{pkg|AWall}} will look for ''Policy'' files in both {{Path|/etc/awall/optional}} and {{Path|/usr/share/awall/optional}}}}<br />
You may have multiple ''Policy'' files ''(it is useful to have separate files for eg. HTTP,FTP and other roles)''.<BR><br />
The ''Policy(s)'' can be enabled or disabled by using the "awall [enable|disable]" command.<br />
{{note|{{pkg|AWall}}'s ''Policy'' files are not equivalent to Shorewalls {{Path|/etc/shorewall/policy}} file.}}<br />
An {{pkg|AWall}} ''Policy'' can contain definitions of:<br />
* variables ''(like {{Path|/etc/shorewall/params}})''<br />
* zones ''(like {{Path|/etc/shorewall/zones}})''<br />
* interfaces ''(like {{Path|/etc/shorewall/interfaces}})''<br />
* policies ''(like {{Path|/etc/shorewall/policy}})''<br />
* filters and NAT rules ''(like {{Path|/etc/shorewall/rules}})''<br />
* services ''(like {{Path|/usr/share/shorewall/macro.HTTP}})''<br />
<br />
== Prerequisites ==<br />
After installing {{pkg|AWall}}, you need to load the following iptables modules:<br />
{{cmd|modprobe ip_tables<br />
modprobe iptable_nat #if NAT is used}}<br />
<br />
This is needed only the first time, after {{pkg|AWall}} installation.<br />
<br />
Make the firewall autostart at boot and autoload the needed modules:<br />
{{cmd|rc-update add iptables<br />
rc-update add ip6tables}}<br />
<br />
= A Basic Home Firewall =<br />
We will give a example on how you can convert a "Basic home firewall" from Shorewall to {{pkg|AWall}}.<br />
<br />
== Example firewall using Shorewall ==<br />
Let's suppose you have the following Shorewall configuration:<br />
<br />
'''/etc/shorewall/zones'''<br />
<pre><br />
inet ipv4<br />
loc ipv4<br />
</pre><br />
<br />
'''/etc/shorewall/interfaces'''<br />
<pre><br />
inet eth0<br />
loc eth1<br />
</pre><br />
<br />
'''/etc/shorewall/policy'''<br />
<pre><br />
fw all ACCEPT<br />
loc inet ACCEPT<br />
all all DROP<br />
</pre><br />
<br />
'''/etc/shorewall/masq'''<br />
<pre><br />
eth0 0.0.0.0/0<br />
</pre><br />
<br />
== Example firewall using AWall ==<br />
Now we will configure {{pkg|AWall}} to do the same thing as we just did with the above Shorewall example.<br />
<br />
Create a new file called {{Path|/etc/awall/optional/test-policy.json}} and add the following content to the file.<BR><br />
{{Tip|You could call it something else as long as you save it in {{Path|/etc/awall/optional/}} and name it {{Path|???'''.json'''}})}}<br />
<pre><br />
{<br />
"description": "Home firewall",<br />
<br />
"zone": {<br />
"inet": { "iface": "eth0" },<br />
"loc": { "iface": "eth1" }<br />
},<br />
<br />
"policy": [<br />
{ "in": "_fw", "action": "accept" },<br />
{ "in": "loc", "out": "inet", "action": "accept" }<br />
],<br />
<br />
"snat": [<br />
{ "out": "inet" }<br />
]<br />
}<br />
</pre><br />
The above configuration will:<br />
* Create a description of your ''Policy''<br />
* Define ''zones''<br />
* Define ''policy''<br />
* Define ''snat'' ''(to masqurade the outgoing traffic)''<br />
{{Note|''snat'' means "source NAT". It does <u>not</u> mean "static NAT".}}<br />
{{Tip| {{pkg|AWall}} has a built-in zone named "_fw" which is the "firewall itself". This corresponds to the Shorewall "fw" zone.}}<br />
<br />
=== Activating/Applying a Policy ===<br />
After saving the ''Policy'' you can run the following commands to activate your firewall settings:<br />
{{cmd|awall list # Listing available 'Policy(s)' (This step is optional)<br />
awall enable test-policy # Enables the 'Policy'<br />
awall activate # Genereates firewall configuration from the 'Policy' files and enables it (starts the firewall)}}<br />
<br />
If you have multiple policies, after enabling or disabling them, you need to always run ''awall activate'' in order to update the iptables rules.<br />
<br />
= Advanced Firewall settings =<br />
Assuming you have your {{Path|/etc/awall/optional/test-policy.json}} with your "Basic home firewall" settings, you could choose to modify that file to test the below examples.<br />
{{tip|You could create new files in {{Path|/etc/awall/optional/}} for testing some of the below examples}}<br />
<br />
== Logging ==<br />
{{pkg|AWall}} will ''(since v0.2.7)'' automatically log dropped packets.<BR><br />
You could add the following row to the "policy" section in your ''Policy'' file in order to see the dropped packets.<br />
<pre>{ "in": "inet", "out": "loc", "action": "drop" }</pre><br />
{{Note|If you are using Alpine 2.4 repository ({{pkg|AWall}} v0.2.5 or below), you should use <code>"action": "logdrop"</code> in order to log dropped packets .}}<br />
{{Note|If you are adding the above content to an already existing file, then make sure you add "," signs where they are needed!}}<br />
<br />
== Port-Forwarding ==<br />
Let's suppose you have a local web server (192.168.1.10) that you want to make accessible from the "inet".<BR><br />
With Shorewall you would have a rule like this in your {{Path|/etc/shorewall/rules}}:<br />
<pre><br />
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL<br />
# PORT(S) PORT(S) DEST<br />
DNAT inet loc:192.168.1.10 tcp 80<br />
</pre><br />
<br />
Lets configure our {{pkg|AWall}} ''Policy'' file likewise by adding the following content.<br />
<pre><br />
"variable": {<br />
"APACHE": "192.168.1.10",<br />
"STATIC_IP": "1.2.3.4"<br />
},<br />
<br />
"filter": [<br />
{ "in": "inet", <br />
"dest": "$STATIC_IP", <br />
"service": "http", <br />
"action": "accept", <br />
"dnat": "$APACHE" <br />
}<br />
]<br />
</pre><br />
As you can see in the above example, we create a<br />
* "variable" section where we specify some IP-addresses<br />
* "filter" section where we do the actual port-forwarding (using the variables we just created and using some preexisting "services" definitions)<br />
{{Note|If you are adding the above content to a already existing file, then make sure you add "," signs where they are needed!}}<br />
{{Tip|{{pkg|AWall}} already has a "service" definition list for several services like HTTP, FTP, SNMP, etc. ''(see {{Path|/usr/share/awall/mandatory/services.json}})''}}<br />
<br />
If you need to forward to a different port (e.g. 8080) you can do:<br />
<br />
<pre><br />
"dnat": [<br />
{"in": "inet", "dest": "$STATIC_IP", "to-addr": "$APACHE", "service": "http", "to-port": 8080 }<br />
]<br />
</pre><br />
<br />
== Create your own service definitions ==<br />
You can add your own service definitions into your ''Policy'' files:<br />
<pre><br />
"service": { <br />
"openvpn": { "proto": "udp", "port": 1194 }<br />
}<br />
</pre><br />
{{Note|You can not override a "service" definition that comes from {{Path|/usr/share/awall/mandatory/services.json}} }}<br />
{{Note|If you are adding the above content to a already existing file, then make sure you add "," signs where they are needed!}}<br />
<br />
== Inherit services or variables == <br />
You can import a ''Policy'' into other ''Policy'' files for inheriting services or variables definitions:<br />
<pre><br />
"import": "myfirewall"<br />
</pre><br />
<br />
== Specify load order ==<br />
By default policies are loaded on alphabetical order.<BR><br />
You can change the load order with the keywords "before" and "after":<br />
<pre><br />
"before": "myfirewall"<br />
"after": "someotherpolicy"<br />
</pre><br />
<br />
= Other =<br />
== Help and debugging ==<br />
If you end up in some kind of trouble, you might find some commands useful when debugging:<br />
{{cmd|awall # (With no parameters) Shows some basic help about awall application<br />
awall dump # Dump definitions like zones and variables<br />
iptables -L -n # Show what's in <code>iptables</code>}}<br />
<br />
<br />
[[Category:Networking]]<br />
[[Category:Security]]</div>Silencehttps://wiki.alpinelinux.org/w/index.php?title=How-To_Alpine_Wall&diff=13729How-To Alpine Wall2017-08-16T22:11:47Z<p>Silence: added ip6tables to runlevel defaults</p>
<hr />
<div>= General =<br />
Purpose of this doc is to illustrate Alpine Wall ({{pkg|AWall}}) by examples.<BR><br />
We will explain {{pkg|AWall}} from the viewpoint of a Shorewall user.<BR><br />
<br />
{{pkg|AWall}} is available since Alpine v2.4.<BR><br />
Please see [[Alpine_Wall_User's_Guide]] for details about the syntax.<br />
<br />
Some of the below features and examples assumes that you are running {{pkg|AWall}} version 0.2.12 or later.<BR><br />
Make sure you are running latest version by running the following commands:<br />
{{cmd|apk update<br />
apk add -u awall<br />
apk version awall}}<br />
<br />
== Structure ==<br />
Your {{pkg|AWall}} firewall configuration file(s) goes to {{Path|/etc/awall/optional}}<BR><br />
Each such file is called ''Policy''.<BR><br />
{{note| {{pkg|AWall}} versions prior 0.2.12 will only look for ''Policy'' files in {{Path|/usr/share/awall/optional}}.<BR>From version 0.2.12 and higher, {{pkg|AWall}} will look for ''Policy'' files in both {{Path|/etc/awall/optional}} and {{Path|/usr/share/awall/optional}}}}<br />
You may have multiple ''Policy'' files ''(it is useful to have separate files for eg. HTTP,FTP and other roles)''.<BR><br />
The ''Policy(s)'' can be enabled or disabled by using the "awall [enable|disable]" command.<br />
{{note|{{pkg|AWall}}'s ''Policy'' files are not equivalent to Shorewalls {{Path|/etc/shorewall/policy}} file.}}<br />
An {{pkg|AWall}} ''Policy'' can contain definitions of:<br />
* variables ''(like {{Path|/etc/shorewall/params}})''<br />
* zones ''(like {{Path|/etc/shorewall/zones}})''<br />
* interfaces ''(like {{Path|/etc/shorewall/interfaces}})''<br />
* policies ''(like {{Path|/etc/shorewall/policy}})''<br />
* filters and NAT rules ''(like {{Path|/etc/shorewall/rules}})''<br />
* services ''(like {{Path|/usr/share/shorewall/macro.HTTP}})''<br />
<br />
== Prerequisites ==<br />
After installing {{pkg|AWall}}, you need to load the following iptables modules:<br />
{{cmd|modprobe ip_tables<br />
modprobe iptable_nat #if NAT is used}}<br />
<br />
This is needed only the first time, after {{pkg|AWall}} installation.<br />
<br />
Make the firewall autostart at boot and autoload the needed modules:<br />
{{cmd|rc-update add iptables<br />
rc-update add ip6tables}}<br />
<br />
= A Basic Home Firewall =<br />
We will give a example on how you can convert a "Basic home firewall" from Shorewall to {{pkg|AWall}}.<br />
<br />
== Example firewall using Shorewall ==<br />
Let's suppose you have the following Shorewall configuration:<br />
<br />
'''/etc/shorewall/zones'''<br />
<pre><br />
inet ipv4<br />
loc ipv4<br />
</pre><br />
<br />
'''/etc/shorewall/interfaces'''<br />
<pre><br />
inet eth0<br />
loc eth1<br />
</pre><br />
<br />
'''/etc/shorewall/policy'''<br />
<pre><br />
fw all ACCEPT<br />
loc inet ACCEPT<br />
all all DROP<br />
</pre><br />
<br />
'''/etc/shorewall/masq'''<br />
<pre><br />
eth0 0.0.0.0/0<br />
</pre><br />
<br />
== Example firewall using AWall ==<br />
Now we will configure {{pkg|AWall}} to do the same thing as we just did with the above Shorewall example.<br />
<br />
Create a new file called {{Path|/etc/awall/optional/test-policy.json}} and add the following content to the file.<BR><br />
{{Tip|You could call it something else as long as you save it in {{Path|/etc/awall/optional/}} and name it {{Path|???'''.json'''}})}}<br />
<pre><br />
{<br />
"description": "Home firewall",<br />
<br />
"zone": {<br />
"inet": { "iface": "eth0" },<br />
"loc": { "iface": "eth1" }<br />
},<br />
<br />
"policy": [<br />
{ "in": "_fw", "action": "accept" },<br />
{ "in": "loc", "out": "inet", "action": "accept" }<br />
],<br />
<br />
"snat": [<br />
{ "out": "inet" }<br />
]<br />
}<br />
</pre><br />
The above configuration will:<br />
* Create a description of your ''Policy''<br />
* Define ''zones''<br />
* Define ''policy''<br />
* Define ''snat'' ''(to masqurade the outgoing traffic)''<br />
{{Note|''snat'' means "source NAT". It does <u>not</u> mean "static NAT".}}<br />
{{Tip| {{pkg|AWall}} has a built-in zone named "_fw" which is the "firewall itself". This corresponds to the Shorewall "fw" zone.}}<br />
<br />
=== Activating/Applying a Policy ===<br />
After saving the ''Policy'' you can run the following commands to activate your firewall settings:<br />
{{cmd|awall list # Listing available 'Policy(s)' (This step is optional)<br />
awall enable test-policy # Enables the 'Policy'<br />
awall activate # Genereates firewall configuration from the 'Policy' files and enables it (starts the firewall)}}<br />
<br />
If you have multiple policies, after enabling or disabling them, you need to always run ''awall activate'' in order to update the iptables rules.<br />
<br />
= Advanced Firewall settings =<br />
Assuming you have your {{Path|/etc/awall/optional/test-policy.json}} with your "Basic home firewall" settings, you could choose to modify that file to test the below examples.<br />
{{tip|You could create new files in {{Path|/etc/awall/optional/}} for testing some of the below examples}}<br />
<br />
== Logging ==<br />
{{pkg|AWall}} will ''(since v0.2.7)'' automatically log dropped packets.<BR><br />
You could add the following row to the "policy" section in your ''Policy'' file in order to see the dropped packets.<br />
<pre>{ "in": "inet", "out": "loc", "action": "drop" }</pre><br />
{{Note|If you are using Alpine 2.4 repository ({{pkg|AWall}} v0.2.5 or below), you should use <code>"action": "logdrop"</code> in order to log dropped packets .}}<br />
{{Note|If you are adding the above content to an already existing file, then make sure you add "," signs where they are needed!}}<br />
<br />
== Port-Forwarding ==<br />
Let's suppose you have a local web server (192.168.1.10) that you want to make accessible from the "inet".<BR><br />
With Shorewall you would have a rule like this in your {{Path|/etc/shorewall/rules}}:<br />
<pre><br />
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL<br />
# PORT(S) PORT(S) DEST<br />
DNAT inet loc:192.168.1.10 tcp 80<br />
</pre><br />
<br />
Lets configure our {{pkg|AWall}} ''Policy'' file likewise by adding the following content.<br />
<pre><br />
"variable": {<br />
"APACHE": "192.168.1.10",<br />
"STATIC_IP": "1.2.3.4"<br />
},<br />
<br />
"filter": [<br />
{ "in": "inet", <br />
"dest": "$STATIC_IP", <br />
"service": "http", <br />
"action": "accept", <br />
"dnat": "$APACHE" <br />
}<br />
]<br />
</pre><br />
As you can see in the above example, we create a<br />
* "variable" section where we specify some IP-addresses<br />
* "filter" section where we do the actual port-forwarding (using the variables we just created and using some preexisting "services" definitions)<br />
{{Note|If you are adding the above content to a already existing file, then make sure you add "," signs where they are needed!}}<br />
{{Tip|{{pkg|AWall}} already has a "service" definition list for several services like HTTP, FTP, SNMP, etc. ''(see {{Path|/usr/share/awall/mandatory/services.json}})''}}<br />
<br />
If you need to forward to a different port (e.g. 8080) you can do:<br />
<br />
<pre><br />
"dnat": [<br />
{"in": "inet", "dest": "$STATIC_IP", "to-addr": "$APACHE", "service": "http", "to-port": 8080 }<br />
]<br />
</pre><br />
<br />
== Create your own service definitions ==<br />
You can add your own service definitions into your ''Policy'' files:<br />
<pre><br />
"service": { <br />
"openvpn": { "proto": "udp", "port": 1194 }<br />
}<br />
</pre><br />
{{Note|You can not override a "service" definition that comes from {{Path|/usr/share/awall/mandatory/services.json}} }}<br />
{{Note|If you are adding the above content to a already existing file, then make sure you add "," signs where they are needed!}}<br />
<br />
== Inherit services or variables == <br />
You can import a ''Policy'' into other ''Policy'' files for inheriting services or variables definitions:<br />
<pre><br />
"import": "myfirewall"<br />
</pre><br />
<br />
== Specify load order ==<br />
By default policies are loaded on alphabetical order.<BR><br />
You can change the load order with the keywords "before" and "after":<br />
<pre><br />
"before": "myfirewall"<br />
"after": "someotherpolicy"<br />
</pre><br />
<br />
= Other =<br />
== Help and debugging ==<br />
If you end up in some kind of trouble, you might find some commands useful when debugging:<br />
{{cmd|awall # (With no parameters) Shows some basic help about awall application<br />
awall dump # Dump definitions like zones and variables<br />
iptables -L -n # Show what's in <code>iptables</code>}}<br />
<br />
<br />
[[Category:Networking]]<br />
[[Category:Security]]</div>Silencehttps://wiki.alpinelinux.org/w/index.php?title=Tutorials_and_Howtos&diff=13702Tutorials and Howtos2017-07-28T04:21:39Z<p>Silence: Adding a sound tutorial under the Desktop Environment section</p>
<hr />
<div>[[Image:package_edutainment.svg|right|link=]]<br />
{{TOC left}}<br />
'''Welcome to Tutorials and Howtos, a place of basic and advanced configuration tasks for your Alpine Linux.'''<br />
<br />
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.<br />
<br />
Howtos are smaller articles explaining how to perform a particular task with Alpine Linux.<br />
<br />
We encourage people to send in both complete articles as well as requesting topics to be covered. If you think you have the skills and knowledge to write an Alpine Linux related article please do so on this Wiki. If you want to request a topic, please add your request in this page's [[Talk:Tutorials_and_Howtos|Discussion]].<br />
<br />
{{Clear}}<br />
== Storage ==<br />
<br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)'' <!-- Installation and Storage --><br />
** [[Back Up a Flash Memory Installation]] <!-- Installation and Storage --><br />
** [[Manually editing a existing apkovl]]<br />
<br />
* [[Setting up disks manually]] <!-- Installation and Storage --><br />
* [[Setting up a software RAID array]]<br />
<!-- ** [[Setting up a /var partition on software IDE raid1]] Obsolete, Installation and Storage --> <br />
* [[Raid Administration]]<br />
* [[Setting up encrypted volumes with LUKS]]<br />
* [[Setting up LVM on LUKS]]<br />
* [[Setting up Logical Volumes with LVM]]<br />
** [[Setting up LVM on GPT-labeled disks]]<br />
** [[Installing on GPT LVM]]<br />
* [[Filesystems|Formatting HD/Floppy/Other]] <!-- just a stub --><br />
<br />
* [[Setting up iSCSI]]<br />
** [[iSCSI Raid and Clustered File Systems]]<br />
* [[Setting up NBD]]<br />
* [[High performance SCST iSCSI Target on Linux software Raid]] ''(deprecated)'' <!-- solution --><br />
* [[Linux iSCSI Target (TCM)]]<br />
* [[Disk Replication with DRBD]] <!-- draft --><br />
<br />
* [[Burning ISOs]] <!-- just some links now --><br />
* [[Partitioning and Bootmanagers]]<br />
* [[Migrating data]]<br />
* [[Create a bootable SDHC from a Mac]]<br />
* [[Alpine on ARM]]<br />
<br />
== Networking ==<br />
<br />
* [[Configure Networking]]<br />
* [[Connecting to a wireless access point]]<br />
* [[Bonding]]<br />
* [[Vlan]]<br />
* [[Bridge]]<br />
* [[OpenVSwitch]]<br />
* [[How to configure static routes]]<br />
<br />
* [[Alpine Wall]] - [[How-To Alpine Wall]] - [[Alpine Wall User's Guide]] ''(a new firewall management framework)''<br />
<br />
* [[PXE boot]]<br />
<br />
* [[Using serial modem]]<br />
* [[Using HSDPA modem]]<br />
* [[Setting up Satellite Internet Connection]]<br />
* [[Using Alpine on Windows domain with IPSEC isolation]]<br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)'' <!-- Server and Networking --><br />
* [[How to setup a wireless access point]] ''(Setting up Secure Wireless AP w/ WPA encryption with bridge to wired network)''<br />
* [[Setting up a OpenVPN server with Alpine]] ''(Allowing single users or devices to remotely connect to your network)''<br />
<!-- [[Using Racoon for Remote Sites]] is a different VPN tunnelling method, but that article is just a stub --><br />
* [[Experiences with OpenVPN-client on ALIX.2D3]] <!-- solution --><br />
<br />
* [[Generating SSL certs with ACF]] <!-- Generating SSL certs with ACF 1.9 --><br />
* [[Setting up unbound DNS server]]<br />
* [[Setting up nsd DNS server]]<br />
* [[TinyDNS Format]]<br />
* [[Fault Tolerant Routing with Alpine Linux]] <!-- solution --><br />
* [[Freeradius Active Directory Integration]]<br />
* [[Multi_ISP]] ''(Dual-ISP setup with load-balancing and automatic failover)''<br />
* [[OwnCloud]] ''(Installing OwnCloud)''<br />
<br />
* [[Seafile: setting up your own private cloud]]<br />
<br />
== Post-Install ==<br />
<!-- If you edit this, please coordinate with Installation#Post-Install and Developer_Documentation#Package_management. Note that these three sections are not exact duplicates. --><br />
<br />
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)''<br />
<!-- [[Alpine Linux package management#Local_Cache|How to enable APK caching]] --><br />
** [[Comparison with other distros]]<br />
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''<br />
** [[Back Up a Flash Memory Installation]] <!-- new --><br />
** [[Manually editing a existing apkovl]]<br />
* [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically boot at next reboot)''<br />
** [[Multiple Instances of Services]]<br />
<!-- [[Writing Init Scripts]] --><br />
* [[Alpine setup scripts#setup-xorg-base|Setting up Xorg]]<br />
* [[Upgrading Alpine]]<br />
<!-- Obsolete<br />
[[Upgrading Alpine - v1.9.x]]<br />
[[Upgrading Alpine - CD v1.8.x]]<br />
[[Upgrading Alpine - HD v1.8.x]]<br />
[[Upgrade to repository main|Upgrading to signed repositories]]<br />
--><br />
<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
* [[setup-acf]] ''(Configures ACF (webconfiguration) so you can manage your box through https)''<br />
* [[Changing passwords for ACF|Changing passwords]]<br />
* [[Ansible]] ''(Configuration management)''<br />
<br />
* [[Enable Serial Console on Boot]]<br />
<!-- Obsolete?<br />
* [[Error message on boot: Address space collision: host bridge window conflicts with Adaptor ROM]]<br />
--><br />
* [[How to get regular stuff working]] ''some notes on need-to-know topics''<br />
* [[Rsnapshot|Setting up periodic backups with <samp>rsnapshot</samp>]]<br />
<br />
== Virtualization==<br />
<br />
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''<br />
* [[Xen Dom0 on USB or SD]]<br />
* [[Create Alpine Linux PV DomU]]<br />
* [[Xen PCI Passthrough]]<br />
* [[Xen LiveCD]]<br />
* [[qemu]]<br />
* [[LXC]] ''(Setting up a Linux container in Alpine Linux)''<br />
* [[Docker]]<br />
* [[Install_Alpine_on_VirtualBox]]<br />
<br />
== Desktop Environment ==<br />
<br />
* [[Awesome(wm) Setup]]<br />
* [[EyeOS]] ''(Cloud Computing Desktop)''<br />
* [[Gnome Setup]]<br />
* [[MATE|MATE Setup]]<br />
* [[Oneye]] ''(Cloud Computing Desktop - Dropbox Alternative)''<br />
* [[Owncloud]] ''(Cloud Computing Desktop - Dropbox Alternative)''<br />
** (to be merged with [[OwnCloud]] ''(Your personal Cloud for storing and sharing your data on-line)'')<br />
* [[Remote Desktop Server]]<br />
* [[Suspend on LID close]]<br />
* [[XFCE Setup]] and [[Xfce Desktop|Desktop Ideas]]<br />
* [[Installing Adobe flash player for Firefox]]<br />
* [[Sound Setup]]<br />
<br />
== Raspberry Pi ==<br />
<br />
* [[Raspberry Pi|Raspberry Pi (Installation)]]<br />
* [[RPI Video Receiver]] ''(network video decoder using Rasperry Pi and omxplayer)''<br />
* [[Linux Router with VPN on a Raspberry Pi]]<br />
* [[Raspberry Pi 3 - Configuring it as wireless access point -AP Mode]]<br />
* [[Raspberry Pi 3 - Setting Up Bluetooth]]<br />
<br />
== Applications ==<br />
<br />
=== Telephony ===<br />
* [[Setting up Zaptel/Asterisk on Alpine]]<br />
** [[Setting up Streaming an Asterisk Channel]]<br />
* [[Freepbx on Alpine Linux]]<br />
* [[FreePBX_V3]] ''(FreeSWITCH, Asterisk GUI web acces tool)''<br />
* [[2600hz]] ''(FreeSWITCH, Asterisk GUI web access tool)''<br />
* [[Kamailio]] ''(SIP Server, formerly OpenSER)''<br />
<br />
=== Mail ===<br />
* [[Hosting services on Alpine]] ''(Hosting mail, webservices and other services)''<br />
** [[Hosting Web/Email services on Alpine]]<br />
* [[ISP Mail Server HowTo]] <!-- solution, Mail --><br />
** [[ISP Mail Server Upgrade 2.x]]<br />
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''<br />
* [[Roundcube]] ''(Webmail system)''<br />
* [[Setting up postfix with virtual domains]]<br />
* [[Protecting your email server with Alpine]]<br />
* [[Setting up clamsmtp]]<br />
* [[Setting up dovecot with imap and ssl]]<br />
* [[relay email to gmail (msmtp, mailx, sendmail]]<br />
<br />
=== HTTP ===<br />
* [[Lighttpd]]<br />
** [[Lighttpd Https access]]<br />
** [[Setting Up Lighttpd with PHP]]<br />
** [[Setting Up Lighttpd With FastCGI]]<br />
* [[Cherokee]]<br />
* [[Nginx]]<br />
* [[Nginx as reverse proxy with acme (letsencrypt)]]<br />
* [[Apache]]<br />
** [[Apache with php-fpm]]<br />
** [[Setting Up Apache with PHP]]<br />
** [[Apache authentication: NTLM Single Signon]]<br />
<br />
* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)'' <!-- solution, Server --><br />
<br />
* [[Setting up Transparent Squid Proxy]] <!-- draft --><br />
** [[SqStat]] ''(Script to look at active squid users connections)''<br />
** [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp --><br />
* [[Setting up Explicit Squid Proxy]]<br />
<br />
* [[Drupal]] ''(Content Management System (CMS) written in PHP)''<br />
* [[WordPress]] ''(Web software to create website or blog)''<br />
* [[MediaWiki]] ''(Free web-based wiki software application)''<br />
* [[DokuWiki]]<br />
* [[Darkhttpd]]<br />
<br />
=== Other Servers ===<br />
* [[Setting up a ssh-server]] ''(Using ssh is a good way to administer your box remotely)''<br />
<br />
* [[Setting up a nfs-server]]<br />
* [[Setting up a samba-server]] ''(standard file sharing)''<br />
* [[Setting up a samba-ad-dc]] ''(Active Directory compatible domain controller)''<br />
* [[Phpizabi]] ''(Social Networking Platform)''<br />
* [[Statusnet]] ''(Microblogging Platform)''<br />
* [[Pastebin]] ''(Pastebin software application)''<br />
* [[Setting up Transmission (bittorrent) with Clutch WebUI]]<br />
<br />
* [[Patchwork]] ''(Patch review management system)''<br />
* [[Redmine]] ''(Project management system)''<br />
* [[Request-Tracker]] ''(Ticket system)''<br />
* [[OsTicket]] ''(Ticket system)''<br />
* [[Setting up trac wiki|Trac]] ''(Enhanced wiki and issue tracking system for software development projects)''<br />
<br />
* [[Cgit]]<br />
** [[Setting up a git repository server with gitolite and cgit]] <!-- doesn't exist yet --><br />
* [[Roundcube]] ''(Webmail system)''<br />
* [[Glpi]] ''(Manage inventory of technical resources)''<br />
<br />
* [[How to setup a Alpine Linux mirror]]<br />
* [[Cups]]<br />
* [[NgIRCd]] ''(Server for Internet Relay Chat/IRC)''<br />
* [[OpenVCP]] ''(VServer Control Panel)''<br />
* [[Mahara]] ''(E-portfolio and social networking system)''<br />
* [[Chrony and GPSD | Using chrony, gpsd, and a garmin LVC 18 as a Stratum 1 NTP source ]]<br />
* [[Sending SMS using gnokii]]<br />
<br />
=== Monitoring ===<br />
* Setting up [[collectd]]<br />
* [[Traffic monitoring]] <!-- Networking and Monitoring --><br />
* [[Setting up traffic monitoring using rrdtool (and snmp)]] <!-- Monitoring --><br />
* [[Setting up monitoring using rrdtool (and rrdcollect)]]<br />
* [[Setting up Cacti|Cacti]] ''(Front-end for rrdtool networking monitor)''<br />
* [[Setting up Zabbix|Zabbix]] ''(Monitor and track the status of network services and hardware)''<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft, solution, Networking and Monitoring and Server --><br />
** [[Setting up NRPE daemon]] ''(Performs remote Nagios checks)'' <!-- Networking and Monitoring --><br />
* [[Setting up Smokeping|Smokeping]] ''(Network latency monitoring)'' <!-- Networking and Monitoring --><br />
** [[Setting up MRTG and Smokeping to Monitor Bandwidth Usage and Network Latency]]<br />
* [[Setting Up Fprobe And Ntop|Ntop]] ''(NetFlow collection and analysis using a remote fprobe instance)'' <!-- Networking and Monitoring --><br />
* [[Cvechecker]] ''(Compare installed packages for Common Vulnerabilities Exposure)'' <!-- Monitoring and Security --><br />
<br />
* [[IP Accounting]] <!-- Networking and Monitoring --><br />
* [[Obtaining user information via SNMP]] ''(Using squark-auth-snmp as a Squid authentication helper)'' <!-- Networking and Server, <== Using squark-auth-snmp --><br />
* [[SqStat]] ''(Script to look at active squid users connections)''<br />
<br />
* [[Piwik]] ''(A real time web analytics software program)''<br />
* [[Awstats]] ''(Free log file analyzer)''<br />
* [[Intrusion Detection using Snort]]<br />
** [[Intrusion Detection using Snort, Sguil, Barnyard and more]]<br />
* [[Dglog]] ''(Log analyzer for the web content filter DansGuardian)''<br />
<br />
* [[Webmin]] ''(A web-based interface for Linux system)''<br />
* [[PhpPgAdmin]] ''(Web-based administration tool for PostgreSQL)''<br />
* [[PhpMyAdmin]] ''(Web-based administration tool for MYSQL)''<br />
* [[PhpSysInfo]] ''(A simple application that displays information about the host it's running on)''<br />
* [[Linfo]]<br />
<br />
* [[Setting up lm_sensors]]<br />
<br />
* [[ZoneMinder video camera security and surveillance]]<br />
<br />
== Misc ==<br />
<br />
* [[:Category:Shell]]<br />
* [[:Category:Programming]]<br />
* [[Running glibc programs]]<br />
* [[:Category:Drivers]]<br />
* [[:Category:Multimedia]]<br />
* [[Kernel Modesetting]]<br />
* [[CPU frequency scaling]]<br />
<br />
== Complete Solutions ==<br />
* [[DIY Fully working Alpine Linux for Allwinner and Other ARM SOCs]]<br />
* [[Replacing non-Alpine Linux with Alpine remotely]]<br />
* [[High performance SCST iSCSI Target on Linux software Raid]]<br />
* [[Fault Tolerant Routing with Alpine Linux]]<br />
* [[Experiences with OpenVPN-client on ALIX.2D3]]<br />
* [[Building a cloud with Alpine Linux]]<br />
<br />
* [[ISP Mail Server HowTo]] ''(Postfix+PostfixAdmin+DoveCot+Roundcube+ClamAV+Spamd - A full-serivce ISP mail server)''<br />
** [[ISP Mail Server Upgrade 2.x]]<br />
** [[ISP Mail Server 2.x HowTo]] ''(Beta, please test)''<br />
* [[High Availability High Performance Web Cache]] ''(uCarp + HAProxy for High Availability Services such as Squid web proxy)''<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)'' <!-- draft --><br />
* [[Streaming Security Camera Video with VLC]]<br />
* [[Dynamic Multipoint VPN (DMVPN)]] combined with [[Small_Office_Services]]<br />
<br />
<br />
<!--<br />
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]].<br />
<br />
== Drafts ==<br />
Currently unfinished/works-in-progress.<br />
* [[Using Racoon for Remote Sites]]<br />
* [[Setting up Transparent Squid Proxy]] ''(Covers Squid proxy and URL Filtering system)''<br />
** [[Obtaining user information via SNMP]] ''(Using the Squark Squid authentication helper)'' [!-- no longer a draft --]<br />
* [[Setting up Streaming an Asterisk Channel]]<br />
* [[Setting up A Network Monitoring and Inventory System]] ''(Nagios + OpenAudit and related components)''<br />
* [[Intrusion Detection using Snort]] ''(Installing and configuring Snort and related applications on Alpine 2.0.x)''<br />
* [[IP Accounting]] ''(Installing and configuring pmacct for IP Accounting, Netflow/sFlow collector)''<br />
* [[Disk Replication with DRBD]]<br />
--></div>Silencehttps://wiki.alpinelinux.org/w/index.php?title=ALSA&diff=13700ALSA2017-07-28T04:17:23Z<p>Silence: Adding a tutorial on how to get sound working after installation of alpine-linux.</p>
<hr />
<div>First you will need to install Alsa packages, the Linux sound driver and volume adjuster.<br />
<br />
<code># apk add alsa-utils alsa-utils-doc alsa-lib alsa-conf</code><br />
<br />
Then you will need to add all your users (including root) to /etc/group.<br />
<br />
<code># nano /etc/group</code><br />
<br />
Scroll down until you find the line that starts with "audio:x:18:" and add all the users, for example if the name of root is "root" and a user is "user", separated by commas.<br />
<br />
<code>audio:x:18:root,user</code><br />
<br />
Save your nano work by pressing Ctrl+O and confirm the changes by pressing enter. Then exit nano by pressing Ctrl+X.<br />
<br />
Find the default sound card.<br />
<br />
<code># alsamixer</code><br />
<br />
The default sound card will show up. Try turning up the volume of Master and the device(s) such as speakers or microphones that you need, and audio should work.<br />
<br />
If there are no volume controls visible, try hitting F6 on your keyboard and toggling between the sound cards (which all might have the same name in the context menu that pops up except for the numbers next to and before the names).<br />
<br />
Once you've found the sound card name that gives you volume controls, set the unique number that showed up in the F6 context menu as your default soundcard.<br />
<br />
<code># nano /usr/share/alsa/alsa.conf</code><br />
<br />
Scroll down until you find the lines that start with "defaults.ctl.card" and "defaults.pcm.card" and put the number (you found in the F6 context menu of the alsamixer command for the soundcard you want as your default) at the end of those lines separated by a space for each. For example, if the default sound card you want is "1".<br />
<br />
<code>defaults.ctl.card 1</code><br />
<br />
<code>defaults.pcm.card 1</code><br />
<br />
Save your nano work by pressing Ctrl+O and confirm the changes by pressing enter. Then exit nano by pressing Ctrl+X.<br />
<br />
Try turning up the volume of Master and the device(s) such as speakers or microphones that you need with the alsamixer command, and audio should work.<br />
<br />
Help needed: how to make the default sound card and device show up in the Audio Mixer GUI in the XFCE menu and taskbar, so that you can use a GUI instead of the alsamixer command in the terminal?</div>Silence