阿里云 opensips nat内网穿透

书接上文,上次在阿里云安装好opensips之后,发现无法在公网ip监听。为了能够快速测试后续改用内网服务器搭建sips服务器。现在功能差不多了,于是就需要将opensips服务器重新部署到公网上。不得不再次面对这个蛋疼的问题。通过搜索之后发现可以通过rtpproxy实现内网穿透?(这个说不知道准不准去,没有深入研究实现原理)

方法也比较简单,安装rtpproxy:

sudo apt-get install rtpproxy

安装之后修改opensips.cfg配置文件,添加如下内容:

#rtpproxy
loadmodule "rtpproxy.so"
modparam("rtpproxy", "rtpproxy_sock", "unix:/var/run/rtpproxy/rtpproxy.sock") #需要将unix路径修改为rtpproxy对应的sock路径。
Continue Reading

ubuntu 18.04 安装opensips 3.1

OpenSIPS is an Open Source SIP proxy/server for voice, video, IM, presence and any other SIP extensions.OpenSIPS is a multi-functional, multi-purpose signaling SIP server used by carriers, telecoms or ITSPs for solutions like Class4/5 Residential Platforms, Trunking / Wholesale, Enterprise / Virtual PBX Solutions, Session Border Controllers, Application Servers, Front-End Load Balancers, IMS Platforms, Call Centers, and many others – see the full Set of Features.

搜索一下网上安装opensips的文章基本都是源码安装的,虽然从源码安装并不是十分困难,但是在安装过程中需要处理各种依赖库。并且在某些系统上会出现编译不过的问题,在阿里云的服务器上很容易就通过源码安装好了opensips。但是由于阿里云的ecs没有经典网络,所以无法在公网ip绑定服务,导致客户端无法正常连接。如果有在阿里云部署服务的,那么可能会在这个地方失败。

在内网尝试部署的时候出现了另外一个问题,那就是源码编译不过去。搜索了一下发现其实可以通过ubuntu的apt命令进行安装,不过官方的apt源限定了linux的发行版本。所以在安装之前最好先确认一下,建议使用ubuntu18.04.

Continue Reading

群晖 NAS Python3 PIP

群晖默认的python版本为python2.如果要安装python3可以通过套件中心进行安装

安装的python并没有带pip工具,如果直接执行

pip3 install requests

会直接报错:-sh: pip3: command not found

通过如下命令安装pip3:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py

安装成功之后可能会出现如下警告:

提示安装路径不在PATH中。要解决这个问题可以将路径添加到PATH变量中,或者在执行的时候切换到指定的目录:

不过比较坑的一点事群晖的sh即使在切换到安装目录之后依然会提示命令未找到,可以通过以下命令安装库:

./pip3 install requests

Continue Reading

EC2通过命令上传文件到S3

爬虫文件在服务器上爬取数据的时候下载了很多的数据,为了保存这些数据,给这些数据做个备份于是就想把文件传到s3存储上。其实要上传文件也比较简单,通过awscli命令行工具即可上传。首选需要去aws的后台创建访问安全凭证。点击用户名,选择访问密钥,创建新的访问密钥,下载之后是一个csv文件包含AWSAccessKeyId和AWSSecretKey

在服务器上安装awscli,执行

sudo apt install awscli

安装aws命令行工具。

安装完成之后执行

aws configure

进行配置,输入key和secret即可:

最后两项可以留空。

Continue Reading