利用内网穿透 frp 工具实现外网链接(ssh)内网树莓派设备

内网穿透原理内网穿透(Net穿透)也即端口映射,笔者粗暴理解是一种能够将外网机器与内网机器(外网无法直接访问的设备)建立通信的一种技术解决方案。百度百科尽管有许多穿越NAT的技术,但没有一项是完美的,这是因为NAT的行为是非标准化的。这些技术中的大多数都要求有一个公共服务器,而且这个服务器使用的是一个众所周知的、从全球任何地方都能访问得到的IP地址。一些方法仅在建立连接时需要使用这个服务器,而其它的方法则通过这个服务器中继所有的数据——这就引入了带宽开销的问题。具体原理详见百度百科=>https://baike.baidu.com/item/NAT%E7%A9%BF%E8%B6%8需要资源一台公网服务器(可以通过IP直接访问树莓派(也可以是电脑,以树莓派为例安装本文以frp v 0.13.0为例(具体版本可以自己定,但不保证其他版本能够成功)。笔者在go 1.7.4版本下编译frp ... Read More

工作效率之动态 IP 域名化篇

在公司里,RD 们不免会使用一些代理服务来进行抓包操作。那么就需要获取代理服务器(一般为自己的电脑)的内网 IP。然而,这个内网 IP 并不是固定不变的。所以,每次配置代理 IP 时就略显麻烦。那么,下面就来聊聊如何解决这个尴尬,提升效率。方案将非固定 IP 实时解析到域名中。利用阿里云的域名解析开发者 API 进行定时的更新。其中的定时用本机(Mac)的 Launchd 实现(类似 Linux 下的 Crontab)。原材料Mac(或者 Windows 但本文仅谈及 Mac 配置方法域名(如 ihuxu.com如果没有域名可以到 freenom.com 中注册一个免费域名,然后将其 DNS 切到阿里云免费的 DNS 云解析服务中即可。阿里云账号利用阿里云提供开发者的 DNS 管理相关的 AP步骤下载阿里云 SDK & 编写代码库:https://github.com/ali... Read More

Powerline 插件安装之 Vim 篇(Mac)

Powerline 是 Vim 的状态栏插件,同时也提供状态栏和提示窗口功能给其他一些应用,包括 zsh,bash,Tmux,IPython,Awesome,i3 和 Qtile。这篇文字只谈 Vim 上的安装。环境与工具系统:OS X EI Capitan version 10.11.5终端:TerminalVim :v7.4.1914Xcode: 7.3.1(Xcode 的版本过低会影响一些依赖库的安装,我在 6.5 的情况下安装一些软件会出些问题,避免麻烦升级下)Python:3.5.源码python: https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xvim: https://github.com/vim/vim/archive/v7.4.1949.tar.g安装Pytho./configure --pre... Read More

Vim 使用技巧之只有用了才会懂“最好的 IDE 是 Vim”

半年前,我还在诸如 Eclipse、ZendStudio 等 IDE 里徘徊。然而,这半年对于 Vim 的使用,不得不说,Vim 的效率是更高的。代价是需要时间来自定义并熟悉自己的 Vim。这里,只写下迄今为止对于 Vim + Tmux 的使用感受,以及展示 Vim 的使用技巧(至于如何入门 Vim 请自行 Google)。为什么要用 Vim?随时随地,摆脱环境的束缚,你只需要一个终端(Terminal)。你不必在键盘和鼠标之前来回切换(我压根就觉得鼠标是不服务于“编码工作”的产品),所有的操作都在指尖下的按键。高程度的自定义,所以不要来拷贝他人的配置文件,很伤。其他 IDE 中的功能在 Vim 里基本能找到替代品,幸福指数飙升耳听十遍,不如亲眼一见winmanager, ftaglist, neardtree, bufexplorer和tmux等的应用ctrlp的应用Vim 使用技巧看... Read More

关于 rsync 工具的安装、配置与进行文件同步与备份的使用流程

安装linux yum install rsyn配置编辑文件vim /etc/xinetd.d/rsyn内容如下# default: of# description: The rsync server is a good addition to an ftp server, as it # allows crc checksumming etc.service rsyndisable = nflags = IPvsocket_type = streawait = nuser = rooserver = /usr/bin/rsynserver_args = --daemolog_on_failure += USERI创建配置文件touch /etc/rsyncd.con... Read More

Git 与 SVN 的使用感受

工作环境需要,分别接触了 Git 和 SVN 版本控制工具。接触不久,尽管这两种工具都不是很熟悉,目前仅能达到满足简单的工作需求(有时还需要查引擎)。但,还是有一些感受以记录。分支(branches)与里程碑(tagsGit 的分支和里程碑很有趣和简单,可以快速地在当前工作区切换不同的分支和里程碑。SVN 的分支和里程碑本身就是一个目录(拷贝),目录下分别有一个 .svn 的文件夹以存储版本信息。所以,SVN 切换分支很麻烦,需要切换工作区(每一个工作区只对应服务器的某一分支)。而 Git 却很方便。集中式与分布式这个事情和上面的分支和里程碑是有重叠的地方的。Git 采取的是分布式。简单的说就是每台 checkout 过代码的笔记本上都有着一个完整的代码库。而 SVN 却是集中式的,只有一个是代码仓库,就是服务器。所以,Git可以本地提交,SVN需联网提交。Git 是没有中心服务器的,每... Read More