1. 项目概述
FreeSWITCH作为一款开源的软交换平台,在VoIP领域有着广泛的应用。本教程将详细介绍在CentOS和Debian两大主流Linux发行版上搭建FreeSWITCH(BDS版本)的完整流程。不同于简单的安装指南,这里会深入每个关键环节,包括环境准备、依赖处理、编译优化和配置调优等实战经验。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备与系统优化
2.1 系统选择考量
CentOS和Debian各有特点:
- CentOS 7/8:企业级稳定性,适合生产环境
- Debian 10/11:软件包更新及时,社区支持活跃
建议生产环境选择CentOS,开发测试可选Debian。无论哪种系统,都需要4GB以上内存和50GB存储空间。
2.2 基础环境配置
先更新系统并安装基础工具包:
bash复制# CentOS
yum update -y
yum install -y epel-release
yum groupinstall -y "Development Tools"
# Debian
apt update && apt upgrade -y
apt install -y build-essential
关键优化项:
- 关闭SELinux(CentOS)
- 调整文件描述符限制
- 设置合适的swap空间
注意:生产环境如需保留SELinux,需要额外配置策略规则
3. 依赖安装与源码编译
3.1 必备依赖项
完整依赖列表包括:
- 开发工具链(gcc, make等)
- 音频编码库(libogg, libvorbis等)
- 数据库支持(SQLite, PostgreSQL等)
- 网络协议栈(OpenSSL, libsrtp等)
CentOS安装示例:
bash复制yum install -y libjpeg-devel openssl-devel sqlite-devel \
libcurl-devel speex-devel ldns-devel libedit-devel
3.2 源码获取与编译
推荐使用Git获取最新稳定版:
bash复制git clone https://github.com/signalwire/freeswitc
