Linux下SSH命令使用方法详解

操作方法

  • 01

    1、查看SSH客户端版本 有的时候需要确认一下SSH客户端及其相应的版本号。使用ssh -V命令可以得到版本号。需要注意的是,Linux一般自带的是OpenSSH: 下面的例子即表明该系统正在使用OpenSSH: $ ssh -V OpenSSH_3.9p1, OpenSSL 0.9.7a Feb 19 2003 下面的例子表明该系统正在使用SSH2: $ ssh -V ssh: SSH Secure Shell 3.2.9.1 (non-commercial version) on i686-pc-linux-gnu 2、用SSH登录到远程主机 当你第一次使用ssh登录远程主机时,会出现没有找到主机密钥的提示信息。输入"yes"后,系统会将远程主机的密钥加入到你的主目录下的 .ssh/hostkeys下,这样你就可以继续操作了。示例如下: 1 2 3 4 5 6 7 8 localhost$ ssh -l jsmith remotehost.example.com Host key not found from database. Key fingerprint: xabie-dezbc-manud-bartd-satsy-limit-nexiu-jambl-title-jarde-tuxum You can get a public key‘s fingerprint by running % ssh-keygen -F publickey.pub on the keyfile. Are you sure you want to continue connecting (yes/no)? Yes Host key saved to /home/jsmith/.ssh2/hostkeys/key_22_remotehost.example.com.pub host key for remotehost.example.com, accepted by jsmith Mon May 26 2008 16:06:50 -0700 jsmith@remotehost.example.com password: remotehost.example.com$ 因为远程主机的密钥已经加入到ssh客户端的已知主机列表中,当你第二次登陆远程主机时,只需要你输入远程主机的登录密码即可。 1 2 3 localhost$ ssh -l jsmith remotehost.example.com jsmith@remotehost.example.com password: remotehost.example.com$ 由于各种原因,可能在你第一次登陆远程主机后,该主机的密钥发生改变,你将会看到一些警告信息。出现这种情况,可能有两个原因: o 系统管理员在远程主机上升级或者重新安装了SSH服务器 o 有人在进行一些恶意行为,等等。 在你输入“yes”之前呢,最佳的选择或许是联系你的系统管理员来分析为什么会出现主机验证码改变的信息,核对主机验证码是否正确。 localhost$ ssh -l jsmith remotehost.example.com @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the- middle attack)! It is also possible that the host key has just been changed. Please contact your system administrator. Add correct host key to ―/home/jsmith/.ssh2/hostkeys/key_22_remotehost.example.com.pub‖ to get rid of this message. Received server key's fingerprint: xabie-dezbc-manud-bartd-satsy-limit-nexiu-jambl-title-arde-tuxum You can get a public key's fingerprint by running % ssh-keygen -F publickey.pub on the keyfile. Agent forwarding is disabled to avoid attacks by corrupted servers. Are you sure you want to continue connecting (yes/no)? yes Do you want to change the host key on disk (yes/no)? yes Agent forwarding re-enabled. Host key saved to /home/jsmith/.ssh2/hostkeys/key_22_remotehost.example.com.pub host key for remotehost.example.com, accepted by jsmith Mon May 26 2008 16:17:31 -0700 jsmith @remotehost.example.com's password: remotehost$ 3、调试SSH客户端会话 当ssh连接出现问题时,我们需要通过查看调试信息来定位这些错误。一般来讲使用v选项(注意:是小写的v),即可查看调试信息。 没有SSH客户端调试信息的例子: 1localhost$ ssh -l jsmith remotehost.example.com 2warning: Connecting to remotehost.example.com failed: No address associated to the name 包含ssh调试信息的例子: 1locaclhost$ ssh -v -l jsmith remotehost.example.com 2debug: SshConfig/sshconfig.c:2838/ssh2_parse_config_ext: 3Metaconfig parsing stopped at line 3. 4debug: SshConfig/sshconfig.c:637/ssh_config_set_param_verbose: 5Setting variable 嘠攀爀戀漀猀攀Mode' to FALSE'. 6debug: SshConfig/sshconfig.c:3130/ssh_config_read_file_ext: Read 17 params from config file. 7debug: Ssh2/ssh2.c:1707/main: User config file not found, using defaults. (Looked for /home/jsmith/.ssh2/ssh2_config') 8debug: Connecting to remotehost.example.com, port 22… (SOCKS not used) 9warning: Connecting to remotehost.example.com failed: No address associated to the name [注:很多命令中,v选项对应的英文是 verbose,也就是详细的信息的意思。] 当你使用ssh从本机登录到远程主机时,你可能希望切换到本地做一些操作,然后再重新回到远程主机。这个时候,你不需要中断ssh连接,只需要按照第4点的步骤操作即可: 4、用SSH退出符切换SSH会话 这个技巧非常实用。尤其是远程登陆到一台主机A,然后从A登陆到B,如果希望在A上做一些操作,还得再开一个终端,很是麻烦。 当你使用ssh从本机登录到远程主机时,你可能希望切换到本地做一些操作,然后再重新回到远程主机。这个时候,你不需要中断ssh连接,只需要按照如下步骤操作即可: 当你已经登录到了远程主机时,你可能想要回到本地主机进行一些操作,然后又继续回到远程主机。在这种情况下,没有必要断开远程主机的会话,你可以用下面的办法来完成: 1.登入远程主机: localhost$ ssh -l jsmith remotehost 2.已连接远程主机: remotehost$ 3.要临时回到本地主机,输入退出符号:“~”与“Control-Z”组合。 当你输入“~”你不会立即在屏幕上看到,当你按下<Control-Z>并且按回车之后才一起显示。如下,在远程主机中以此输入“~<Control-Z>” remotehost$ ~^Z [1]+ Stopped ssh -l jsmith remotehost localhost$ 4.现在你已经退回到了本地主机,ssh远程客户端会话就在UNIX后台中运行,你可以向下面那样查看它: localhost$ jobs [1]+ Stopped ssh -l jsmith remotehost 5. 你可以将后台运行的ssh会话进程切换到前台,重新回到远程主机,而无需输入密码 localhost$ fg %1 ssh -l jsmith remotehost remotehost$ 5、用SSH退出字符会话,显示信息 要想取得一些关于当前会话有用的信息,可以按以下方式完成。不过这只能在SSH 2 客户端上使用。 登录到远程服务器 localhost$ ssh -l jsmith remotehost 如下所示,在远程服务器上,输入ssh退出字符~并输入s。这样会显示出很多有关当前ssh连接的有用信息 1remotehost$ [注:当你在命令行上输入~s时,它是不可见的.] 2remote host: remotehost 3local host: localhost 4remote version: SSH-1.99-OpenSSH_3.9p1 5local version: SSH-2.0-3.2.9.1 SSH Secure Shell (non-commercial) 6compressed bytes in: 1506 7uncompressed bytes in: 1622 8compressed bytes out: 4997 9uncompressed bytes out: 5118 10packets in: 15 11packets out: 24 12rekeys: 0 13Algorithms: 14Chosen key exchange algorithm: diffie-hellman-group1-sha1 15Chosen host key algorithm: ssh-dss 16Common host key algorithms: ssh-dss,ssh-rsa 17Algorithms client to server: 18Cipher: aes128-cbc 19MAC: hmac-sha1 20Compression: zlib 21Algorithms server to client: 22Cipher: aes128-cbc MAC: hmac-sha1 23Compression: zlib 24localhost$ 以上就是Linux下SSH的详细使用方法,希望能够对你有所帮助。

