# 搭建STUN服务 --- > 以centos7为例 * github地址: ```url https://github.com/jselbie/stunserver ``` * STUNServer官网: ```url http://www.stunprotocol.org/ ``` ## 部署过程(推荐Docker) > 确保已有docke环境 ```bash # 下载安装包 wget http://www.stunprotocol.org/stunserver-1.2.16.tgz # 解压 tar xvf stunserver-1.2.16.tgz # 转移目录 mv stunserver /usr/local/ cd /usr/local/stunserver docker image build -t=stun-server-image . docker run -d -p 3478:3478/tcp -p 3478:3478/udp --name=stun-server stun-server-image ``` ## 部署过程(编译安装) * 如果是centos系统: ```bash # 安装依赖 yum install -y gcc gcc-c++ make boost-devel openssl-devel cd /usr/local/src ``` * 如果是debian系统: ```bash apt install -y libboost1.74-all-dev cd /usr/src ``` ```bash # 下载安装包 wget http://www.stunprotocol.org/stunserver-1.2.16.tgz # 解压 tar xvf stunserver-1.2.16.tgz # 转移目录 mv stunserver /usr/local/ cd /usr/local/stunserver # 安装 make # 校验 ./stuntestcode # 启动服务 ./stunserver & ``` ## 防火墙 ```bash firewall-cmd --permanent --add-port=3478/udp firewall-cmd --reload ``` ## 开机启动stun服务 ```bash vim /etc/rc.local ``` 在最后添加一行 ```bash /usr/local/stunserver/stunserver & ``` 对rc.local添加执行权限 ```bash chmod +x /etc/rc.d/rc.local ``` ## 配置freeswitch ```bash cd /usr/local/freeswitch/conf vim vars.xml ``` 把stun-set中的服务地址换成刚配置好的stun服务器地址