目的:   实现家中nas,在任何环境ssh访问

方案:n2n v1 (原因稳定&兼容macbook)

开源地址: https://svn.ntop.org/svn/ntop/trunk/n2n

设备:

  • gen8 debain系统(家中nas)
  • 阿里云ecs主机,提供外网服务实现内网穿透握手(外网及nginx http转发)
  • macbook 工作电脑

首先,登录云主机,安装n2n

yum install subversion gcc-c++ openssl-devel
svn co https://svn.ntop.org/svn/ntop/trunk/n2n
cd n2n/n2n_v1/
make && make install

---super节点服务起来---
vim /etc/sysconfig/iptables
*filter下配置
-A INPUT -p tcp -m tcp --dport 5000 -j ACCEPT

#配置开机启动,配置在/etc/rc.local里 可以开机启动执行,确保不受重启丢失

vi /etc/rc.local +
supernode -l 5000 -v >/dev/null &

-------------

gen8 安装n2n 执行配置

edge -d n2n1 -c 自定义的内网组名 -k 自定义密钥 -a 111.0.0.4 -l 云主机外网ip:5000 &

mac本
sudo edge -d n2n1 -c 自定义的内网组名 -k 自定义密钥 -a 111.0.1.3 -l 云主机外网ip:5000 -M 1300 -v &

以上配置完成,可以在mac上愉快的通过ssh root@111.0.0.4 访问gen8,也可以在ecs主机上配置nginx转发gen8上的对外服务,比如wiki之类的(前提ecs也加入节点)

如果无法访问,请确定ecs网络模式是否经典模式

------mac编译n2n------------------
重点
brew install cmake
cmake ./
make
 解决Mac OS X 10.11 El Capitan 上 openssl/aes.h file not found 的问题
 从官方SVN里面co下代码,在OS X下编译n2n_v1还是n2n_v2,进入到相应的目录
cp -R /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-migrator/sdk/MacOSX.sdk/usr/include/openssl /usr/local/include/
 
方案:编辑tuntap_osx.c这个文件
1 注释掉void tun_close(tuntap_dev *device);这行代码。
2 将tun_close(device);这段代码更换为tuntap_close(device);
 
 

n2n网络环境搭建的更多相关文章

  1. Hyperledger Fabric1.4 网络环境搭建步骤

    1.  外部访问虚拟机: 安装ssh apt-get install openssh-server openssh-client 2.  安装vim sudo apt install vim 3.  ...

  2. openstack(liberty):部署实验平台(一,基础网络环境搭建)

    openstack项目的研究,到今天,算是要进入真实环境了,要部署实验平台了.不再用devstack了.也就是说,要独立controller,compute,storage和network了.要做这个 ...

  3. Windows Server 2008在网络环境配置打印机

    下面学习在Windows Server2008在网络环境搭建打印机服务器,打印机服务器也是很常用的,特别是在中大型企业里面,打印机数量比较多为方便管理,可以搭建一个打印机服务,这里介绍一下,本地打印机 ...

  4. Linux巩固记录(1) J2EE开发环境搭建及网络配置

    由于要近期使用hadoop等进行相关任务执行,操作linux时候就多了 以前只在linux上配置J2EE项目执行环境,无非配置下jdk,部署tomcat,再通过docker或者jenkins自动部署上 ...

  5. unix网络编程环境搭建

    unix网络编程环境搭建 网络编程 环境 1.点击下载源代码 可以通过下列官网中的源代码目录下载最新代码: http://www.unpbook.com/src.html 2.解压文件 tar -xz ...

  6. 【UNIX网络编程第三版】阅读笔记(一):代码环境搭建

    粗略的阅读过<TCP/IP详解>和<计算机网络(第五版)>后,开始啃这本<UNIX网络编程卷一:套接字联网API>,目前linux下的编程不算太了解,在阅读的过程中 ...

  7. 《UNIX网络编程 卷1》之"学习环境搭建"(CentOS 7)

    <UNIX网络编程 卷1>的源码可以从www.unpbook.com下载得到.解压之后的目录为unpv13e. 详细步骤 编译 进入unpv13e目录,按如下步骤编译: ./configu ...

  8. OpenDaylight虚拟租户网络(VTN)详解及开发环境搭建

    一.VTN简介及架构分析:   具体详见开发人员指南wiki:https://wiki.opendaylight.org/view/Release/Lithium/VTN/developer_Guid ...

  9. Unix网络编程之环境搭建

    环境搭建 在尝试UNP书上的样例时,会由于找不到"unp.h"等问题无法编译成功.因此在学习之前须要先搭建好编译环境. 步骤 <1>下载  UNIX网络编程源码unpv ...

随机推荐

  1. python远程连接windows

    远程连接windows系统     https://blog.51cto.com/ckl893/2145809 import winrm win2008 = winrm.Session('http:/ ...

  2. lambda函数式编程

    一.接口注解(@FunctionalInterface) @FunctionalInterface interface Interface1 { public void print(); } publ ...

  3. python3下获取主流浏览器和python的安装路径

    #coding=utf-8#python3下获取主流浏览器和python的安装路径#by dengpeiyou date:2018-07-09import winreg,os #取得浏览器的安装路径d ...

  4. Canvas 实现绘制图表

    这里用canvas实现了两个简单的图表,用到了canvas的基本用法,效果如下 新建 chart.js 文件,封装绘制方法 构造方法 function myChart(config){ this.wi ...

  5. thinkphp5.1明明密码的一致的 却说不一致的解决办法

    protected $rule = [       'password|密码'=>[                       'require',           'length:6,2 ...

  6. js:获取事件源的兼容性写法

    XXX.onclick = function(e){ var event = e || window.event; var target = event.target || event.srvElem ...

  7. Linux命令:let

    语法 let  expr [expr ...] 说明 计算c的算术表达式.详细说明请参考<Bash参考指南-6.5 shell算术运算>

  8. SQL Select 语句小数位数影响计算的准确率的问题

    在财务数据计算中,特别是分摊过程中,0.0001% 和0.00012%看似极小的差异,但是会造成最后求和很大的差异,因此,我们在计算中需要尽可能多的保留占比的小数位数 可以在SELECT CONVER ...

  9. JavaScript中面相对象OOP

    方法 方法的原型链 <html> <head> <title></title> </head> <script type=" ...

  10. ansible简介,简单实用

    Ansible ansilbe是实现自动化运维的工具,基于python开发,实现批量系统配置,批量程序部署,批量运行命令等功能. ansible是基于模块工作的,自身是没有批量部署的能力.真正具有批量 ...