SSH、SCP和SFTP教程

转载请注明作者

注:iPhone默认的登录如下:
引用:
1.0.2版:
用户名:root
密码:dottie

1.1.1版:
用户名:root
密码:alpine
1、简介

SSH、SCP和SFTP都是SSH软件包的组成部分。简单的说,SSH是加密方式的控制台远程登录,全称是Secure Shell,是目前广泛采用的安全登录协议,替代以前不安全的Telnet协议。用SSH可以登录到Unix系统,并使用几乎所有的操作系统功能。如果你熟悉Windows的Remote Desktop,那么可以把SSH想象成命令行方式的Remote Desktop。SSH包括2个部分,服务端的SSHD(Secure Shell Daemon)和SSH客户端。我们通常所说的用SSH登录到某某主机,指的是用SSH客户端登录到某台主机(该主机运行了SSHD服务端程序)。

SCP是Secure Copy的简称,是用来与远程主机之间进行数据传输的协议,相当于经过加密的Copy命令。

SFTP是用SSH封装过的FTP协议,相当于经过加密的FTP协议,功能与FTP一样,只是传输数据经过加密。SFTP也有2个部分,服务端的SFTP-Server及SFTP Client。通常所说的用SFTP登录到某台主机,指的是用SFTP客户端登录到某台主机(该主机运行了SFTP-Server服务端程序)。

在iPhone上要使用这几个命令,就要安装OpenSSH软件包,到置顶的 常见问题解答贴里看怎样安装第三方软件。注意:要先安装BSD Subsystem,然后再安装OpenSSH软件。

2、SSH的使用方法

由于Mac OS X是个真正的Unix操作系统,因此对于SSH的支持是既有的,只要开个仿真终端窗口(Terminal),然后输入:
引用:
ssh 用户名@远程主机名
输入密码就可以登录到远程主机。如要登录到iPhone,要在iPhone上安装SSH软件包(OpenSSH),并找到iPhone的IP地址(看Settings->WiFi),比如说是192.168.0.123,然后用root身份登录,上面的命令就变成了:
引用:
ssh [email protected]
输入密码:dottie,这是默认的密码。登录后出现 # 提示符,这时候就可以输入Unix命令了,比如:
引用:
ls (列目录)
chmod (改变文件属性)
cp (复制文件)
rm (删除文件)
mv (移动/改名文件)
对于Windows,需要安装特别的SSH客户端软件,常见的有:SecureCRT等,装好后,稍加配置就可以了,具体看软件相应的提示操作。

3、SCP使用方法

在Mac OS X中,可以直接在Terminal终端输入scp命令将文件拷贝到iPhone,或者从iPhone将文件拷贝到本地,命令格式为:
引用:
scp 来源 目的
其中“来源”和“目的”既可以是本地文件或目录,也可以是远程文件或目录。如果是远程文件,需要用格式:
引用:
用户名@远程主机:远程路径或文件名
比如说把本地当前目录的文件 A.plist 拷贝到iPhone的 /tmp 目录中,命令就是(假设iPhone的IP地址与前面一样):
引用:
scp A.plist [email protected]:/tmp
意思是:把当前目录的 A.plist 文件拷贝到IP是192.168.0.123的主机的 /tmp 目录中,拷贝以root身份进行。

要把iPhone上的 /tmp/ABC.plist 复制到本地当前目录,就用命令:
引用:
scp [email protected]:/tmp/ABC.plist .
注意那个最后的“.”,表示当前目录。

如果要将整个目录复制到iPhone(或者从iPhone复制到本地),用这个格式:
引用:
scp -r 来源 目的
注意这是目的必须是目录名。比如要把本地当前目录的 anySIM.app 复制到iPhone的/Applications目录中,命令格式为:
引用:
scp -r anySIM.app [email protected]:/Applications
对于Windows用户,可以用SCP客户端软件,比如WinSCP。

4、SFTP的用法

要使用SFTP,iPhone上必须安装了sftp-server。SFTP的用法与Unix命令行的ftp完全一样,请参考ftp命令的使用。当然也可以用软件,比如:Transmit和Fetch(Mac用户),SecureFX(Windows用户)等等。

以上就是简单的介绍,希望对你能有所帮助。如果要了解详细的情况,建议Google一些文档看看。SSH是个很复杂的协议,幸运的是使用起来倒是很简单 :)

附两张图片:

SecureCRT登录iPhone后的图片


SecureFX传送前的窗口图片

你可能感兴趣的:(linux)