将 Arch Linux 用作服务器系统是一个不错的选择,因为它提供了高度的灵活性和最新的软件包。不过,由于它主要面向桌面用户发行且是滚动更新的发行版,因此在配置为服务器时需要一些额外的步骤和考虑,以增强系统稳定性等。
本文是建议阅读一文在配置服务器软件方面的延续,以帮助你在 Arch Linux 上运行各种服务器软件(本地或网络)。
本文主要是各种服务器软件 Wiki 页面的索引及介绍。
参见服务器。
网页/网络服务器
在互联网中存放各种网站的服务器,主要用于企业或个人网站在互联网上的发布和运用。
Apache HTTP 服务器
Apache HTTP 服务器,简称 Apache,是非常流行的网络服务器软件。通常和脚本语言比如 PHP、数据库 MySQL 一起工作,合称为 LAMP 栈(Linux、Apache、MySQL、PHP)。
Apache HTTP 服务器一文介绍了在 Arch Linux 上安装/设置 Apache 网页服务器,以及选择安装 PHP 和 MySQL 并集成到 Apache 服务器中的方法。
GNU Artanis
GNU Artanis 是 Scheme 编程语言的第一个产品级现代网络框架。它的设计和维护都以稳健、快速和易于使用为目标,适用于专业的网络开发。
它支持的数据库(通过 guile-dbi)有 MySQL、SQLite、PostgreSQL。
GNU Artanis 主要与 Guile 一起使用。
参见 Artanis。
Caddy
Caddy 是具有 HTTP/2 功能的网页服务器,具有自动 HTTPS 配置功能。
有关 Caddy 在 Arch Linux 上的安装、配置、用法等,参见 Caddy。
Lighttpd
Lighttpd 是一个安全、快速、标准且非常灵活的网页服务器,并对高性能环境做了最佳化。
参见 Lighttpd 了解有关信息。
Nginx
Nginx(读作 "Engine X")是一个免费、开源、高性能的 HTTP 网络服务器和反向代理,也是一个 IMAP/POP3 代理服务器,由 Igor Sysoev 于 2005 年编写。
Nginx 一文描述了如何设置 nginx 并且如何通过 FastCGI 集成 PHP。
DNS 服务器
参见 域名解析#DNS 服务器。
BIND
伯克利互联网名称服务 (Berkeley Internet Name Daemon,简称 BIND) 是 DNS 协议的一个参考实现。
参见 BIND。
Cloudflared
Cloudflared 可被用于运行本地 DNS over HTTPS(DoH)服务器,也就是存根解析器。
参见 Cloudflared。
DNS-over-HTTPS
DNS-over-HTTPS是 DNS over HTTPS 的一个实现。它可以作为一个本地解析器。
参见 DNS-over-HTTPS。
Dnscrypt-proxy
dnscrypt-proxy 可以加密和认证用户和 DNS 解析服务器之间的数据传输,支持 DNS over HTTPS 和 DNSCrypt,可以避免中间人攻击和窃听。dnscrypt-proxy 兼容 DNSSEC。
参见 Dnscrypt-proxy。
dnsmasq
dnsmasq 提供 DNS 服务器、支持 DHCPv6 和 PXE 的 DHCP 服务器、TFTP 服务器。它设计为轻量且占用空间小,适用于资源受限的路由器和防火墙。还可以将 dnsmasq 配置为 DNS 缓存查询,以提高对以前访问过站点的 DNS 查找速度。
参见 dnsmasq。
systemd-resolved
systemd-resolved 是一个通过 D-Bus 接口、NSS (nss-resolve(8))解析服务和一个监听 127.0.0.53
的本地DNS解析器为本地应用提供网络名称解析的 systemd 服务。
参见 systemd-resolved。
Unbound
Unbound 是一个具有验证,递归和缓存等功能的 DNS 解析器。
参见 Unbound。
FTP 服务器
参见 分类:FTP 服务器。
Very Secure FTP Daemon
vsftpd (“Very Secure FTP Daemon“) 是一个为 UNIX 类系统开发的轻量,稳定和安全的 FTP 服务器端。
NTP 服务器
参见分类:NTP。
chrony
chrony 是一个对漫游友好的 NTP 客户端和服务端实现,专为不常在线的系统环境设计。
chrony 一文描述了如何配置并运行 chrony。
Network Time Protocol daemon
NTP 项目提供了一个名为简单 NTP 的参考实现。
Network Time Protocol daemon 一文介绍了如何设置和运行服务器和客户端 NTP 进程。
媒体服务器
Emby
Emby 是一个个人媒体服务器,它具有许多平台的客户端。它用于组织个人家庭媒体,以及在其他设备上播放。社区支持大量的频道,甚至可以与PVR和Tuner卡一起使用以远程提供电视流。
参见 Emby。
SSH 服务器
参见 安全外壳协议。
- Dropbear — 轻型 SSH 服务器。命令行 ssh 客户端名为 dbclient(1)。
- OpenSSH — 用于通过 SSH 协议远程登录的高级连接工具
仅服务端
- TinySSH — 一种简约的 SSH 服务器,仅实现 SSHv2 功能的一部分;只依赖 glibc。
Samba 服务器
Samba 是用于 Linux 和 Unix的标准 Windows 互操作性程序套件。自 1992 年以来,Samba 为所有使用 SMB/CIFS 协议的客户端提供了安全、稳定和快速的文件和打印服务,例如所有版本的 DOS 和 Windows、OS/2、Linux 和许多其他系统。
参见 Samba#服务器。
远程服务器
TigerVNC
TigerVNC 是 Virtual Network Computing (VNC) 协议的一种实现。
TigerVNC 一文着重介绍服务端的功能。
X11vnc
x11vnc是一个 VNC 服务器,它允许人们使用任何 VNC viewer 远程查看并控制真实的X显示器(即与物理显示器、键盘和鼠标相对应的显示器)。虽然它已不再由原作者 Karl Runge 开发,但 LibVNC 和 GitHub 社区已经接管了开发工作。
参见 X11vnc。
X2Go
X2Go 使你可以通过网络访问一台计算机的图形化桌面。访问时的网络传输使用了 Secure Shell 协议,因而传输是加密的。
参见 X2Go#服务器端配置。
Xrdp
xrdp 是一个守护程序,支持 Microsoft 的 Remote Desktop Protocol (RDP)。 它使用 Xvnc 或 xorgxrdp 作为其后端。
参见 Xrdp。
WebDAV 服务器
参见 WebDAV#服务器
打印服务器
游戏服务器
Minecraft
Minecraft 是一个关于破坏和放置方块的游戏。
对于基岩版 Minecraft 服务器,参见 Minecraft#基岩版服务器。
对于 Java 版 Minecraft 服务器,参见 Minecraft/Java 版服务端。
OpenTTD
对于 OpenTTD 服务器,参见 OpenTTD#服务器。
Mindustry
对于 mindustryAUR 服务器,有 mindustry-serverAUR 等软件包。
NFS 服务器
NFS 网络文件系统(Network File System)是由 Sun 公司 1984 年发布的分布式文件系统协议。它允许客户端上的用户像访问本地文件一样地访问网络上的文件。
参见 NFS#服务端配置。
多用户 Jupyter 笔记本服务器
JupyterHub 是用于 Jupyter 笔记本的多用户 Web 服务器。
参见 JupyterHub。
版本控制系统服务器
Git 服务器
Git 是由 Linux 内核作者 Linus Torvalds 设计并开发的版本控制系统(VCS),现在被用来维护 AUR 软件包以及数以千计的其他项目,其中包括 Linux 内核。
Git 服务器一文概述了如何托管 Git 服务器。有关更多信息,请参阅 Pro Git 书籍的 Git on the Server 一章。
网络界面
参见 Git 服务器#Web 界面。
Subversion 服务器
Apache Subversion 是一套功能全面的版本控制系统,最初被设计为 CVS 的改进版本。其后 Subversion 的发展大大超出了取代 CVS 的原始目标,但它的基本模型、设计和接口仍然受到了这一目标的深刻影响。
Subversion 一文主要介绍架设 svn 服务器的方法。有两种流行的 svn 服务器,内建的 svnserve
以及更高级的选择——结合了 svn 插件的 Apache HTTP 服务器。
数据库系统
MySQL
MySQL 是 Oracle 开发的,分布广泛的多线程,多用户 SQL 数据库。
Arch Linux 支持 MariaDB,这是 MySQL 的社区开发分支,旨在实现嵌入式兼容性。Oracle 的 MySQL 降到了 AUR:mysqlAUR。另一个旨在完全兼容的分支是 Percona Server,可从 percona-server包 获得。
Percona 也有 Oracle 的 InnoDB 存储引擎的分支,称为 XtraDB。MariaDB 和 Percona Server 都使用此分支。
phpMyAdmin
phpMyAdmin是一个基于网页的,帮助管理MySQL数据库的Apache/PHP前端。
参见 phpMyAdmin。
PostgreSQL
PostgreSQL 是一个开源的,社区驱动的,符合标准的对象-关系型数据库系统。
参见 PostgreSQL。
phpPgAdmin
phpPgAdmin 是一个基于网络的工具,可帮助使用 PHP 前端管理 PostgreSQL 数据库。
参见 phpPgAdmin。
SQLite
SQLite 是一个实现自包含、无服务器、零配置、事务性 SQL 数据库引擎的软件库。SQLite 是世界上部署最广泛的 SQL 数据库引擎。SQLite 的源代码在公共领域。
参见 SQLite。
Adminer
Adminer 是一个用 PHP 编写的基于网络的数据库管理工具。它可以管理 MySQL、PostgreSQL、Sqlite3、MS SQL、Oracle 数据库和 Elasticsearch。
参见 Adminer。
Elasticsearch
Elasticsearch 是基于 Lucene 的搜索引擎。它提供了一个分布式、支持多租户的全文搜索引擎,具有 HTTP 网络接口和无模式 JSON 文档。Elasticsearch 采用 Java 开发,根据 Apache License 条款开源发布。
参见 Elasticsearch。
邮件服务器
参见邮件服务器。
Postfix
Postfix 是邮件传送代理软件。据官方说,它快速、管理简单、安全,同时足够兼容 Sendmail,从而不会影响现有用户。 因此,从外面看是 sendmail-ish 风格,但内部是完全不同的。
参见 Postfix。
UW IMAP
UW IMAP 是 University of Washington 开发的 IMAP 协议的参考服务器实现。
参见 UW IMAP。
Sendmail
Sendmail 是来自 UNIX 世界的经典 SMTP 服务器。Arch Linux 还提供了 Postfix。
参见 Sendmail。
邮件列表管理系统
Mailman
Mailman 是一个邮件列表管理系统。它与邮件服务器结合使用。
参见 Mailman。
即时通讯服务器
XMPP
Jabberd2
jabberd2 是一个 XMPP 服务器,用 C 语言编写,并根据 GNU 通用公共许可作为自由软件许可。它的灵感来自 jabberd14。
参见 Jabberd2。
Matrix
Matrix 的服务端软件有 Synapse 和 Dendrite,目前 ArchWiki 和本维基上仅有关于 Synapse 的内容。关于使用 Synapse 建立 Matrix 服务器,请参阅 Matrix。
应用服务器
代理服务器
参见代理服务器。