丹尼尔的博客
29 Apr/10 1

6有用的东西,你可以做SSH

SSH可能是我最喜欢的曲子软件。 它是免费的,给我自由,很容易使用,但非常强大。 使用SSH,你可以加密通信。 几乎每一个问题的一个非常普遍的方式。 我在这个小HOWTO将显示6个有用的东西,你 - 可以做SSH - 没有太多的压力。 SSH是比“只是”一个安全的远程shell!

事#1 -一个安全的远程shell

ssh_console1

这是最明显的事情你可以做SSH和大多数Linux用户可能已经这样做过:与另一台计算机的安全生产和管理他们的连接。

这是非常简单的:

  SSH用户@ box_B 

连接箱B“用户”。 然后,你可以作为“用户”框B.工作

有时需要没有到远程计算机的交互式会话,但只运行一个命令。

  SSH用户bo​​x_B命令 

在这里,您将连接作为一个“用户”命令“命令”执行箱B,结果结束对当地的标准输出和终止连接。

事情#2 -安全的计算机之间复制文件

ssh_copy

凉爽,我们可以与SSH的远程计算机管理,但你也可以复制文件从一台机器使用SSH到另一个。 它基本上像“CP”的命令,但它被称为“SCP” - 安全复制。

  SCP /家庭/我/ a_file.txt的box_B用户@ :/家/我/ 

这会将本地文件“/家/我/ a_file.txt”一箱“/家/我/ a_file.txt栏B.”

它的工作原理其他方式:

  SCP的用户@ box_B :/首页/我/ b_file.txt /家庭/箱 

这将复制的文件“/首页/我/ b_file.txt”从箱B箱上的主目录。

因为“SCP”的东西,这样的作品如“CP”通配符允许:

  SCP的/ var /日志/ *用户名@ box_B :/首页/我/ logsbackup的 

这会将所有的日志文件从框中A到'/家庭/我/ logsbackup“框B.

事情#3 -一个远程机器上的本地文件系统的目录树

ssh_mount

有时,它不只是几个文件从一台计算机到另一副本。 本地文件系统装入一个远程目录是超级有用的,当你想编辑远程文件与本地节目。 一个很好的例子,例如,在网页上远程服务器上。 那简直是在远程服务器上的本地文件系统的web目录,然后保存并与本地安装所有的凉爽的HTML编辑器和图形程序打开文件。 那么如果的磁盘loaklen上的文件。 为这一个需要“sshfs的”。 FUSE文件系统没有安装在默认情况下,许多分布,但通常包含在仓库。 Debian和Ubuntu可以安装这样的:

  apt-get的安装sshfs的 

安装完毕后,你可以开始使用它

  MKDIR / MNT / b_data的的
 sshfs的用户@ box_B b_data :/ / MNT / b_data 

这将安装目录“/ b_data”乙栏“/ MNT / b_data的”本地文件系统中。 现在您可以使用本地程序的远程文件。 当你做,你可以删除再安装:

  fusermount-U / MNT / b_data的 

如果卸载失败,你应该检查,看看是否有打开的文件从远程计算机或是否它仍然是与外壳或文件管理器,在安装目录。

事#4 - “关键位置”从Web未经审查和匿名冲浪

ssh_proxy

公司的政策,法西斯政府,网吧和其他不友好的制度,机构和场所,可以使一个相当困难的网络安全和私人的访问。 防火墙和代理可以阻止在网络上,在那里你可以登录冲浪左右,运行中的男子攻击,或者干脆生成只想吐的感觉。 SSH是所有这些问题的解决。 它提供了作为Web代理(袜子)工作的机会。 它只是通过SSH连接到B和通过这个连接冲浪良好的信任盒。

(本地浏览器< - >本地SSH代理< - > SSH < - >盒B < - >网站)

那么没有人可以检查员阻止敌对本地局域网,或嗅闻。
听起来不错? 这其实是很容易设置和使用! SSH提供的“D”选项设立的本地计算机上使用SOCKS代理:

 的SSH三维1234用户@ box_B 

现在你有SOCKS代理localhost上的端口监听到的第1234 现在你只需要配置他们的浏览器,所以他仍然是用于互联网连接,这个代理。 一个可以检查,一切都很好,如果你在Web浏览器发出的IP地址是用于连接。 http://www.whatismyip.com工作,但也有其他网站的1000个。 如果有箱B出现的IP地址,一切都很好。 Portalbler 便携式Firefox浏览器,如USB闪存驱动器上,使事情变得更愉快。

