N天学习一个linux命令之ssh
用途
通过加密连接,远程登录主机和在远程主机执行命令,也可以用于转发x11和tcp,也可用于搭建VPN。第一次连接时,会弹出远程主机公钥指纹确认信息,通过这个方式防止中间人攻击。
用法
ssh [options] [user@]hostname [command]
常用选项
-1
使用协议版本1
-2
使用协议版本2
-4
使用IPv4地址
-6
使用IPv6地址
-A
开启授权代理转发,有安全问题,一般不开启
-a
禁用authentication agent connection的转发
-b bind_address
设置连接的源地址
-C
传输时压缩数据,针对慢网速有明显的效果
-c cipher_spec
指定加密会话的算法,对于协议2版本可以指定多个且使用逗号隔开(指定多个好像没神马用><)
-D [bind_address:]port
本地动态端口转发配置,目前支持SOCKS4和SOCKS5协议
-e escape_char
给会话设置转义字符,默认是~(不知道这个选项是有什么用?)
-F configfile
指定配置文件路径,默认是/etc/ssh/ssh_config
-f
执行命令之前,ssh在后台执行
-g
允许远程主机连接本地转发端口
-I pkcs11
(Specify the PKCS#11 shared libarary ssh should use to communicate with a PKCS#11 token used for storing the user’s private RSA key.)
-i identity_file
使用私钥登录时,私钥所在的文件路径
-K
(Enables GSSAPI-based authentication and forwarding (delegation) of GSSAPI credentials to the server.)
-k
(Disables forwarding (delegation) of GSSAPI credentials to the server.)
-L [bind_address:]port:host:hostport
(Specifies that the given port on the local (client) host is to be forwarded to the given host and port on the remote side. This works by allocating a socket to listen to port on the local side, optionally bound to the specified bind_address. Whenever a connection is made to this port, the connection is forwarded over the secure channel, and a connection is made to host port hostport from the remote machine. Port forwardings can also be specified in the configuration file.)
-l login_name
设置登录远程主机用户名
-N
禁止执行远程命令,对于只是用于转发很有用
-n
(Redirects stdin from /dev/null (actually, prevents reading from stdin). This must be used when ssh is run in the background. A common trick is to use this to run X11 programs on a remote machine.)
-o option
(Can be used to give options in the format used in the configuration file. This is useful for specifying options for which there is no separate command-line flag.)
-p port
指定连接远程主机的端口,默认是22
-q
安静模式
-R [bind_address:]port:host:hostport
(Specifies that the given port on the remote (server) host is to be forwarded to the given host and port on the local side. This works by allocating a socket to listen to port on the remote side, and whenever a connection is made to this port, the connection is forwarded over the secure channel, and a connection is made to host port hostport from the local machine.)
-s
(May be used to request invocation of a subsystem on the remote system. Subsystems are a feature of the SSH2 protocol which facilitate the use of SSH as a secure transport for other applications (eg. sftp(1)). The subsystem is specified as the remote command.)
-T
(Disable pseudo-tty allocation.)
-t
(Force pseudo-tty allocation. This can be used to execute arbitrary screen-based programs on a remote machine, which can be very useful, e.g. when implementing menu services.)
-V
显示程序版本
-v
开启调试模式
-W host:port
(Requests that standard input and output on the client be forwarded to host on port over the secure channel. Implies -N, -T, ExitOnForwardFailure and ClearAllForwardings and works with Protocol version 2 only.)
-w local_tun[:remote_tun]
( Requests tunnel device forwarding with the specified tun(4) devices between the client (local_tun) and the server (remote_tun).)
-X
(Enables X11 forwarding.)
-x
(Disables X11 forwarding.)
-Y
(Enables trusted X11 forwarding. Trusted X11 forwardings are not subjected to the X11 SECURITY extension controls.)
-y
(Send log information using the syslog(3) system module. By default this information is sent to stderr.)
识别用户身份方式
1 GSSAPI-based authentication
2 host-based authentication
3 public key authentication
4 challenge-response authentication
5 password authentication
转移字符含义
~. Disconnect.
~^Z Background ssh.
~# List forwarded connections.
~& Background ssh at logout when waiting for forwarded connection / X11 sessions to terminate.
~? Display a list of escape characters.
~B Send a BREAK to the remote system (only useful for SSH protocol version 2 and if the peer supports it).
~C Open command line.
~R Request rekeying of the connection
实践
1 使用私钥登录
[root@vm ~]# ssh -p 22 -i wadeyu.pem wadeyu@192.168.2.42
2 使用账号密码登录
[root@vm ~]# ssh -p 22 wadeyu@192.168.2.42
wadeyu@192.168.2.42's password:
Last login: Tue Apr 17 11:49:11 2018 from 192.168.2.8
参考资料
【0】 man ssh
【1】实战SSH端口转发
https://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/
N天学习一个linux命令之ssh的更多相关文章
- N天学习一个Linux命令之帮助命令:man
前言 工作中每天都在使用常用的命令和非常用的命令,忘记了用法或者参数,都会bing一下,然后如此循环.一直没有真正的系统的深入的去了解命令的用法,我决定打破它.以前看到有人,每天学习一个linux命令 ...
- N天学习一个linux命令之scp
用途 通过ssh通道,不同主机之间复制文件 用法 scp [options] [user@host:]file1 [user2@host2:]file2 常用参数 -1使用 ssh 1协议 -2使用s ...
- N天学习一个Linux命令之free
用途 查看系统内存(物理/虚拟/缓存/共享)使用情况 用法 free [-b | -k | -m | -g | -h] [-o] [-s delay ] [-c count ] [-a] [-t] [ ...
- N天学习一个linux命令之ping
用途 检测主机是否可到达,也就是说,目标主机是否可以联网,还可以用于检测网速.通过发送ICMP ECHO_REQUEST数据包检测. 用法 ping [options] destination 常用选 ...
- N天学习一个linux命令之kill
用途 用于终止进程 用法 kill [-s signal|-p] [--] pid... kill -l [signal] 说明 1.默认发送信号15(请求终止进程,程序可以捕获,操作系统会杀死没有对 ...
- N天学习一个linux命令之du
用途 统计文件或者目录占用硬盘空间大小 用法 du [OPTION] [FILE]du [OPTION] --files0-from=F 常用参数 -a, --all统计所有文件,不仅仅是目录 -b, ...
- 每天学习一个Linux命令-目录
在工作中总会零零散散使用到各种Linux命令,从今天开始详细的学习一下linux常用命令,坚持每天一个命令,学习的主要参考资料为: 1.竹子-博客(https://www.cnblogs.com/pe ...
- N天学习一个linux命令之umask
前言 umask不是linux命令,而是shell内置的指令,俗称用户权限掩码,用于对用户创建的文件和目录设置默认权限.默认的权限掩码是0022,也就是说新创建的文件权限是0644,新创建的目录权限是 ...
- N天学习一个linux命令之ip
用途 show / manipulate routing, devices, policy routing and tunnels 用法 通用格式 ip [ OPTIONS ] OBJECT { CO ...
随机推荐
- [Swift通天遁地]三、手势与图表-(8)制作股市中常用的蜡烛图表
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- 【LeetCode】-- 73. Set Matrix Zeroes
问题描述:将二维数组中值为0的元素,所在行或者列全set为0:https://leetcode.com/problems/set-matrix-zeroes/ 问题分析:题中要求用 constant ...
- Jquery课堂上课了,第一节Jquery选择器$
Jquery是优秀的Javascrīpt框架,$是jquery库的申明,它很不稳定(我就常遇上),换一种稳定的写法jQuery.noConflict(); jQue ...
- jquery ajax在IE9以下进行跨域请求时无效的问题
第一步:设置浏览器安全属性,启用[通过域访问数据源]选项: 1.选择Internet选项 2.选择安全---自定义级别 3.找到其他---通过域访问数据源,选择启用,然后确定就可以了. 第二步:调用a ...
- C#入门经典 Chapter5 变量的更多内容
5.1类型转换 1.类型转换 1.1隐式转换:所有情况下可进行,编译器执行转换. 1.2显示转换 强制转换:强迫数据从一种类型转换为另一种类型. (<destinationType>)&l ...
- javascript之console篇
javascript中的console使用得当,将会事半功倍,对bug,性能等的跟踪,优化是个不错的利器! 1.基本日志消息打印: console.debug(msg); console.info() ...
- ABP生成错误:必须添加对程序集“netstandard”的引用
当前使用ABP版本为:4.6.0 升级vs2017到15.4版本,升级framework到4.7版本 如果Core版本请升级到net core 2
- pptp服务故障
pptp服务故障记录 原文地址:http://www.cnblogs.com/caoguo/p/4994512.html 1.pptp部署是遇到开了防火墙端口不能拨号,拨号是提示错误如下: 但是关闭防 ...
- stress工具使用指南和结果分析
stress介绍 #stress `stress' imposes certain types of compute stress on your system Usage: stress [OPTI ...
- 关于javascript原型链的记录
构造函数拥有名为prototype属性,每个对象都拥有__proto__属性,而且每个对象的__proto__属性指向自身构造函数prototype. **当调用某种方法或属性时,首先会在自身调用或查 ...