SSH命令总结

一、SSH简介

SSH(全称 Secure Shell)是一种加密的网络协议。使用该协议的数据将被加密,如果在传输中间数据泄漏,也可以确保没有人能读取出有用信息。要使用 SSH,目标机器应该安装 SSH 服务端应用程序,因为 SSH 是基于客户-服务模式的。 当你想安全的远程连接到主机,可中间的网络(比如因特网)并不安全,通常这种情况下就会使用 SSH。

二、安装 SSH

基于 Debian / Ubuntu 的系统 :

安装 ssh-client


  1. $ sudo apt-get install openssh-client

安装 ssh-server


  1. $ sudo apt-get install openssh-server

基于 RedHat / CentOS 的系统 :


  1. [[email protected] ~]# yum install openssh-server openssh-clients

SSH 一旦安装上,我们就可以在终端下输入 ssh 来检查下安装的是否正常。

[[email protected] ~]# ssh
usage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
           [-D [bind_address:]port] [-e escape_char] [-F configfile]
           [-i identity_file] [-L [bind_address:]port:host:hostport]
           [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
           [-R [bind_address:]port:host:hostport] [-S ctl_path]
           [-W host:port] [-w local_tun[:remote_tun]]
           [[email protected]]hostname [command]

三、SSH命令注解

[[email protected] ~]# ssh 192.168.2.106  ==》直接登录远程服务器192.168.2.106

  1. [[email protected] ~]# ssh -l jianghua 192.168.2.106 或

    [[email protected] ~]# ssh [email protected]  ==》指定登录远程服务器的用户名。

  2. [[email protected] ~]$ shh  192.168.2.106 -p 22  ==》指定登录远程服务器的端口号。
  3. [[email protected] ~]$ ssh -b 192.168.2.102  [email protected]192.168.2.106 ==>由于本机有多个网卡,指定有2.102这个网卡IP登录过程服务器。
  4. [[email protected] ~]# ssh -v 192.168.2.106 ==》显示登录远程服务器192.168.2.106,连接信息。
  5. [[email protected] ~]# ssh -c 192.168.2.106 ==》登录远程服务器后,在本地和远程传输数据时,数据会被压缩。
  6. [[email protected] ~]# ssh -F /home/jianghua/my_ssh_config 192.168.2.106 ==》指定特定用户的SSH配置文件登录到远程服务器。
  7. [[email protected] ~]#ssh -N -L2001:localhost:80 somemachine ==》将远程服务器80端口和本地2001端口做隧道绑定,实现在浏览器中输入http://localhost:2001可以访问网站。
  8. [[email protected] ~]#ssh [email protected] cat /path/to/reemotefile | diff /path/to/localfile -  ==>将远程服务器上指定的文件和本地文件做比较。

10.[[email protected] ~]#ssh [email protected]  command ==》在远程服务器上执行命令。

四、两台机器访问不需要密码设置

假设 A 为客户机器,B为服务器,现在要让A机器ssh登录B机器无需输入密码。
做法:
1、登录A机器
2、执行:ssh-keygen -t [rsa|dsa]  会生成密钥文件和私钥文件 id_rsa,id_rsa.pub或id_dsa,id_dsa.pub
3、将 .pub 文件复制到B机器的 .ssh 目录。(ssh-copy-id -i ~/.ssh/id_rsa.pub user@B)

4、 执行:cat id_dsa.pub >> ~/.ssh/authorized_keys
5、验证登录:ssh B

时间: 2024-10-29 04:19:26

SSH命令总结的相关文章

Crontab执行脚本中的ssh命令访问被拒绝

我们经常会通过crontab来执行定时任务,通常生产环境中在不同主机直接进行登录是通过ssh来连接的.比如我们通过在备份服务器上设定定时任务,定期通过scp(使用SSH的远程拷贝命令)来拷贝远程服务器的数据到备份服务器上,这也是我遇到的一个事情. 环境描述: 脚本与定时任务: 定时任务设置如下: 无论是否执行成功,都把信息输出到2222.txt中 脚本内容如下: 我这里仅用ssh命令来测试,实际上这个命令如果可以正常执行的话,你执行scp命令也一样 #!/bin/bash ssh -v 192.

Linux 下 SSH 命令实例指南

如果你已经在IT圈内混久了, 应该对 SSH 这个了不起的工具及其安全特性有所耳闻吧. 本教程可以让你在短时间内掌握通过 SSH 安全便利地连接到远程计算机的技术. 如果你对 SSH 还没什么概念, 可以先访问 维基百科 进行了解. 基本用法 最简单的 SSH 命令只需要指定用户名和主机名参数即可. 主机名可以是 IP 地址或者域名. 命令格式如下: $ ssh [email protected] 比如要在我的局域网内登录一个树莓派系统, 只需要简单的在命令行输入如下命令: $ ssh [ema

ssh命令、ping命令、traceroute 命令所使用的协议

在Node reboot or eviction: How to check if yourprivate interconnect CRS can transmit network heartbeats (文档 ID 1445075.1)中有这么一句话: The script in here performs the network connectivity check usingssh. This check complements ping or traceroute since ssh

python 通过paramiko模块批量执行ssh命令

多台设备批量执行ssh命令,目前是串行,后期会加入多线程实现并行,直接上源码 # 多台设备批量执行ssh命令     #!/usr/bin/env python     # -*- coding:utf-8 -*-     __author__  = 'babyshen'     __version__ = '1.0.0'     import paramiko     class SSh(object):     def __init__(self,port,username,password

SSH远程管理、参数讲解、xshell使用、scp,sftp,ssh命令(ssh两种方式的密钥验证方

1.SSH远程管理 SSH(Secure Sheel)是一种安全通道协议,主要用于实现字符界面的远程登录.远程复制等功能.SSH协议对通信双方的数据传输进行了加密处理,其中包括用户的口令.与早期的TELNET(远程登录,tcp23端口).RSH(Remote Sheel,远程执行命令).RCP(Remote File Copy,远程文件复制)等应用想必,SSH协议提供了更好的安全性. 配置OpenSSH服务端(由openssh.openssh-server软件包提供.主配置文件/etc/ssh/

ssh 命令

ssh命令是 SSH(全称 Secure Shell)是一种加密的网络协议.使用该协议的数据将被加密,如果在传输中间数据泄漏,也可以确保没有人能读取出有用信息.要使用 SSH,目标机器应该安装 SSH 服务端应用程序,因为 SSH 是基于客户-服务模式的. 当你想安全的远程连接到主机,可中间的网络(比如因特网)并不安全,通常这种情况下就会使用 SSH. 安装 SSH 如果碰巧你的机器没装,我们可以手工来安装一下.最简单的方式就是使用 Linux 包管理器. 基于 Debian / Ubuntu

linux之ssh命令

ssh命令用于远程登录上Linux主机. 常用格式:ssh [-l login_name] [-p port] [[email protected]]hostname更详细的可以用ssh -h查看. 举例 不指定用户: ssh 192.168.0.11 指定用户: ssh -l root 192.168.0.11 ssh [email protected] 如果修改过ssh登录端口的可以: ssh -p 12333 192.168.0.11 ssh -l root -p 12333 216.23

使用jcabi-ssh在java中操作ssh命令

使用jcabi-ssh在java中操作ssh命令 如果我们想在java代码中远程连接ssh,并且执行一些shell命令,可以使用jcabi-ssh这个小框架,纯java编写,很方便.这里介绍一下如何使用. 依赖 java框架,依赖的包肯定是jar文件了,jar包地址http://repo1.maven.org/maven2/com/jcabi/jcabi-ssh/1.1/jcabi-ssh-1.1.jar,如果使用maven管理,可以添加依赖: <dependency> <groupId

linux中ssh命令及scp远程文件传输

ssh命令: ssh  用户名@ip  远程管理指定Linux服务器 远程文件传输scp命令: scp -r 用户名@ip:源文件路径 本地路径      #下载文件 scp -r 本地文件 用户名@ip:上传路径        #上传文件