ssh介绍及scp,sftp应用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssh介绍及scp,sftp应用相关的知识,希望对你有一定的参考价值。
一、ssh介绍
SSH是 secure Shell Protocol的简写,由IETF网络工作小组(Network Working Group)制定;在进行数据传输之前 ,SSH先对联机数据包通过加密技术进行加密处理,加密后再进行数据传输。确保了传递的数据安全。
在默认状态下,SSH服务器提供两个服务功能:一个是提供类似telnet远程联机服务器的服务,即上面提到的SSH服务;另一个是类假FTP服务的sftp-server,借助SSH协议来的。
二、ssh的密钥加密
ssh服务认证类型
从SSH客户端来看,SSH服务主要提供两种级别的安全验证:
基于口令的安全验证
基于口令的安全验证方式只要知道服务器的SSH连接账号和口令(当然也要知道对应服务器IP及开放的SSH端口,默认是22),就可以通过SSH客户端远程登陆到主机。此时,联机过程中所传输的数据都是加密的。
ssh连接的命令:
ssh -p52113 [email protected] 在linux中ssh连接另台linux服务器
连接成功后,密钥存放在当前用户家目录的隐藏文件中
[[email protected] ~]# ssh -p22 [email protected] [[email protected] ~]# ls -la total 124 drwxr-x--- 3 root root 4096 Mar 10 22:45 . drwxr-xr-x 24 root root 4096 Mar 10 22:29 .. -rw------- 1 root root 996 Jan 8 20:00 anaconda-ks.cfg -rw------- 1 root root 690 Jan 8 23:36 .bash_history -rw-r--r-- 1 root root 24 Jan 6 2007 .bash_logout -rw-r--r-- 1 root root 191 Jan 6 2007 .bash_profile -rw-r--r-- 1 root root 176 Jan 6 2007 .bashrc -rw-r--r-- 1 root root 100 Jan 6 2007 .cshrc -rw-r--r-- 1 root root 36494 Jan 8 20:00 install.log -rw-r--r-- 1 root root 3849 Jan 8 19:59install.log.syslog drwx------ 2 root root 4096 Mar 10 22:45 .ssh -rw-r--r-- 1 root root 129 Jan 6 2007 .tcshrc [[email protected] ~]# cd .ssh [[email protected] .ssh]# catknown_hosts 168.1.121 ssh-rsaAAAAB3NzaC1yc2EAAAABIwAAAQEA1xT04uwlvMPtW4ILhbCoB4qZfCtlC+tJGkOmW5kIap/S+yu88q0qDoWdNM3WFRClZNtO29sRff75WzZNXbEVg4pk2IW8B5r7jzNglZ0+vWmCtz95HBm9LGvpllvO+9A1J30ncKK+1IjG6V9Ep0G/Asm8MQf1FD/CrsMIoKCIy91MXrCEWHZKfCb/v0cnMkaMfVl/K/1niHt8DLvEg8NCH8ZljTyzjknLD9LS3HOqzZ1mlbr1bdMDu7MIBojufG7piEJ19yOUUWi+sTF8tjtpCaG7NhtBR84opeBE4xVJBmiOjFjHE1gb2oYJwSqfUymhkvlM/acVSI2XRq/In5QVQw==
基于密匙的安全验证:
基于密匙的安全验证方式是指,需要依靠密钥,也就是必须事先建立一对密钥对,然后把公用密匙(Public key)放在需要访问的目标服务器上,另外,还需要把私有的密匙(Private key)放到SSH的客户端或对应的客户端服力器上。
这时客户机使用SSH对服务器进行远程连接时,就可以通过这个私有密匙对服务端公用密匙进行验证,验证通过就可以进行SSH连接,这种方式不需要在网络上传送口令密码,安全性更大了。
三、远程连接SSH服务
SSH基本语法使用
ssh -p22 [email protected]
#-p小写接端口,默认22端口时可以省略-p22
#”@”前为用户名,”@”后为要连接的服务器的IP
1.直接登陆远程主机的方法
在未禁止root远程登陆及更改SSH端口前的登陆方法为:
[[email protected] ~]# ssh [email protected]
输入exit退出ssh连接
当我们连接远程主机时,如果是第一次连接,那么远程主机就会询问要不要接受远程主机发过来的key,并建立连接,此时,如果想连接就输入yes接受,这个接受远程主机发过来的Public Key默认存放在用户家目录~/.ssh/know_hosts下,内容为一数字字母组合。
不登陆远程主机,直接在远程主机执行命令
[[email protected] ~]# ssh [email protected] uptime [email protected]‘s password: 23:00:22 up 32 min, 1 user, load average: 0.00, 0.00, 0.00
四、SSH附带的远程拷贝scp命令
scp的基本语法使用
scp -P22 -r -p /etc [email protected]:/tmp
#scp 为远程拷贝文件或目录的命令
#-P大写,注意和ssh命令的不同,接端口,默认22,可省略-P22
#-r 表示拷贝目录
#-p 表示在拷贝前后保持文件或目录属性
# /etc 为本地目录 @前为用户名 @后为要连接的服务器IP,后面的:/tmp为目录
#以上命令作用是把本地/etc/文件夹拷贝到远端服务器192.168.1.121的/tmp目录中
把远端目录抓到本地
scp -P22 -r -p [email protected]:/tmp /etc
此命令用于linux主机之间拷贝文件或目录
五、sftp用法
[[email protected] .ssh]# sftp [email protected] Connecting to 192.168.1.111... [email protected]‘s password: sftp> pwd Remote working directory: /root
使用put命令把本地文件上传到连接的服务器中
sftp> put /tmp/li.txt /tmp/li.txt Uploading /tmp/li.txt to /tmp/li.txt /tmp/li.txt 100% 0 0.0KB/s 00:00
使用get命令把服务器中的文件下载到本地目录
sftp> get /tmp/li.txt /tmp/li.txt Fetching /tmp/li.txt to /tmp/li.txt sftp> get /tmp/li.txt /tmp/bb.txt get /tmp/li.txt /tmp/bb.txt Fetching /tmp/li.txt to /tmp/bb.txt
六、通过CRT的sftp连接到本地xp系统
可以上传xp系统c盘中的文件到服务器中
sftp> put c:\oldboy.txt
Uploading oldboy.txt to /root/oldboy.txt
100% 0 bytes 0 bytes/s00:00:00
本文出自 “Mr.Xiong`s 运维日志” 博客,请务必保留此出处http://mrxiong2017.blog.51cto.com/12559394/1932685
以上是关于ssh介绍及scp,sftp应用的主要内容,如果未能解决你的问题,请参考以下文章
ssh远程访问控制,scp,sftp,TCP Wrappers策略应用案例