公司官网网址,福州seo公司,wordpress连接mysql8,佛山网警GSM BTS Hacking: 利用BladeRF和开源BTS 5搭建基站 引文 如果你已经购买了Nuand#xff08;官方#xff09;BladeRF x40#xff0c;那么就可以在上面运行OpenBTS并可以输入一些指令来完成一些任务。一般来说HackRF#xff0c;是一款覆盖频率最宽的SDR板卡。它几乎所有的信息… GSM BTS Hacking: 利用BladeRF和开源BTS 5搭建基站 引文 如果你已经购买了Nuand官方BladeRF x40那么就可以在上面运行OpenBTS并可以输入一些指令来完成一些任务。一般来说HackRF是一款覆盖频率最宽的SDR板卡。它几乎所有的信息都是开源的甚至包括KiCad文件。缺点是它没有FPGA使用的低速的USB2接口,ADC/DAC的精度比较低。 再使用 bladeRF 板卡时需要注意两个“镜像”固件 (firmware) 镜像与 FPGA 镜像。二者是两个不同的概念。但是业界叫法不一有时候会把二者混为一谈。一般而言固件指的是嵌入到硬件设备中的软件存放在只读存储器 (ROM) 或者闪存 (flash) 中一般不易修改修改的操作称为“刷新”(flashing)。固件这个名词最初和微代码相关不过 bladeRF 里源代码是嵌入式 C 程序。FPGA 全名为可编程门阵列其门电路、寄存器连接可以编程重构其源程序一般是硬件描述语言 (HDL)通过综合 (synthesis) 等步骤得到二进制文件。在 bladeRF 板卡上FPGA 只是一块 Altera 芯片。在没有内置非挥发存储时FPGA 镜像需要每次上电时重新加载bladeRF 就是这种情况。所以在拿到板卡时上面已有固件但还没有 FPGA 镜像。下面本文会具体说明在使用 bladeRF 时如何刷新固件、加载/更新 FPGA 镜像、以及如何自动加载 FPGA 镜像。注意有时为了避免混淆会称 FPGA 镜像为 FPGA 比特流或者 FPGA 配置因为它就是配置了门电路等组件的连接。 本文中介绍的工具、技术带有一定的攻击性请合理合法使用。 系统 Ubuntu 12.04 LTS Server 32位下载点击我 升级git版本 sudo apt-get install software-properties-common python-software-properties
sudo add-apt-repository ppa:git-core/ppa (press enter to continue)
sudo apt-get update
sudo apt-get install git 安装一些前提软件包。 设置好之后开始安装。 将下面代码复制粘贴运行-将会开始安装 sudo apt-get install $(wget -qO - https://raw.githubusercontent.com/RangeNetworks/dev/master/build.sh | \grep installIfMissing | \grep -v { | \cut -f2 -d ) 另外一种安装方式是通过在所有文件中搜索文本文件 IFMissing然后再通过apt-get 命令来安装它。当然你也可以直接通过程序代码来操作。 值得注意的是安装时候有两个安装包会失败libzmq3 libzmq3-devel-但可以在Ubuntu系统下直接安装。 $ sudo add-apt-repository ppa:chris-lea/zeromq
$ sudo apt-get update
$ sudo apt-get install libzmq3-dbg libzmq3-dev 下一步是安装uhd当然还要注意GNURadio。运行下面的指令将会执行安装当然这回花掉一些时间而这也取决于你的电脑。 wget http://www.sbrac.org/files/build-gnuradio chmod ax ./build-gnuradio ./build-gnuradio 一旦执行完成你将会收到失败或成功的提示信息。如果失败可以选择重新安装并查看相关信息来解决问题。下面将会安装和配置 OpenBTS相关软件包括libgsm1-dev 、asterisk-dev 、asterisk-config。安装 $ sudo apt-get install libgsm1-dev asterisk-dev asterisk-config 当然你可以自主选择是否安装libusb请注意不是 libusbx 。安装可以到www.libusb.org页面下载然后将其复制到 /usr/src目录下。将/usr/lib/x86_64-linux-gnu/libusb.so原始文件备份后覆盖它。 安装OpenBTS 完成上面的事情之后现在就开始安装它吧。 1.为其OpenBTS创建一个目录结合实际情况 2.然后安装并运行它 #!/bin/bashgit clone https://github.com/RangeNetworks/openbts.git
git clone https://github.com/RangeNetworks/smqueue.git
git clone https://github.com/RangeNetworks/subscriberRegistry.git#From here and downwards you can copypaste (thats why the ; are for)
for D in *; do (echo $D;echo ;cd $D;git clone https://github.com/RangeNetworks/CommonLibs.git;git clone https://github.com/RangeNetworks/NodeManager.git);
done;
git clone https://github.com/RangeNetworks/libcoredumper.git;
git clone https://github.com/RangeNetworks/liba53.git 3.创建 libcoredumper cd libcoredumper;
./build.sh \sudo dpkg -i *.deb;
cd .. 4.创建 liba53 cd liba53;
make \sudo make install;
cd .. 5.在同一目录下check out“YateBTS” svn checkout http://voip.null.ro/svn/yatebts/trunk yatebts 6.下一步去掉 FPGA自动加载信息然后加载并打开它 vim ./yatebts/mbts/TransceiverRAD1/bladeRFDevice.cpp 从#ifdef108行到#endif129行结束这之间是空的应该为后来留为备用的。 7.更换目录YateBTS然后运行 autogen.sh $ cd opbts/yatebts
$ ./autogen.sh 8.这样就可以创建配置文件如果你立刻运行并配置脚本将会出现错误然后出现搜索YATE信息。所以先要打开它配置 $vim configure 能够找到as_fn_err $吗能够找到$LINENO变量开源软件 Yate并替换吗那么进行下一步吧 9.重新配置 ./configure 10.这个时候需要开源软件YateBTS两个文件目录 a) Peering $ cd /home/openbts/obts/yatebts/mbts/Peering
$ make b) TransceiverRAD1 $ cd /home/openbts/obts/yatebts/mbts/TransceiverRAD1
$ make 11.复制两个文件到 OpenBTS 文件目录下 $ cd ..
$ cp ./yatebts/mbts/TransceiverRAD1/transceiver-bladerf openbts/apps/
$ cd openbts/apps/
$ ln -sf transceiver-bladerf transceiver 12.编译OpenBTS $ cd /home/openbts/obts/openbts
$ ./autogen.sh
$ ./configure --with-uhd
$ make 13.下一步配置SQL-lite软件库bladeRF需要做一些修改 vim /home/openbts/obts/openbts/apps/OpenBTS.example.sql 查询并替换以下信息 完成并进行下一步 14.创建OpenBTS配置目录 $ sudo mkdir /etc/OpenBTS 15.在OpenBTS目录下安装软件库 $ sudo sqlite3 -init ./apps/OpenBTS.example.sql /etc/OpenBTS/OpenBTS.db .quit 16.一旦完成下一步可以通过命令来测试它 $ sqlite3 /etc/OpenBTS/OpenBTS.db .dump 如果看到了大量的输出数据信息那么就表明成功了。进行下一步 17.通过命令运行OpenBTS $ cd /home/openbts/obts/openbts/apps
$ sudo ./OpenBTS 如果看见系统启动你的基站准备好并启动它如果使用手机搜寻附近网络应该出现测试PLMN网络的测试信息00101。 18.如果开始上面的测试退出openBTS然后安装用户注册表sipauthserve以及smqueue需要这些才能够运行openBTS。没有这些手机不会连接测试网络。 19. 对于用户注册表必须要创建一个文件目录即/var/lib/asterisk/sqlite3dir创建它 $ sudo mkdir -p /var/lib/asterisk/sqlite3dir 20.创建 sipauthserve $ cd subscriberRegistry
$ ./autogen.sh
$ ./configure
$ make 在/home/openbts/obts/subscriberRegistry/apps目录下创建 21.下一步配置 sipauthserve $ cd /home/openbts/obts/subscriberRegistry
$ sudo sqlite3 -init subscriberRegistry.example.sql /etc/OpenBTS/sipauthserve.db .quit 22.下一步安装SMQUEUE其与SubscriberRegistry.h文件有关联可以在其目录修复它 $ cd /home/openbts/obts/smqueue
$ ln -s /home/openbts/obts/subscriberRegistry/ SR
$ autoreconf -i
$ ./configure
$ make 23.一旦完成之后就需要修改其配置文件 $ cd /home/openbts/obts/smqueue
$ sudo sqlite3 -init smqueue/smqueue.example.sql /etc/OpenBTS/smqueue.db .quit bladeRF 固件升级与FPGA镜像加载 24.在https://github.com/Nuand/bladeRF/wiki/Upgrading-bladeRF-firmware升级固件 25.完成之后在http://www.nuand.com/fpga.php下载镜像FPGA 26.加载FPGA镜像 $ bladeRF-cli -L path to fpga image file 这步一定要有耐心不要突然终止别让板子变成砖了。 27. 完成之后开始运行之前的配置的服务吧。 $ cd /home/openbts/obts/smqueue
$ sudo ./smqueue $ cd /home/openbts/obts/subscriberRegistry/apps
$ sudo ./sipauthserve $ cd /home/openbts/obts/openbts/apps
$ sudo ./OpenBTS 28.启动OpenBTSCLI $ cd /home/openbts/obts/openbts/apps/
$ sudo ./OpenBTSCLI 29. 默认情况下 OpenBTS不会接受额外的登记信息需要做到下面几点 a) 输入你手机的IMSI国际移动用户识别码 b) 设置所有的IMSI号可以被登记 config Control.LUR.OpenRegistration .* 这么做将会导致信号范围内所有的手机连接到你配置的基站上面包括隔壁的妹子or老王。 现在你可以在手机上能够搜索到基站网络了可以拨打服务电话作者那边是600做测试Asterisk。 了解更多 [1] https://github.com/Nuand/bladeRF/wiki/Minimalistic-build-and-run-test-for-OpenBTS-5 [2] https://wush.net/trac/rangepublic/wiki/BuildInstallRun#ConfiguringOpenBTS [3] https://wush.net/trac/rangepublic/wiki/CommonErrors [4] http://openbts.org/w/index.php/Main_Page [5] https://github.com/Nuand/bladeRF/wiki/Upgrading-bladeRF-firmware *参考来源linux.net.pk 本文转自 K1two2 博客园博客原文链接 http://www.cnblogs.com/k1two2/p/5379655.html 如需转载请自行联系原作者