(0)

相关推荐

  • linux下ffmpeg的使用方法详解

    格式转换 (将file.avi 转换成output.flv) #ffmpeg -i file.avi output.flv -i 表示输入文件 :现在有个视频video.avi,有个音频 audio. ...

  • Linux下partprobe命令的使用详解

    linux上,在安装系统之后,可否创建分区并且在不重新启动机器的情况下系统能够识别这些分区? 解决方法: 你可以使用一个叫做partprobe的工具.它包含在parted的rpm软件包中.在Red H ...

  • Linux下各种服务器的架设详解

    ########DNS########bind 篇######## 1.1 软件的相关资源。 官方网站:http://www.bind.com/ 源码软件包官方下载:http://www.isc.or ...

  • Linux 中RPM命令参数使用详解

    此工具包最先是由Red Hat公司推出的,后来被其他Linux开发商所借用。由于它为Linux使用者省去了很多时间,所以被广泛应用于在Linux下安装、删除软件。下面就给大家介绍一下它的具体使用方法。 ...

  • Linux中cron命令的用法详解

    linux中有一个命令可以定期来执行系统任务.这就是crond服务.下面介绍下crontab命令的用法. linux任务调度的工作主要分为以下两类: 编辑/etc/crontab 文件配置cron c ...

  • Linux服务器系统内存监控方法详解

    操作方法 01 内存是Linux内核所管理的最重要的资源之一.内存管理系统是操作系统中最为重要的部分,因为系统的物理内存总是少于系统所需要的内存数量.虚拟内存就是为了克服这个矛盾而采用的策略.系统的虚 ...

  • ubuntu下crontab无效解决方法详解

    在Debain的docker中启用crontab,有问题处理了一天,特地记录一下.Debain和ubuntu差不多,故算在ubuntu下面了. 1.第一个问题,安装crontab apt-get in ...

  • Linux下ps命令详解 Linux下ps命令的详细使用方法

    Linux下ps命令详解 Linux上进程有5种状态:1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运 ...

  • Linux下ps命令详解

    Linux下ps命令详解 Linux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可 ...