Chinaunix首页 | 论坛 | 博客
  • 博客访问: 538873
  • 博文数量: 102
  • 博客积分: 950
  • 博客等级: 准尉
  • 技术积分: 1094
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-28 16:07
文章分类

全部博文(102)

文章存档

2020年(2)

2016年(5)

2015年(15)

2014年(25)

2013年(18)

2012年(19)

2011年(18)

我的朋友

分类: LINUX

2011-06-09 17:07:55

 
忽略第一次连接检查:
ssh_command='ssh -oStrictHostKeyChecking=no $ssh_options -p $port '
或者直接改clinet配置文件/etc/ssh/ssh_config,一劳永逸!
StrictHostKeyChecking no
 
优化 ssh连接过慢,DNS轮询导致的问题:
主要就是修改配置文件/etc/ssh/sshd_config
(1)修改"UseDNS"的值为“no”(没有的添加该配置选项,注释掉的放开即可)
(2)修改“GSSAPIAuthentication”的值为“no”(没有的添加该配置选项,注释掉的放开即可);


$ ssh-copy-id user@host
$ ssh-keygen

------------------------------------------------------------------------------------------
SSH反向连接
内网机器:A
公网机器:B
首先在内网机器A执行:
ssh -f -N -R B_port:localhost:22 B_ip
输入密码,连接公网机器B
 
在公网机器B执行:
ssh A -p B_port
即可登陆内网机器A

通过证书的方式配置,免输密码。

比如:

ssh -f -N -R 22222:localhost:22 .222

144.222$ ssh -p 22222

=======================================

本地正向转发到远端
clientA 要连接serverC,通过severB转发

serverB
serverC

在serverB上执行:
ssh -C -f -N -g -L 7001:localhost:22 10.105.70.5

-C:压缩数据传输。

-f :后台认证用户/密码,通常和-N连用,不用登录到远程主机。

-N :不执行脚本或命令,通常与-f连用。

-g :在-L/-R/-D参数中,允许远程主机连接到建立的转发的端口,如果不加这个参数,只允许本地主机建立连接。

-L 本地端口:目标IP:目标端口


============
让本地端口实现加密

$ ssh -D 8080 user@host

SSH会建立一个socket,去监听本地的8080端口。一旦有数据传向那个端口,就自动把它转移到SSH连接上面,发往远程主机。可以想象,如果8080端口原来是一个不加密端口,现在将变成一个加密端口。


=============

N参数,表示只连接远程主机,不打开远程shell;T参数,表示不为这个连接分配TTY。这个两个参数可以放在一起用,代表这个SSH连接只用来传数据,不执行远程操作。

  $ ssh -NT -D 8080 host

-------------------------------------------------------------
echo export TMOUT=1000000 >> /root/.bash_profile; source .bash_profile

#vi  /etc/ssh/ssh_config  /etc/ssh/sshd_config
ServerAliveInterval 300
ClientAliveCountMax


阅读(2142) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~