SSH (Secure Shell)是一套安全的网络连接程序,它可以让你通过网络连接至其他电脑,在其他电脑上执行程序,在电脑之间拷贝文件,它甚至可以提供给你更安全的X连接,而以上的这些连接,都是在编码的保护下完成的。也就是说安装了SSH后就可以将不安全的Telnet和FTP给关掉了。
为什么要使用SSH
上面所说的各项功能,早期BSD所提供的r指令(rsh, rlogin, rcp)几乎都能完成,那为什么要用SSH呢?理由就在于r指令所提供的连接并没有经过编码加密,有心人只要使用合适的工具就能够截下你所输入的每一个字,包括密码。如果你利用X protocol在远端机器执行X程序,也可以截下你传输的资料,当然也包括密码。而SSH就针对了这些弱点做了弥补,对所传输的资料加以编码。
SSH2与SSH1
SSH2对SSH1的程序码做了大幅度的改写,根据SSH公司的说法, SSH2有98%的程序码和SSH1的不一样。除了SSH1所提供的RSA法之外,SSH2也提供了另外的公开金匙编码法以及金匙交换法,SSH2预设采用DSA编码以及Diffie-Hellman金匙交换法。此外,更提供了SFTP,使我们能在FTP方面也得到安全的保障。
文件下载:
ftp://ftp.SSH.com/pub/SSH/;linuxnews.idv.tw/download/SSH-1.2.31.tar.gz 1MB for Linux Server;linuxnews.idv.tw/download/SSHWin-2.4.0-pl2.exe 5MB for Win32 Client
安装环境:Redhat 7.0
1、下载完后将文件解压缩
tar zxvf SSH-1.2.31.tar.gz
2、开始编译,安装
cd SSH-1.2.31;
./configure;
make;
make install;
3、编辑/etc/rc.d/rc.local加入/usr/sbin/SSHd以便开机自动启动。
4、完成
如果你是2台Linux要相连就都要装这个程序,如果是Windows系统要连Linux的话就要安装for Winxx的程序。Winxx部分请自己试试。
Linux的使用方法
/usr/bin/SSH -l username 187.136.5.1
然后输入密码,连进去后是一般的文字界面,就可以开始用了。
另外,SSH可以直接使用root登入。
注:如果你要对连接进来的IP做限制的话可以编辑/etc/hosts.deny和/etc/hosts.allow
示例如下:
/etc/hosts.deny:
ALL:ALL
#禁止所有IP使用所有的服务
/etc/hosts.allow:
SSHd:111.222.333.444
#开放111.222.333.444使用SSH连接
利用SSH来ftp
1、Linux对Linux传文件:
上传:scp wrong.php
bha@187.136.5.1:
这时会问你密码,输入密码吧。
说明:
scp是指令
wrong.php是本地端的文件名
bha@187.136.5.1是远端的用户(user name)和IP
最后记住那个冒号一定要加,那是远端的home directory。
下传:scp
bha@187.136.5.1:wrong.php .
说明:
用scp将
bha@187.136.5.1目录的wrong.php拷贝到目前的目录(就是那个.)
2、Win对Linux传文件:
ls:就是dir
et:下传文件
put:上传文件
exit:退出ftp程序
指令:psftp-x86 187.136.5.1
这时会问名字密码和要不要产生加密键值,然后再用put和get来上下传文件