目的:   实现家中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. HTTPS 基本流程 转载 https://zhuanlan.zhihu.com/p/27395037

    协议 1.HTTP 协议(HyperText Transfer Protocol,超文本传输协议):是客户端浏览器或其他程序与Web服务器之间的应用层通信协议 . 2.HTTPS 协议(HyperTe ...

  2. 新的blog站地址

    自己用Jekyll搭建了一个静态blog网站 以后的blog随笔就更新在:https:/blog.hudunsec.cn

  3. turtle画戒指

    import turtleturtle.bgcolor('black')turtle.speed(5)turtle.pensize(3)for i in range(1,5): turtle.righ ...

  4. CWindowDC与CClientDC,CPaintDCC的区别

    [转] CClientDC: (客户区设备上下文)用于客户区的输出,与特定窗口关联,可以让开发者访问目标窗口中客户区,其构造函数中包含了GetDC,析构函数中包含了ReleaseDC.   用法是:C ...

  5. css3 实现动画

    CSS3,我们可以创建动画,它可以取代许多网页动画图像,例如下面这个小球动画 使用css3关键帧动画可以轻松实现 请看下面代码 <!DOCTYPE html> <html lang= ...

  6. C++ std::unordered_map使用std::string和char *作key对比

    最近在给自己的服务器框架加上统计信息,其中一项就是统计创建的对象数,以及当前还存在的对象数,那么自然以对象名字作key.但写着写着,忽然纠结是用std::string还是const char *作ke ...

  7. c#遍历一个对象中所有的属性和值

    SpDictItem sp = GetCFHObject.GetSpItem("); PropertyInfo[] propertys = sp.GetType().GetPropertie ...

  8. java itext替换PDF中的文本

    itext没有提供直接替换PDF文本的接口,我们可以通过在原有的文本区域覆盖一个遮挡层,再在上面加上文本来实现. 所需jar包: 1.先在PDF需要替换的位置覆盖一个白色遮挡层(颜色可根据PDF文字背 ...

  9. OOP的概念和基础特性

    OOP是面对对象程序设计,是一种程序设计范型,同时也是一种程序开发方法.它将对象作为程序的基本单元,将程序和数据封装其中,以提高程序的复用性.灵活性.可扩展行. OOP的核心思想是对象.封装.可复用性 ...

  10. 深入Dockerfile(一): 语法指南(转)

    最近在学习K8S,发现这两篇文章还不错,转了过来 docker官方文档Dockerfile reference的笔记. 一.机制 1.1 构建 docker构建一个镜像,需要: Dockerfile文 ...