2016年6月

SSH实现免密码登录远程服务器并且关闭密码登录功能

标题好长……这次被黑之后吸取了教训,大致说一下做的事情:

首先能不用root就不用root,除了由于普通用户拿不到权限的部分以外都使用普通用户(如Node.js程序的运行),不关闭SELINUX,开启iptables(这里需要说一下,只要开启了防火墙就会生成iptables),未开启则没有,所以才会出现找不到iptables的情况。

免密码具体就是用证书(非对称加密)来登录,处理起来其实也是蛮方便的(但如果一个手滑可能会导致登录不上去)。

如果过去没有生成过证书,则需要先运行 ssh-keygen -t rsa,之后再~/.ssh/目录会生成公钥和私钥,如果运行过了,就不要重复运行了。

之后把公钥(xxx.pub),传到服务器中的~/.ssh/目录下,重命名为authorized_keys,如果已经有该文件,则把公钥内容加入文末。

- 阅读剩余部分 -

使用Mosh来改善你的SSH连接

今天看到一篇安利iTerm2的文章,在文章介绍了mosh,支持断续连接,当时就很心动,果断进官网看看详情:

Mosh:https://mosh.mit.edu/

mosh使用UDP(ssh使用的是tcp),能够在网络环境差的情况下也保持稳定和基本的使用(在我使用之后觉得流畅了许多,终于有心情折腾了)。

安装方法相当简单,跨平台性也相当好(除了iPhone和Windows Phone):

先在OSX中安装命令:brew install mobile-shell

之后我们就能够使用mosh usr@host代替ssh usr@host,当然在服务端中也需要安装mosh。

- 阅读剩余部分 -

Node.js 用Mocha+Chai做单元测试 入门

昨天是六一儿童节(发布的时候已经是前天了= =),给自己放了一天假,然后晚上开始看自动测试的问题。

单元测试是每个程序员都应该自测的部分(《构建之法》中说:单元测试应该由最熟悉程序的人来写——也就是些这段代码的程序员)传统的测试机械化程度太高,肉眼看也是累得不行,此外,代码覆盖率是一个很重要的考察点,人工测试在计算上或称最大难题。

基本概念

当然在此之前,先来科普一些基本概念,也就是单元测试的分类:TDDBDD

- 阅读剩余部分 -