write down,forget

SSH 介绍

<Category: 协议>

什么是SSH? [百度百科]

SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

          传统的网络服务程序,如:ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据, 别有用心的人非常容易就可以截 获这些口令和数据。而且,这些服务程序的安全验证方式也是有其弱点的, 就是很容易受到“中间人”(man-in-the-middle)这种方式的攻 击。所谓“中间人”的攻击方式, 就是“中间人”冒充真正的服务器接收你的传给服务器的数据,然后再冒充你把数据传给真正的服务器。 服务器和你之间的数 据传送被“中间人”一转手做了手脚之后,就会出现很严重的问题。 

SSH的英文全称是Secure Shell。通过使用SSH,你可以把所有传输的数据进行加密,这样“中间人”这种攻击方式就不可能实现了, 而且也能够防止DNS和IP欺骗。还有一个 额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。 SSH有很多功能,它既可以代替telnet,又可以为ftp、pop、甚至ppp提 供一个安全的“通道”。 

最初SSH是由芬兰的一家公司开发的。但是因为受版权和加密算法的限制,现在很多人都转而使用OpenSSH(http://www.openssh.com/)。 OpenSSH是SSH的替代软件,而且是免费的,可以预计将来会有越 来越多的人使用它而不是SSH。 

SSH是由客户端和服务端的软件组成的,有两个不兼容的版本分别是:1.x和2.x。 用SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。OpenSSH 2.x同时支持SSH 1.x和2.x。 

SSH的安全验证是如何工作的 

从客户端来看,SSH提供两种级别的安全验证。 

第一种级别(基于口令的安全验证)只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密, 但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器, 也就是受到“中间人”这种方式的攻击。 

第二种级别(基于密匙的安全验证)需要依靠密匙,也就是你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。 如果你要连接到SSH服务器 上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。服务器收到请求之后, 先在你在该服务器的家目录下寻找你的公用密匙,然后把它和你发 送过来的公用密匙进行比较。如果两个密匙一致, 服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。 客户端软件收到“质 询”之后就可以用你的私人密匙解密再把它发送给服务器。 

用这种方式,你必须知道自己密匙的口令。但是,与第一种级别相比,第二种级别不需要在网络上传送口令。 

第二种级别不仅加密所有传送的数据,而且“中间人”这种攻击方式也是不可能的(因为他没有你的私人密匙)。 但是整个登录的过程可能需要10秒。

二、SSL介绍(Secure socket Layer & Security Socket Layer)

一个应用程序的安全需求在很大程度上依赖于将如何使用该应用程序和该应用程序将要保护什么。不过,用现有技术实现强大的、 一般用途的安全通常是可能的。认证就是一个很好的示例。 

当顾客想从 Web 站点购买某个产品时,顾客和 Web 站点都要进行认证。顾客通常是以提供名字和密码的方式来认证他自己。 另一方面,Web 站 点通过交换一块签名数据和一个有效的 X.509 证书(作为 SSL 握手的一部分)来认证它自己。 顾客的浏览器验证该证书并用所附的公用密钥验证签 名数据。一旦双方都认证了,则交易就可以开始了。 

SSL 能用相同的机制处理服务器认证(就如在上面的示例中)和客户机认证。 Web 站点典型地对客户机认证不依赖 SSL — 要求用户提供密码是较容易的。而 SSL 客户机和服务器认证对于透明认证是完美的, 对等机 — 如 p2p 应用程序中的对等机之间一定会发生透明认证。 

安全套接字层(Secure Sockets Layer (SSL)) ,SSL 是一种安全协议,它为网络(例如因特网)的通信提供私密性。SSL 使应用程序在通信时不用担心被窃听和篡改。 SSL 实际上 是共同工作的两个协议:“SSL 记录协议”(SSL Record Protocol)和“SSL 握手协议” (SSL Handshake Protocol)。“SSL 记录协议”是两个协议中较低级别的协议,它为较高级别的协议, 例如 SSL 握手协议对 数据的变长的记录进行加密和解密。SSL 握手协议处理应用程序凭证的交换和验证。 

当一个应用程序(客户机)想和另一个应用程 序(服务器)通信时,客户机打开一个与服务器相连接的套接字连接。然后, 客户机和服务器对安全连接进行协商。作为协商的一部分,服务器向客户机作自我认 证。客户机可以选择向服务器作或不作自我认证。 一旦完成了认证并且建立了安全连接,则两个应用程序就可以安全地进行通信。按照惯例,我将把发起该通信的 对等机看作客户机, 另一个对等机则看作服务器,不管连接之后它们充当什么角色。 

名为 A 和 B 的两台对等机想安全地进行通 信。在我们简单的 p2p 应用程序的环境中,对等机 A 想查询对等机 B 上的一个资源。 每个对等机都有包含其专用密钥的一个数据库(名为 keystore)和包含其公用密钥的证书。密码保护数据库的内容。 该数据库还包含一个或多个来自被信任的对等机的自签名证书。 对等机 A 发起这 项事务,每台对等机相互认证,两台对等机协商采用的密码及其长度并建立一个安全通道。完成这些操作之后, 每个对等机都知道它正在跟谁交谈并且知道通道是 安全的。 SSL (Secure socket Layer)安全套接层协议主要是使用公开密钥体制和X.509数字证书技术保护信息传输的机密性和完 整性, 它不能保证信息的不可抵赖性,主要适用于点对点之间的信息传输,常用Web Server方式。 

安全套接层协议(SSL,Security Socket Layer)是网景(Netscape)公司提出的基于WEB应用的安全协议,它包括:服务器认证、 客户认证(可选)、SSL链路上的数据 

完整性和SSL链路上的数据保密性。对于电子商务应用来说,使用SSL可保证信息的真实性、 完整性和保密性。但由于SSL不对应用层的消息进行数字签 名,因此不能提供交易的不可否认性,这是SSL在电子商务中使用的最大不足。 有鉴于此,网景公司在从Communicator 4.04版开始的所有浏 览器中引入了一种被称作“表单签名(Form Signing)”的功能, 在电子商务中,可利用这一功能来对包含购买者的订购信息和付款指令的表单进行 数字签名,从而保证交易信息的不可否认性。综上所述, 在电子商务中采用单一的SSL协议来保证交易的安全是不够的,但采用”SSL+表单签名”模式能够 为电子商务提供较好的安全性保证。

本文来自: SSH 介绍

git快速入门

<Category: 小道消息, 资源分享>

github

首先到http://github.com/申请一个300M的免费空间(足够了),然后按照下面的流程操作,注意SSHkey生成的那步

From http://hi.baidu.com/kissdev/blog/item/944aa2fab2817215a8d311f1.html

1. GIT

相比CVS/SVN,Git 的优势:
- 支持离线开发,离线Repository
- 强大的分支功能,适合多个独立开发者协作
- 速度块

2. GitHub

GitHub是一个托管Git (开源或闭源)项目的网站,闭源收费

阅读这篇文章的其余部分

本文来自: git快速入门

[独家]Elastic Search,偶然发现的强悍的搜索引擎

<Category: Lucene, 小道消息>

闲逛,发现了这个好东东,分享下,绝对独家,哈哈。

elasticsearch

Search Engine for the Cloud

Capture6
Capture23Capture7索引目录结构
下载地址:http://www.elasticsearch.com/download/

阅读这篇文章的其余部分

本文来自: [独家]Elastic Search,偶然发现的强悍的搜索引擎

Alpha、Beta、RC、GA版本的区别

<Category: 未分类>

Alpha:是内部测试版,一般不向外部发布,会有很多Bug(错误、漏洞). 一般只有测试人员使用。

Beta:也是测试版,这个阶段的版本会一直加入新的功能。在Alpha版之后推出。

RC:(Release Candidate) 顾名思义么 ! 用在软件上就是候选版本。系统平台上就是发行候选版本。RC版不会再加入新的功能了,主要着重于除错。

GA:General Availability,正式发布的版本,在国外都是用GA来说明release版本的。

RTM:(Release to Manufacture)是给工厂大量压片的版本,内容跟正式版是一样的,不过RTM版也有出限制、评估版的。但是和正式版本的主要程序代码都是一样的。

OEM:是给计算机厂商随着计算机贩卖的,也就是随机版。只能随机器出货,不能零售。只能全新安装,不能从旧有操作系统升级。包装不像零售版精美,通常只有一面CD和说明书(授权书)。

RVL:号称是正式版,其实RVL根本不是版本的名称。它是中文版/英文版文档破解出来的。

EVAL:而流通在网络上的EVAL版,与“评估版”类似,功能上和零售版没有区别。

RTL:Retail(零售版)是真正的正式版,正式上架零售版。在安装盘的i386文件夹里有一个eula.txt,最后有一行EULAID,就是你的版本。比如简体中文正式版是EULAID:WX.4_PRO_RTL_CN,繁体中文正式版是WX.4_PRO_RTL_TW。其中:如果是WX.开头是正式版,WB.开头是测试版。_PRE,代表家庭版;_PRO,代表专业版。

α、β、λ常用来表示软件测试过程中的三个阶段,α是第一阶段,一般只供内部测试使用;β是第二个阶段,已经消除了软件中大部分的不完善之处,但仍有可能还存在缺陷和漏洞,一般只提供给特定的用户群来测试使用;λ是第三个阶段,此时产品已经相当成熟,只需在个别地方再做进一步的优化处理即可上市发行。

本文来自: Alpha、Beta、RC、GA版本的区别

微博API\微博开放平台,新浪围脖离开放API不远了

<Category: 小道消息>

http://t.sina.com.cn/openapi

虽然还没有正式开放,估计他们这会还在紧张的测试中。。。

申请了APIKEY,不知道什么时候下来,再不开放API,我都没有兴趣了,真是

本文来自: 微博API\微博开放平台,新浪围脖离开放API不远了

hubot

<Category: nodejs, 试试>

下载安装nodejs,http://nodejs.org/
http://nodejs.org/dist/v0.6.13/node-v0.6.13.msi [自带npm]

cd “C:\Program Files (x86)\nodejs”
npm install -g coffee-script
npm install hubot

执行目录
C:\Program Files (x86)\nodejs\node_modules\.bin
hubot.cmd即可,建议将该目录加到path环境变量

ok,安装完毕,就需要自己添加adaptor了,adaptor就是具体的机器人可以做的事情了,或者是交互的接口,如IRC聊天、Gtalk等

先试试IRC

修改文件:
C:\Program Files (x86)\nodejs\node_modules\hubot\package.json

在dependencies添加一行
“hubot-irc”: “>= 0.0.1”

貌似需要改环境变量,卧槽,这种方式太恶心了。

本文来自: hubot

VPS原来也可以这么便宜啊

<Category: 小道消息, 资源分享>

前几天在Ubuntu转,版主发布一贴,vps主机代购,主机商是burst.net,最低的每年居然只要350元,要知道网上随便一款虚拟主机的空间每年都不止这个价,更何况是vps呢,vps说简单点就是一台虚拟的服务器,除了linux内核之外,其他什么软件、服务、数据库啊你都可以自己安装,爱怎么折腾怎么折腾,再也不需要为服务器这个不支持那个不好弄而烦恼了,看起来不错。

购买全程图解,进入burst.net的网站
进入主页,选择服务选择产品继续继续再继续购买,付款,搞定,后面环节,我还没有搞呢,搞呢再说·

网上搜索了下,资料整理如下,我的主机反正快到期了,不如关注下这个。
burst.net是美国著名的机房,还是一个比较大的主机商,国内客户不少,一直以服务器为主,最近才出了vps。

http://forum.ubuntu.com.cn/viewtopic.php?f=1&t=256185&sid=bb79c4243a6cee023878b0cc07fe04cb

销售价格:
VPS #1 (Virtual Private Server) – vePortal – CPU: 1GHZ, RAM: 512MB, DISKSPACE: 20GB, BANDWIDTH: 1000GB/MONTH
单月:35 人民币; 每年: 350 人民币

VPS #2 (Virtual Private Server) – vePortal – CPU: 1.5GHZ, RAM: 1GB, DISKSPACE: 50GB, BANDWIDTH: 1000GB/MONTH
单月:59 人民币; 每年: 590 人民币

VPS #3 (Virtual Private Server) – vePortal – CPU: 2GHZ, RAM: 1.5GB, DISKSPACE: 100GB, BANDWIDTH: 2000GB/MONTH
单月:118 人民币; 每年: 1180 人民币

VPS #4 (Virtual Private Server) – vePortal – CPU: 2.5GHZ, RAM: 2.5GB, DISKSPACE: 150GB, BANDWIDTH: 2000GB/MONTH
单月:178 人民币; 每年: 1780 人民币

VPS #5 (Virtual Private Server) – vePortal – CPU: 3GHZ, RAM: 3GB, DISKSPACE: 200GB, BANDWIDTH: 4000GB/MONTH
单月:238 人民币; 每年: 2380 人民币

VPS #6 (Virtual Private Server) – vePortal – CPU: 4GHZ, RAM: 4GB, DISKSPACE: 250GB, BANDWIDTH: 4000GB/MONTH
单月:298 人民币; 每年: 2980 人民币

系统支持 CentOS 5 32|64 / Debian 5 32|64/ Ubuntu 9.04 32|64 / Ubuntu 8.04 32|64 / Gentoo 32 / Fedora 12 32|64
两个IP,支持架设 OPENVPN SERVER ,使用远程 SSH 和 vePortal 管理。系统支持自己重新安装系统,大约花费2分钟时间。

阅读这篇文章的其余部分

本文来自: VPS原来也可以这么便宜啊

[转]美国虚拟主机推荐:Bluehost

<Category: 小道消息, 资源分享>

Bluehost 主机介绍

Bluehost 建立于 1996 年,已经具有了十几年的虚拟主机服务经验,现已突破 100 万的网站托管数量,并且还以稳定速度向前发展。Bluehost 以其高质量的主机和口碑,在美国是深受好评的虚拟主机,在美国主机界也是屡获大奖。

阅读这篇文章的其余部分

本文来自: [转]美国虚拟主机推荐:Bluehost

还拍照备案,要拍你自己拍

<Category: 小道消息, 资源分享>

  

阅读这篇文章的其余部分

本文来自: 还拍照备案,要拍你自己拍

redgate的{smartassembly}

<Category: .NET>

据说:SmartAssembly 提供了一种用于优化你的 .NET 汇编程序,保护你的作品和软件,最小化发布程序尺寸,增强性能以及添加强大的发布配置调试能力的独特的解决方案。SmartAssembly 可以让你高效地立刻提交一个你的没有异常状况的 .NET 应用软件的精巧版本。

主要特性:优化代码,合并依赖程序集,混淆,字符编码,压缩等

阅读这篇文章的其余部分

本文来自: redgate的{smartassembly}