#5件事-从当地的方案和服务,在隧道内或局域网接入,通常不是通过Internet访问的加密流量。

ssh_tunnel_l

OK,我们肯定机,从机器到机器拷贝文件安全管理,甚至在中国审查网上冲浪。 然而,SSH可以做更多! 因此,人可以使用所有的TCP之间的数据交换,通过隧道到一个受信任的计算机发送的本地节目。 作为SOCKS代理,你可以先通过隧道发送数据流量,例如,由本地电子邮件客户端,所以它不流经本地局域网。 我们希望得到我们的电子邮件中的一个“关键”的条件。 脚本小子,愚蠢的管理员和恐怖的中国黑客可以读取沿mitsniffen邮寄或电子邮件密码。 SSH的帮助。 使用SSH隧道的语法是有点局促首先,相当脑捻线机,但实际上是相当符合逻辑和少许做法并不难:

  SSH-L local_port:target_host:用户@ target_port box_B 

例如:

  SSH-L 10000:pop3.mailprovider.com:110用户box_B 

这里发生了什么? SSH是一个需要与本地端点(L)的端口创建第一万Tunnnel 一切都将抛出这个数据的本地端点流向乙栏先进行加密,然后到110端口(端口110是POP3)的“pop3.mailprovider.com”。 也就是说,从本地电子邮件客户端的数据流加密乙栏,并从那里来的电子邮件提供商。 本地客户机上的电子邮件帐户,因此需要POP服务器,下面的设置:服务器:本地主机/端口:10000。 但它必须是e-mail是不一定的。 任何使用TCP协议的应用程序,可隧道。 例如,IRC的FTP,HTTP,IMAP等。

如果服务器不应该在互联网上,但对箱B的任何地方进行访问本身就是目标机器,也可以是箱B:

  SSH用户_AT_ L 10000:127.0.0.1:110 box_B 

在这个例子的目的,“127.0.0.1”,因为它是从乙栏的角度的目标。 因为“127.0.0.1”从箱B箱B本身就是

隧道可以保护互联网服务是有用的,但也对箱B的私人网络服务的访问。 如果您拥有一个局域网外部访问的SSH帐户,你可以取得diesm局域网即时访问所有的TCP服务,就像如果你是一个“真实”在局域网的客户端。

假设B是箱Intrantet,安置了一个有趣的Web服务器,但它是不是从Ineternet访问。 此服务器上运行的局域网中192.168.0.77。 用SSH隧道现在只是一个本地端口到局域网上的Web服务器的80端口:

  SSH用户_AT_ L 10000:192.168.0.77:80 box_B 

如果你现在“http://127.0.0.1:10000”在本地Web浏览器调用它的远程内部网的Web服务器的主页上的土地。

事#6 -隧道-其他方式

ssh_tunnel_r_good

如果#5是明确的,应该扭转隧道不再是一个问题。 这里是一个远程端点创建隧道。 一切都在那里,流入盒(本地计算机),然后转发到目标计算机加密格式。

  SSH-R的REMOTE_PORT:target_host:用户@ target_port box_B 

例如:

  SSH-R的10000 pop3.mailprovider.com:110用户box_B 

在电子邮件客户端,将是一个POP服务器“框中B”口,并输入“10000”。
箱B隧道的交通秩序首先做一个框。 框中,再往前“pop3.mailprovider.com”港口“110”

快速SSH的命令行选项

-C的“压缩”

“-c”选项用gzip压缩,才通过Inetrnet流传输的数据。 这增加的速度,当传输未压缩的数据(如纯文本)厚。 这是在转移有用
长文本文件或浏览网页时,使用SSH作为代理。

  1234用户的ssh-C-D @ box_B 

-G的“授予访问”

“-G”选项eraubt其他主机不是localhost访问本地创建的隧道端点。 因此,例如,在局域网上的其他计算机使用本地大型隧道。

  SSH-L-G 10000:127.0.0.1:110用户@ box_B 

- P“端口”

“-p”选项需要远程SSH服务器上的默认端口22上侦听。

  ssh-P的22 000名用户@ box_b 

-V的“详细”

有了这个选项,你可以看到很多技术的连接信息,如果你想深入SSH更深。

更多阅读:

我试着写这篇文章,尽可能的简单,因为他是自己主要作为参考。 还有很多事情可以做,用SSH:

SSH手册页

SSH的RFC

维基百科上的SSH

SSH的-由O'Reilly的权威指南