基于 SSH 的远程操作以及安全,快捷的数据传输
- 格式:doc
- 大小:92.50 KB
- 文档页数:7
使用ssh命令进行远程命令执行SSH(Secure Shell)是一种网络协议,用于通过网络对远程计算机进行安全登录和执行命令。
在计算机网络中,SSH协议可确保数据传输的安全性,同时提供远程管理和远程执行命令的功能。
本文将介绍如何使用SSH命令进行远程命令执行。
一、概述SSH是一种加密的网络协议,可确保在不安全的网络上安全地进行远程登录和执行命令。
它使用公钥加密和非对称密钥交换来保护数据的传输,并通过身份验证来确保只有授权用户能够访问远程服务器。
二、使用SSH连接远程服务器在使用SSH命令进行远程命令执行之前,我们首先需要建立与远程服务器的连接。
以下是连接远程服务器的步骤:1. 打开终端或命令提示符(根据操作系统的不同)。
2. 输入SSH命令的基本格式:ssh [用户名]@[远程服务器的IP地址或域名]。
3. 按下回车键,系统将提示您输入密码。
4. 输入密码后,按下回车键,如果密码正确,系统将连接到远程服务器。
三、远程命令执行连接到远程服务器后,我们可以使用SSH命令在远程服务器上执行命令。
以下是远程命令执行的步骤:1. 在终端或命令提示符中,输入要执行的命令。
例如,我们可以执行“ls”命令来列出远程服务器上的文件和目录。
2. 按下回车键,系统将在远程服务器上执行该命令,并将结果返回到本地终端或命令提示符。
四、SSH命令高级用法除了基本的远程命令执行外,SSH还提供了一些高级用法,如下所示:1. 使用SSH密钥对进行身份验证:除了使用用户名和密码进行身份验证外,还可以使用SSH密钥对进行身份验证。
这种方法更安全,并且可以免去每次输入密码的步骤。
使用SSH密钥对进行身份验证需要在本地生成密钥对,并将公钥添加到远程服务器上的授权文件中。
2. 文件传输:SSH还可以用于安全地传输文件。
使用SCP(Secure Copy)命令可以将文件从本地复制到远程服务器,或将文件从远程服务器复制到本地。
3. 远程端口转发:SSH还支持远程端口转发,可以将本地计算机上的端口映射到远程服务器上。
SSH简单使用教程SSH(Secure Shell)是一种安全协议,旨在通过加密技术在网络中安全地传输数据。
它是一种远程登录协议,可以让用户通过互联网远程登录到远程服务器或远程主机上,并在感到安全的情况下执行命令。
SSH是替代传统不安全协议(如Telnet)的首选工具。
使用SSH,可以安全地远程管理和传输文件,而无需担心信息泄露和攻击。
本文将介绍SSH的基本使用方法,并提供一些SSH的实际应用场景。
1.配置SSH在开始使用SSH之前,需要做一些初始配置。
首先,在远程服务器上安装SSH服务,并确认SSH服务已经启动。
这可以通过以下命令来检查:```service ssh status```如果SSH服务未启动,可以使用以下命令启动:```service ssh start```另外,如果你使用的是Linux系统,需确保OpenSSH服务器软件包已经安装。
可以使用以下命令安装:```sudo apt-get install openssh-server```2.连接到远程服务器要连接到远程服务器,需要知道远程服务器的IP地址和登录凭据(用户名和密码)。
可以使用以下命令连接:``````其中,username是登录远程服务器的用户名,ip_address是远程服务器的IP地址。
3.密钥认证SSH还支持密钥认证,这是一种更安全和便捷的登录方式。
使用密钥认证,用户将生成一对密钥(公钥和私钥),将公钥放在远程服务器上,然后使用私钥进行登录。
要使用密钥认证,首先需要生成密钥对。
可以使用以下命令生成密钥对:```ssh-keygen -t rsa -b 4096```该命令将要求您提供保存密钥对的路径和密码。
生成密钥对之后,可以使用以下命令将公钥复制到远程服务器上:``````然后你就可以使用私钥进行登录了:``````4.SSH端口转发SSH还提供了端口转发功能,可以将本地端口转发到远程服务器上。
这对于访问位于防火墙后面的服务器或本地网络服务非常有用。
Linux终端命令的远程登录和远程桌面技巧远程控制其他计算机远程登录(Remote Login)和远程桌面(Remote Desktop)是现代计算机技术中非常重要的功能。
通过远程登录,用户可以在不同的计算机之间进行连接和操作,而远程桌面则提供了图形化界面,使得远程操作更加直观和方便。
在Linux系统中,有许多强大的终端命令和技巧,可以帮助我们实现远程控制其他计算机的任务。
远程登录在Linux系统中,我们可以使用SSH(Secure Shell)命令实现远程登录其他计算机。
SSH是一种加密的网络协议,可以通过安全信道连接远程主机,并执行命令。
以下是通过SSH远程登录其他计算机的步骤:1. 打开终端:在本地计算机上打开终端,可以使用Ctrl+Alt+T快捷键或者在应用程序菜单中找到终端。
2. 输入SSH命令:在终端中输入以下命令,替换用户名和远程主机的IP地址或域名:```ssh username@remote_host```这里的username是远程主机上的用户名,remote_host是远程主机的IP地址或域名。
按下回车键后,系统会提示输入密码。
3. 输入密码:根据系统提示,输入远程主机的密码。
输入密码时,终端不会显示任何字符,这是正常的安全机制。
4. 登录成功:如果输入的用户名和密码正确,终端会显示类似于以下的提示信息:```Welcome to remote_host!```这意味着成功登录到远程主机。
远程桌面如果我们想要进行图形化操作并远程控制其他计算机,可以使用VNC(Virtual Network Computing)技术。
以下是使用VNC实现远程桌面控制的步骤:1. 安装VNC服务器:在远程主机上安装VNC服务器软件,例如TigerVNC或RealVNC。
具体安装方法可以参考相应软件的官方文档。
2. 配置VNC服务器:根据实际需求,配置VNC服务器,设置密码和监听端口等参数。
3. 启动VNC服务器:启动VNC服务器,确保服务器正在监听指定的端口。
ssh的工作原理
SSH(Secure Shell)是一种网络协议,用于在不安全的网络中
提供安全的远程访问和数据传输。
其工作原理如下:
1. 客户端与服务器建立连接:客户端启动SSH客户端程序,
向服务器发起连接请求。
2. 服务器确认身份:服务器接收到连接请求后,会要求客户端提供身份验证信息,一般是用户名和密码。
3. 客户端发送身份验证信息:客户端将身份验证信息加密后发送给服务器。
4. 服务器验证身份信息:服务器收到客户端的身份验证信息后,将其解密并与存储在服务器上的用户信息进行比对。
5. 身份验证成功:当服务器验证通过后,客户端可以继续进行远程操作。
6. 加密通信:客户端和服务器之间的通信通过加密进行,确保数据传输的机密性和完整性。
7. 数据传输:客户端可以在安全通道上发送命令和数据给服务器,服务器执行相应操作后将结果返回给客户端。
8. 连接关闭:当通信结束时,客户端可以主动断开与服务器的连接,也可以等待一定时间后自动断开。
总之,SSH通过身份验证、加密通信和安全传输数据的方式,实现了远程访问和数据传输的安全性,可以在不安全的网络环境下进行安全的远程操作。
在MacOS终端中使用SSH命令远程连接其他计算机SSH(Secure Shell)是一种网络协议,可以通过加密的方式实现远程计算机之间的安全通信。
使用SSH命令可以在MacOS终端中远程连接其他计算机,并执行命令或传输文件。
本文将介绍在MacOS终端中使用SSH命令远程连接其他计算机的方法。
首先,在MacOS终端中打开SSH客户端。
MacOS系统自带了SSH 客户端,可以直接在终端应用中使用。
打开终端应用后,我们可以使用以下命令远程连接其他计算机:```ssh [用户名]@[远程主机IP地址]```其中,[用户名]是远程主机的用户名,[远程主机IP地址]是远程主机的IP地址。
例如,如果我们要连接IP地址为192.168.0.1的远程主机,并使用用户名为admin进行登录,可以输入以下命令:```****************.0.1```按下回车键后,系统会提示输入密码。
输入正确的密码后,即可成功登录到远程主机。
在一些情况下,我们可能需要指定远程主机的端口号。
默认情况下,SSH命令使用的端口号是22,但是有时远程主机可能配置了不同的端口号。
如果需要连接的远程主机使用的端口号不是默认的22,可以使用以下命令指定端口号:```ssh -p [端口号] [用户名]@[远程主机IP地址]```例如,如果要连接IP地址为192.168.0.1的远程主机,并使用用户名为admin进行登录,同时远程主机的端口号为2222,可以输入以下命令:```**********************.0.1```除了直接指定用户名和远程主机的IP地址,还可以使用其他参数来实现更多功能。
以下是一些常用的参数:- `-l`:指定登录远程主机的用户名。
- `-p`:指定远程主机的端口号。
- `-i`:指定用于身份验证的私钥文件。
- `-X`:允许在远程主机上显示图形界面。
- `-L`:在本地端口和远程主机之间建立端口转发。
ssh命令用法(一)SSH命令使用指南什么是SSH命令SSH(Secure Shell)是一种网络协议,用于在不安全的网络环境中进行安全的远程访问和文件传输。
通过SSH命令,用户可以在本地计算机上执行远程服务器上的命令,也可以从本地向远程服务器传输文件。
SSH命令用法以下是一些常用的SSH命令及其详细解释:1.连接远程服务器:ssh [username]@[host]–username: 远程服务器的用户名–host: 远程服务器的IP地址或域名示例如下:ssh2.指定端口连接:ssh -p [port] [username]@[host]–port: 远程服务器的SSH端口号(默认为22)示例如下:ssh -p 22223.传输文件到远程服务器:scp [file] [username]@[host]:[destination]–file: 本地计算机上要传输的文件路径–destination: 远程服务器上文件的目标路径示例如下:scp /path/to/ :/home/john/files/4.从远程服务器拉取文件到本地计算机:scp [username]@[host]:[file] [destination]–file: 远程服务器上要拉取的文件路径–destination: 本地计算机上文件的目标路径示例如下:scp :/home/john/files/ /path/to/destinatio n/5.执行远程命令并返回结果:ssh [username]@[host] [command]–command: 要在远程服务器上执行的命令示例如下:ssh "ls -l /home/john"6.创建SSH密钥对:ssh-keygen -t rsa该命令会生成存储在用户主目录下的SSH密钥对(公钥和私钥),用于身份验证。
7.将公钥复制到远程服务器:ssh-copy-id -i ~/.ssh/id_ [username]@[host]–~/.ssh/id_: 本地计算机上的公钥文件路径示例如下:ssh-copy-id -i ~/.ssh/id_总结SSH命令是一种非常强大的远程访问和文件传输工具。
myssh使用方法MySSH 使用方法一、简介MySSH 是一个用于远程连接和管理服务器的工具。
它基于SSH (Secure Shell)协议,提供了安全的远程登录和文件传输功能。
本文将介绍MySSH 的使用方法,帮助用户更好地利用该工具进行服务器管理。
二、安装和配置1. 下载MySSH:在官方网站或第三方软件下载平台下载MySSH 的安装包,根据操作系统选择对应的版本进行下载。
2. 安装MySSH:双击安装包,按照安装向导提示进行安装。
安装完成后,将自动创建一个桌面快捷方式。
3. 配置 SSH 连接:打开 MySSH,点击顶部菜单栏中的“设置”选项,进入设置界面。
在设置界面中,输入服务器的 IP 地址、用户名和密码等信息,点击“保存”按钮保存配置。
三、连接服务器1. 打开MySSH:双击桌面快捷方式或在开始菜单中找到MySSH 并点击打开。
2. 添加服务器:点击主界面左侧的“添加服务器”按钮,弹出添加服务器窗口。
在窗口中填写服务器的名称、IP 地址、端口号等信息,并点击“确定”按钮保存。
3. 连接服务器:在主界面的服务器列表中,选择要连接的服务器,点击“连接”按钮进行连接。
如果配置正确,将会弹出输入密码的对话框,输入密码后即可登录到服务器。
四、服务器管理1. 命令执行:连接成功后,可以在MySSH 的命令行界面中输入命令并执行。
可以执行各种系统命令,如查看文件、创建文件夹等。
2. 文件传输:在MySSH 的界面中,可以直接拖拽本地文件到远程服务器,或者从远程服务器拖拽文件到本地。
文件传输过程中会显示进度条,方便用户查看传输进度。
3. 文件编辑:MySSH 内置了文本编辑器,可以直接在远程服务器上编辑文件。
选择要编辑的文件,点击编辑按钮即可进行编辑。
编辑完成后,点击保存按钮保存修改。
五、其他功能1. 多标签窗口:MySSH 支持多标签窗口,可以同时连接多个服务器,并在不同的标签中切换。
这样可以方便用户同时管理多台服务器。
实用技巧使用ssh和scp命令进行远程登录传输和管理在计算机网络中,SSH(Secure Shell)是一种加密的网络协议,用于在不安全的网络上安全地进行远程登录和数据传输。
它提供了多种功能,从简单的远程命令执行到基于公钥的身份验证。
与之配套使用的SCP(Secure Copy)命令则是一种远程文件传输协议,通过SSH通道进行加密传输。
本文将介绍如何使用SSH和SCP命令进行远程登录、传输和管理。
一、使用SSH命令进行远程登录SSH命令可以连接到远程计算机,并在远程计算机上执行命令。
1. 打开终端(命令行界面)。
2. 输入以下命令(假设目标计算机的IP地址为x.x.x.x):``***************.x.x``其中,username为目标计算机上的用户名。
如果你是用于远程登录的计算机的当前用户,则可以省略用户名。
3. 输入目标计算机的密码。
如果你是第一次连接到目标计算机,系统可能会要求你确认目标计算机的指纹(fingerprint)。
输入“yes”来确认。
4. 成功登录后,你将进入目标计算机的命令行界面。
你可以在这里执行任意的命令。
二、使用SCP命令进行文件传输SCP命令可以在本地计算机和远程计算机之间进行文件传输。
1. 将文件从本地计算机上传到远程计算机:``scp/path/to/local/****************.x.x:/path/to/remote/directory``其中,/path/to/local/file为本地计算机上要传输的文件的路径,username为远程计算机的用户名,x.x.x.x为远程计算机的IP地址,/path/to/remote/directory为远程计算机上要保存文件的目录路径。
2. 将文件从远程计算机下载到本地计算机:``***************.x.x:/path/to/remote/file/path/to/local/directory``其中,/path/to/remote/file为远程计算机上要传输的文件的路径,/path/to/local/directory为本地计算机上要保存文件的目录路径。
学会使用SSH远程连接服务器简便高效的管理方式SSH(Secure Shell)是一种加密的网络协议,用于在不安全的网络上安全地传输数据。
通过SSH,用户可以远程登录到服务器或其他设备,并在远程系统上执行命令。
SSH远程连接服务器是一种简便高效的管理方式,本文将介绍如何学会使用SSH远程连接服务器。
### 什么是SSH远程连接服务器?SSH远程连接服务器是一种通过SSH协议在网络上安全地连接到远程服务器的方式。
通过SSH,用户可以在本地计算机上打开一个终端窗口,并通过输入命令来远程管理服务器。
SSH使用加密技术来保护数据传输的安全性,确保用户的登录信息和操作不会被窃取或篡改。
### 如何使用SSH远程连接服务器?1. **安装SSH客户端**在本地计算机上安装SSH客户端软件,常用的SSH客户端包括OpenSSH、PuTTY等。
根据操作系统的不同,选择合适的SSH客户端进行安装。
2. **获取服务器IP地址和登录凭证**在远程服务器上获取IP地址、用户名和密码等登录凭证。
确保拥有正确的登录信息才能成功连接到服务器。
3. **打开SSH客户端**打开已安装的SSH客户端软件,在连接设置中输入服务器的IP 地址、端口号(默认为22)、用户名和密码等信息。
4. **建立SSH连接**点击连接按钮,SSH客户端将尝试与远程服务器建立安全连接。
首次连接时可能会提示接受服务器的公钥指纹,确认后即可建立连接。
5. **远程管理服务器**成功连接到服务器后,用户可以在本地终端窗口中输入命令来管理服务器,如查看文件、修改配置、安装软件等操作。
### SSH远程连接服务器的优势1. **安全性高**SSH使用加密技术传输数据,可以有效防止数据被窃取或篡改,确保用户的登录信息和操作安全可靠。
2. **简便高效**通过SSH远程连接服务器,用户可以在本地计算机上直接操作远程服务器,无需在服务器端进行操作,节省时间和精力。
使用ssh命令进行远程登录和文件传输SSH(Secure Shell)是一种网络协议,用于在不安全的网络中以安全的方式进行远程登录和信息交换。
它提供了加密通信和身份验证的机制,使得用户可以在不同计算机之间进行远程操作,同时还能够安全地传输文件。
在本文中,将介绍如何使用SSH命令进行远程登录和文件传输。
第一部分:远程登录远程登录是指通过SSH协议在本地计算机上操作远程计算机。
使用SSH命令进行远程登录的步骤如下:1. 打开终端或命令提示符窗口。
2. 输入以下命令来建立SSH连接:ssh username@remote_host其中,username为远程计算机的用户名,remote_host为远程计算机的IP地址或域名。
3. 输入远程计算机的密码,按回车键进行身份验证。
4. 成功验证后,您将进入远程计算机的命令行界面,可以在此执行各种命令。
5. 若要退出远程登录,只需输入命令“exit”即可。
标计算机,并可以在远程计算机上执行各种终端命令。
第二部分:文件传输除了远程登录,SSH还提供了安全的文件传输功能,您可以通过SCP(Secure Copy)命令在本地计算机和远程计算机之间传输文件。
下面是使用SCP命令进行文件传输的步骤:1. 打开终端或命令提示符窗口。
2. 输入以下命令来将本地文件传输到远程计算机:scp local_file username@remote_host:remote_path其中,local_file为本地计算机上的文件路径,username为远程计算机的用户名,remote_host为远程计算机的IP地址或域名,remote_path为远程计算机上文件的保存路径。
3. 输入远程计算机的密码,按回车键进行身份验证。
4. 文件将被传输到远程计算机上的指定路径下。
5. 若要从远程计算机下载文件到本地计算机,只需使用以下命令:scp username@remote_host:remote_file local_path其中,remote_file为远程计算机上的文件路径,local_path为本地计算机上文件的保存路径。
基于SSH 的远程操作以及安全,快捷的数据传输简介: SSH 是一个安全,灵活和强大的工具。
本文介绍了如何使用 SSH 在各种操作系统间建立起一个安全的通信通道 , 从而进行远程操作以及数据的安全快速传输。
使用 SSH 有时会给你的工作带来意想不到的方便。
SSH 实现远程控制和数据传输的优势SSH (Secure Shell) 是一个类似于 Telnet 和 RSH 的远程访问工具,最初设计的目的是为了取代安全性不高的 RSH,RCP 以及 RLOGIN 等操作。
使用时,SSH 分为客户端和服务端两部分。
客户端发起 TCP 连接,接着和服务端协商双方共同使用的协议版本,身份认证算法和加密算法,从而与服务端建立起一条安全的通信信道。
因为在使用 SSH 时,所有传输的数据都进行了加密,所以在传输的过程中不易受到攻击。
此外还有一个好处就是使用 SSH 进行数据传输时,数据是经过压缩的,所以传输的速度比较快。
利用 SSH 进行两个主机间的点对点的通信有时会带来意想不到的方便。
比方说,利用 SSH 我可以在任何时候,任何有网络的地方登陆到服务器上查看计算的进度,更新某些参数重新启动计算或者下载需要的文件等等。
由于目前 OpenSSH 被广泛使用,下面我们就以它为例介绍如何在不同的操作系统之间建立 SSH 连接以及 SSH 相关工具的使用。
安装和配置 OpenSSH Server首先我们在服务端 ( 远程 ) 的机器上安装 OpenSSH Server 软件。
以 Ubuntu 系统为例,安装的命令如下:清单 1. 安装 OpenSSH Server 软件sudo apt-get install opensshserver接下来在客户端的 Linux 系统上生成密钥。
根据使用算法的不同,可以选择 RSA 或 DSA 密钥。
这里我们使用了 RSA 密钥:清单 2. 生成 RSA 密钥ssh-keygen – t rsa以上命令在当前用户目录 .ssh 下生成一对密钥,包含一只公钥 id_rsa.pub 和一只私钥 id_rsa。
公钥需要添加到远程主机的有关文件中,即:清单 3. 添加公钥到 authorized_keys 中cat id_rsa.pub >> ~/.ssh/authorized_keys由于我们打算使用基于密钥的认证方式,所以要修改 OpenSSH Server 的配置文件 sshd_config 以确保其中有下面这几行:清单 4. 修改配置文件 sshd_config……RSAAuthentication yesPubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keys…… .最后不要忘了启动远程主机上的 SSH 服务:清单 5. 启动远程主机的 SSH 服务sudo /etc/init.d/ssh restart现在基本的准备工作完成,我们可以进行两台 Linux 主机的连接了。
两台 Linux 主机间的 SSH 连接为了叙述的方便,假定远程主机上存在用户 user,且主机名为 hostname。
注意这里 hostname 应该是网络上可以访问的地址。
从客户主机登陆远程主机使用下面的命令:清单 6. SSH 登陆远程主机ssh – l user hostname 或者ssh user@hostname这里– l (login_name) 选项后接的是用户名。
当然也可以不使用这个选项,而采用第二种紧凑的方式登陆。
成功后会得到远程主机的提示符,然后就可以进行需要的操作了。
此外也可以直接操作远程主机,比如:清单 7. 直接运行远程主机上的 date 命令ssh user@hostname date两台 Linux 主机间的数据交换除了远程控制,利用 SSH 也可以方便地在两台主机间传输数据。
其中最灵活高效的工具要算是 SCP (Secure copy) 了,而它的使用也很容易。
下面的命令:清单 8. 上传数据到远程主机scp localfile.dat user@hostname:/home/user/会把本机当前目录下的数据文件 localfile.dat 拷贝到远程主机的目录/home/user 下。
SCP 支持文件传输时的重命名,比如清单 9 在上传文件的同时将其重新命名为remotefile.dat。
清单 9. 传输文件并重命名scp localfile.dat user@hostname:/home/user/remotefile.dat除了单个文件的传输,利用– r (copy directories recursively) 选项,SCP 可以对整个目录进行拷贝,比如:清单 10. 传输整个目录的内容scp – r user@hostname:/home/user/ .会把远程主机目录 /home/user 下的所有内容拷贝过来。
除了 SCP 外,还可以用 SFTP 来进行数据传输。
SFTP 类似于 FTP,但它进行加密传输,所以安全性更好一些。
使用 SFTP 时首先要登陆远程主机,如清单 11 所示:清单 11. SFTP 登陆远程主机并传输文件sftp user@hostnamesftp> cd /Aifsftp> get sumpi.c登陆成功后进入目录 /Aif 并下载文件 sumpi.c。
回页首Windows 主机和 Linux 主机间的 SSH 连接上面描述了两台 Linux 主机如何利用 SSH 进行互连。
现在我们要讨论一下Winodws 主机和 Linux 主机如何进行 SSH 互连,因为这也是经常会碰到的情况。
我们假定客户端系统是 Windows。
首先当然需要一个 Windows 下运行的 SSH 客户程序。
由于目前普遍使用 PuTTY,我们就以 PuTTY 为例来说明。
不过先要解决的还是密钥问题。
现在我们已经有了一对用于 Linux 主机间通信的 SSH 密钥 , 那么是否可以继续使用这对密钥了 ?使用同一对密钥的技巧遗憾的是无法直接使用,因为格式的原因 PuTTY 还不能识别由 OpenSSH 生成的密钥。
然而我们可以利用 PuTTY 中的工具 PUTTYGEN 来转化这个密钥,使之能被 PuTTY 识别。
为此启动 PUTTYGEN,导入要转化的私钥 id_rsa,然后点击 Save private key 按钮进行保存 ( 见图 1)。
新的私钥命名为 ssh_private.ppk,现在这个私钥就可以配合 PuTTY 使用了。
图 1. 私钥的转换Windows 主机访问 Linux 主机在 Windows 环境下利用 SSH 登陆 Linux 主机有两种方式,一种是用 PuTTY 软件以 GUI 的方式登陆,这种方式比较直观,具体的 PuTTY 设置可以见参考资源。
另一种方法更简洁,也就是使用 PuTTY 软件包里的工具 PLINK,从 Windows 主机的 Console 中登陆远程主机。
具体的命令如下:清单 12. 使用 PLINK 登陆 Linux 主机plink – i ssh_private.ppk user@hostname上面的 -i (key) 选项表示基于密钥的认证,它后面接的参数就是上面由PUTTYGEN 转化而来的私钥。
它位于当前目录下 ( 和 plink 同一个目录 )。
当然也可以把私钥保存在其他的地方,不过使用时要指定具体的路径。
成功登陆远程主机后会获得提示符,接下来就可以进行任何需要的操作了。
Windows 主机和 Linux 主机的数据交换利用 SSH 进行 Windows 主机和 Linux 主机的数据交换也很方便,因为 PuTTY 软件包里提供了 PSCP 这个工具,它的功能类似于 SCP。
下面是 PSCP 的几个基本用法。
清单 13. 上传数据到远程主机pscp – i ssh_private.ppk localfile.dat user@hostname:/home/user/cfd上面的命令把当前目录下的文件 localfile.dat 拷贝到远端机器的目录/home/user/cfd 下。
可以看出这里也使用了基于密钥的认证。
清单 14. 下载数据到本地主机pscp – i ssh_private.ppk user@hostname:/home/user/*.dat .把远程机器目录 /home/user 下所有具有 dat 扩展名的数据文件拷贝到本机当前目录下。
与 SCP 一样 , 如果要拷贝一个目录下的所有内容可以利用– r 选项,此外PSCP 还有一个常用的选项– ls。
使用这个选项时,PSCP 不会传输文件,而会列出远程机器上指定目录下的内容,例如:清单 15. 打印出远程主机目录下的文件信息pscp – i ssh_private.ppk – ls user@hostname:/Aif上面的命令会列出远程主机 /Aif 目录下所有文件的各种信息,效果就像在本地机器上使用 ls 命令一样。
除了 PSCP,PuTTY 中的 PSFTP 也可以用来传输数据,它的用法和上面的 SFTP 相似,这里就不介绍了。
回页首Windows 主机远程运行 X 程序PuTTY 的设置以及 X-Server 软件的选择有时可能需要运行远程主机上的一些 GUI 程序,利用 PuTTY 很容易实现这些需求。
我们知道 Linux 的 X Window 系统具有网络透明性。
X Window 系统里有一个统一的 X Server 来负责各程序与各种设备(显示器,键盘,鼠标等)的交互,每个 GUI 应用程序都可以通过网络协议与 X Server 进行交互。
对任何一个应用程序来说,本地运行和远程运行的差别仅仅是 X Server 地址的不同。
所以为了在 Windows 主机上运行远程的 X 程序首先需要一个本地的 X Server。
同时,OpenSSH 具有 X 转发功能,可以将 Linux 主机上的 X 程序通过 SSH 管道转发给客户端。
此后 PuTTY 再将转发来的 X 程序交给本地 Windows 系统下的X Server 程序来管理和显示。
为此我们要做好远程 Linux 主机和本地 Windows 主机的设置。
远程主机的最重要的设置是配置好 OpenSSH Server 使其允许 X 转发。
为此修改其配置文件 sshd_config,确保其中有如下一行:清单 16. sshd_config 的配置……X11Forwarding yes…… .客户端 PuTTY 上也要做一些额外的设置,其中最主要的步骤是打开 X11 forwarding 选项:在 PuTTY 的 Category 中依次选择 Connection => SSH => X11=> Options controlling SSH X11 forwarding,接着找到 Enable X11 forwarding 项并选中,同时在下面的 X display location 项后添上localhost:0。