A. secureCRT中如何用 vbscript脚本实现SSH自动登录
SSH的英文全称是SecureShell传统的网络服务程序,如:ftp和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而通过使用SSH客户端与服务器端通讯时,用户名及口令均进行了加密,有效防止了对口令的窃听。同时通过SSH的数据传输是经过压缩的,所以可以提高数据的传输速度,既然如此我们为什么不使用它呢。SSH是由客户端和服务端的软件组成的,有两个不兼容的版本分别是:1.x和2.x。至于具体如何安装服务器端,普通用户就不需要关心了。一、安装1、安装首先要下载SecureCRT,目前最新的版本为6.1.3(截止到2008年2月,其破解版本TBE或AGAiN),我们以5.53版为例进行介绍,下载安装文件scrt553.exe和破解文件keygen.exe。安装过程很简单,运行scrt553.exe,只要“下一步”即可,安装过程中可以看到SecureCRT支持以下协议:SecureCRT使用说明-脚本之家安装完成后,第一次启动SecureCRT会有如下提示:SecureCRT使用说明-脚本之家用户需要指定一个目录,用来存放SecureCRT的配置信息。此目录默认为C:\DocumentsandSettings\用户名\ApplicationData\VanDyke\Config,如果是升级SecureCRT需要保持此文件夹与旧版本一致,如果重装系统,一定要备份此目录。如果需要更改,启动SecureCRT后点击Options=>Globalptions=>General修改Configurationfolder即可。2、破解未破解版本,只有30天的使用期。关闭SecureCRT,将keygen.exe拷贝到安装目录C:\ProgramFiles\SecureCRT中,运行它,填写Name,Company后点击Generate得到Serial,Date,LicenseKey信息,点击Patch按钮,破解并备份SecureCRT主程序。运行SecureCRT,点击Help=>EnterLicenseData…,填写从keygen得到的注册信息即可。一般AGAiN破解版本期限一年。二、基本设置修改设置为了SecureCRT用起来更方便,需要做一些设置,需要修改的有如下几处:1、退出主机自动关闭窗口Options=>Globalptions=>General=>DefaultSession=>EditDefaultSettingsSecureCRT使用说明-脚本之家Terminal中将Closeondisconnect选上,当用户从主机中退出后可以自动关闭当前连接的窗口。SecureCRT使用说明-脚本之家2、修改默认卷屏行数当你做一个操作,屏幕输出有上百行,当需要将屏幕回翻时,这个设置会有很大帮助,默认为500行,可以改为10000行,不用担心找不到了。Terminal=>Emulation=>Scrollback修改为10000。SecureCRT使用说明-脚本之家3、修改SFTP默认下载路径(可选):对于使用SSH的连接中,可以使用SFTP下载文件,在这里可以设置文件的下载目录(默认为下载到“我的文档”中)Connection=>SSH2=>SFTPTab=>Initialdirectories=>LocaldirectorySecureCRT使用说明-脚本之家4、修改Xmodem/Zmodem上传下载路径(可选)SecureCRT可以使用Xmodem/Zmodem方便的上传和下载文件。在Sessionoptions=>Xmodem/Zmodem=>Directories中设置5、拷贝与粘贴的设置通过鼠标操作即可拷贝或粘贴所需内容是一个非常方便的设置Options=>Globalptions=>Terminal=>Mouse选中Copyonselect和Pasteonmiddlebutton这样设置后,只要用鼠标选中所需内容,则将内容拷贝到剪切板中,点击鼠标中键即可粘贴内容。SecureCRT使用说明-脚本之家另外可以设置使用Windows下的拷贝粘贴快捷键,Options=>Globalptions=>General=>DefaultSession=>EditDefaultSettings=>Terminal=>Mappedkeys=>使用说明-脚本之家6、Tabs设置从Secure5.0以后,增加了Tabs(标签)选项,多个连接可以在同一个窗口下打开,类似IE7.0的风格。将Double-click选项修改为CloseTab,双击标签可关闭连接窗口。SecureCRT使用说明-脚本之家三、界面介绍1、菜单1)File文件Connect连接,打开一个连接或者编辑已有的连接,创建新连接。QuickConnect快速连接,快速连接对话框,快速连接主机的最便捷方式。ConnectinTab在Tab中打开一个新的会话窗口。CloneSession克隆当前会话窗口。ConnectSFTPTab打开SFTP窗口,对于SSH连接,此选项可用。在此会话窗口中可使用SFTP命令传输文件。Reconnect重新连接Disconnect中断当前会话窗口的连接LogSession把当前窗口的会话记录到log文件中。RawLogSession将更详细的会话记录到log文件中,包括服务器更详细的响应信息。TraceOptions在log文件中记录协议会话信息选项。(包括客户端与主机互相连接时的一些信息内容)2)Edit编辑拷贝粘贴等3)View视图显示各种工具条4)Options选项包括全局选项和Session选项5)Transfer传递文件使用Xmodem/Zmodem上传下载文件6)Script.脚本运行一个脚本文件,或记录一个新的脚本。(类似Word中的宏功能)7)Tools工具键盘映射编辑,密钥生成工具等8)Help帮助2、对话框和按钮点击File=>Connect可出现Connect对话框。从左至右按钮依次为:连接(激活选中的连接条目);快速连接(快捷连接新的主机);新建连接(在对话框中新增一个连接条目);剪切;复制;粘贴;删除(对话框中的条目);新建文件夹,属性(显示选中条目的属性),创建条目的桌面快捷方式,帮助。SecureCRT使用说明-脚本之家Connect对话框下方有两个选项:Showdialogonstart(启动SecureCRT时显示Connect对话框);Openinatab(以新标签卡的形式打开一个会话),选中此选项,新的会话窗口如下图所示:在Linux主机下,可以使用Xmodem/Zmodem方便的上传和下载文件基本命令:sz下载文件到本地;rz上传本地文件到主机。5、其它技巧1)使用脚本来进行重复性工作可以像word的宏一样,把你的重复性操作记录为一个脚本文件Script.=>StartRecordingScript,开始记录Script.=>StopRecordingScript,停止记录,Saveas…保存成script文件。下次调用时Script.=>Run=>SelectScript.torun…SecureCRT使用说明-脚本之家2)使用Mapkey来进行重复输入工作可以设置为全局选项(对所有连接都有效),也可以只设置为Session选项,如下图Options=>Sessionptions=>Terminal=>Mappedkeys=>Mapakey,出现MapKey对话框SecureCRT使用说明-脚本之家SecureCRT使用说明-脚本之家例如,单击F12键,在SendString输入你要经常重复使用的命令,okSecureCRT使用说明-脚本之家则下次在会话窗口中点击F12键将直接输入df–m3)自动登录以登录一个Telnet的主机为例,Sessionptions=>Connection=>LogonScripts=>Automatelogon,在login后的send中输入用户名,在Password后的send中输入密码。则可实现自动登录。SecureCRT使用说明-脚本之家用SecureCRT来上传和下载数据SecureCRT可以使用linux下的zmodem协议来快速的传送文件,只要设置一下上传和下载的默认目录就行options-->sessionoptions-->filetransfer下可以设置上传和下载的目录剩下的只要在用SecureCRT登陆linux终端的时候:发送文件到客户端:szfilenamezmodem接收可以自行启动.从客户端上传文件到linux服务端:只要服务端执行,rz然后在SecureCRT里选文件发送,协议zmodem。
B. 如何用shell脚本实现SSH的远程登录
要带烂者拆跳过输入密码的环节么?
如果你想每次链接的时候自己手动输入密码,那就参考这样写
#!/bin/bash
ip=$1
ssh 用户名@ip地址 -p端口号
保存后给执行权限,运行时在脚本后面直接跟一饥枣个IP地址
如果你想每次链接的嫌腊时候自动跳过输入密码的环境,那就再网络下“ssh建立信任关系”,脚本依然还是这个脚本,只是登陆的时候做了互相信任的话,就不需要密码了
C. SSH 技巧
SSH 是 Linux 下进行远程连接的基本工具。
一般情况下我们可以通过 ssh username@xxx.xxx.xxx.xxx 登录远程服务器,如果要管理多台服务器,这样太长了。
可以在家目录的 .ssh 中新建config文件,设置别名。
比如我有一台个人的云主机。IP是120.163.163.163,端口是4722(一般都是22,这里为了安全我改为了其他),登录用户名是ubuntu,登录方式是证书登录。
这样执行 ssh cloud 或 ssh alias 就无密码登录云主机了
ssh cloud "df -h"
ssh cloud "df -h; ps;"
比如 sudo 开头的可能需要用户输入密码,需要 TTY。
添加 -t 参数后,ssh 会保持登汪喊差录状态,直到你退出需要交互的命令。
再举个实际例子:
ssh -t flux sudo -u fueladminprd ssh 192.168.1.100
这句话实际执行了两步:
可以用单引号或双引号开头,然后写上几行命令,最后再用相同的困皮引号来结束。
> 开头的就是输入下一行命令
如果需要在命令中使用引号渗和,可以混合使用单双引号。
在远程服务器执行 ls node ,本地定义变量a,传入到命令中。达到一样的效果。
在下图的命令中为 bash 指定了 -c 参数
本地创建demo.sh,内容是: ls node
运行 ssh cloud < demo.sh
通过重定向 stdin,本地的脚本 demo.sh 在远程服务器上被执行。
修改 demo.sh 内容为:
执行 ssh cloud 'bash -s'< demo.sh aa bb cc
bash 就是 $0 第一个参数。
http://www.openssh.com/
https://www.cnblogs.com/sparkdev/p/6842805.html
https://www.zcfy.cc/article/top-20-openssh-server-best-security-practices
D. 写一个脚本解决安装ssh服务,设置ssh的端口为22222,并允许root登陆
题主你好,
在centos7下, 安装ssh服务并将监听端 口改为22222,且允许root用户登录的脚本如下:
说明: 题主最好在本地测试, 如果是远端的机器要保证在即使ssh登录不上去的情况下也能连接上才可进行上面脚本的运行
*.sed 后面要加一个-i参数,否则配置文件不会被修改
------------------
另外题主说的验证脚本, 题主想要怎么写, 是本地登录验证还是远程登录验证?
欢迎追问
E. 脚本中ssh自动登录到远程服务器。但登录后就脚本的执行就中断了,等到退出登录后又继续执行。
man ssh
[user@]hostname [command]
ssh -p port user@hostname "远程命令好唯"脊袜桐樱坦
F. shell实现SSH自动登陆
[TOC]
注:需要执行权限,可通过 sudo chmod +x ./file_name.sh 添加
sh file_name.sh 就是指定了脚本解释器 /bin/sh 来解释执行脚本;常见的脚本解释器还有: /bin/bash 等,我们可以使用 ls -l /让衡帆bin/*sh 命令来查看当前可用的脚本解释器;
这种方式不会像前两种方式一样fork一个子进程去执行脚本,而是使用当前shell环境执行。我们不必重启shell或者重新登录系统,就能使当前的更改生效。一般用于 .bashrc或者.bash_profile被修改的时候,
定义:我们写一个shell脚本时,总是习惯在最前面加上一行 #!/binbash ,它就是脚本的 shebang 。
作用:它指示了此脚本运行时的解释器,使用文件名直接执行shell脚本时,必须带上shebang。
使用:可以在shebang后面直接附加选项,执行时我们默认使用选项执行;
如 test.sh 的 shebang 为 #!/bin/sh -x ,那我们执行脚本时:
./test.sh hello 相当于: bin/sh -x ./test.sh hello ;
注意:在指定脚本解释器来执行脚本时,shebang会被指定的脚本解释器覆盖。
expect是一个能实现自动和交互式任务的解释器,它也能解释常见的shell语法命令,其特色在以下几个命令:
spawn command 命令会fork一个子进程去执行command命令,然后在此拦握子进程中执行后面的命令;
它的一般用法为 expect "string" ,即期望获取到string字符串,可在在string字符串里使用 * 等通配符; string 与命令行返回的信息匹配后,expect会立刻向下执行脚本;
set timeout n 命令将expect命令的等待超时时间设置为n秒,在n秒内还没有获取到其期待的命令,expect 为false,脚本会继续向下执行;
一般用法为 send "string\r" , 向命令行输入一条信息, \r 表示输入回车;
创建坦雹脚本 touch aliyun_login_shell.sh ,内容如下:
执行 sudo chmod +x ./aliyun_login_shell.sh 命令给shell脚本添加执行权限;
运行 ./aliyun_login_shell.sh 命令,一键登陆成功!
优化一下:
脚本完成了,可是还是有些小瑕疵:
这里我们想到了linux的alias命令:
执行命令 vim ~./bash_profile ,在文件内部添加:
再使用 . ~./bash_profile 或 source ~./bash_profile
从此,我们无论在哪个目录,只要输入 alias_name 命令,回车,真正的一键登陆!
参考:
https://www.cnblogs.com/qiumingcheng/p/11544569.html
G. 本地shell脚本中ssh到远程服务器并执行命令
在实际运用中在当前服务器执行命令后,需要在另一台服务器继续执行某些命令,和耐衫分开去到另一台服务器执行也是比较麻烦的,因此整理下集中执行的方式唤腔
1、首先配置ssh免密操作
Linux 下实现SSH互信: https://www.jianshu.com/p/2456d98aa607
2、简单命令
ssh root@192.168.1.1 "cd /var/lib; ls; cd "
2.1 使用时注意,双引号必须有。若没加双引号,第二条及之后的命令会在本地执行
2.2 分号是将两条语句间隔开
2.3 单双引的区别:单引号不会解析值,是什么就传什么;双引号会解析值,将解析结果传过去
3、多条命令
ssh root@192.168.1.1<< reallssh
cd /var/lib/test
tar -zxvf api.com.tar.gz
......
exit
reallssh
3.1 命令写在 << reallssh(开始亩闷) 至 reallssh(结束) 之间
3.2 reallssh可自己定义为其他形式
3.3 在结束前加上exit退出远程
4、可能遇到的问题
问题:远程登录主机时出现Pseudo-terminal will not be allocated because stdin is not a terminal. 错误
解决方案:字面意思是伪终端将无法分配,因为标准输入不是终端。
所以需要增加-t -t参数来强制伪终端分配,即使标准输入不是终端。
to force pseudo-tty allocation even if stdin isn’t a terminal.
参考样例如下:
ssh -t -t user1@192.168.1.1 -p 22
--------------------------------------------------------------------------------
参考:https://blog.csdn.net/jinking01/article/details/84386769
H. ssh远程连接服务器 脚本文件 【软连接】
一个使用expect免输入密码自动登录ssh的shell脚本,方便好用,适用Mac、Linux
来自:https://github.com/jiangxianli/SSHAutoLogin
1、ssh_login.sh
2、给ssh_login.sh文件执行的权限
3、配置服务器脚本文件 【软连接】
4、命令使用
服务器登录
选择序列号:1、2、3 .......
5、删除服务器脚本文件 【软连接】
ln参数释义
1.命令格式:
ln [参数][源文件或目录][目标文件或目录]
2.命令参数:
必要参数:
-b 删除,覆盖以前建立的链接
-d 允许超级用户制作目录的硬链接
-f 强制执行
-i 交互模式,文件存在则提示用户是否覆盖
-n 把符号链接视为一般目录
-s 软链接(符号链接)
-v 显示详细的处理过程
选择参数:
-S “-S<字尾备份字符串> ”或 “--suffix=<字尾备份字符串>”
-V “-V<备份方式>”或“--version-control=<备份方式>”
--help 显示帮助信息
--version 显示版本信息
I. 如何通过ssh远程登录linux系统
通过ssh远程登录linux系统步骤如下:
1、启动软件,点击快速连接,我们要选择连接的协议。
J. 在LINUX系统下,如何使用SHell脚本,SSH登陆上路由器
1.登陆linux系统,打开终端命令。姿搏输入 rpm -qa |grep ssh 查找当前系统是否已经安装
2.如果没有安装SSH软件包,可以通过yum 或rpm安装包进行安装
3、安装好了之念启后,就开启ssh服务。Ssh服务一般叫做 SSHD
4、命令行输入 service sshd start 可以启动 或者使用 /etc/init.d/sshd start
5、输入:ssh 账号@IP地址即可。
比如:ssh oracle@192.168.10.13
然后按照提示输入密码. 一切无误则进入该远程主机.