SSH
Posted 你很棒
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSH相关的知识,希望对你有一定的参考价值。
(1)ssh基本介绍
1.ssh服务是加密协议,默认端口是22,协议版本是SSHv2,V1有漏洞
2.服务端: ssh服务,sftp服务
3.客户端: ssh命令,scp命令
4.服务器端组件
openssl:负责远程加密
openssh:负责远程连接
5.ssh服务认证类型
基于口令的安全认证
基于密钥的安全认证:客户端生成一对密钥,客户端把自己的公钥推送到需要访问的服务器端,客户端使用私钥加密数据,服务器使用公钥解密数据
(2)ssh配置优化
#vim /etc/ssh/sshd_config
Port 33222 //修改ssh的默认端口
PermitRootLogin no //root用户禁止登陆
PermitEmptyPasswords no //禁止空密码登录
UseDNS no //不使用DNS,解决ssh登陆慢的问题
GSSAPIAuthentication no //解决ssh登陆慢的问题
sed -i ‘s/#UseDNS yes/UseDNS no/g‘ /etc/ssh/sshd_config
sed -i ‘s/GSSAPIAuthentication yes/GSSAPIAuthentication no/g‘ /etc/ssh/sshd_config
egrep -i "(usedns|gssapiauth)" /etc/ssh/sshd_config
service sshd restart
(3)ssh客户端命令
1.ssh命令:远程登陆或执行命令
-p //指定端口,如果是默认22号端口,可以不加
ssh -p22 [email protected] //远程登陆
ssh -p22 [email protected] "ifconfig" //不登陆远程主机执行命令
2.scp:传递文件
选项:
-P //指定端口
-r //拷贝目录的时候,如果想递归需要使用-r
-p //保持属性
scp -P22 -r /etc/ [email protected]:/tmp
例
scp -P22 -r /etc/ [email protected]:/tmp //把/etc目录拷贝到31主机的/tmp目录下,/etc目录也拷贝过去了
scp -P22 -r /etc/* [email protected]:/tmp //把etc目录下所有文件传递到31主机的/tmp目录下
(4)分发密钥
1.生成公钥和私钥
ssh-keygen -t rsa //交互式生成公钥和私钥
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa //非交互式生成公钥和私钥
2.传递公钥
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected] //传递公钥
ssh-copy-id -i ~/.ssh/id_rsa.pub "-p 22 [email protected]" //指定ssh端口传递公钥
3.免输入密码执行命令和传递文件
ssh [email protected] "/sbin/ipadd a" //执行命令
scp -r /etc/* [email protected]:/tmp //传递文件
以上是关于SSH的主要内容,如果未能解决你的问题,请参考以下文章