Linux服务器搭建SSH免密登录

Linux服务器搭建SSH免密登录

一、什么是SSH?

  • 管理员可以通过 远程登陆 的方式,对通过网相连的分散于各处的多台主机进行管理操作。
  • 管理员可以对远程主机进行如下操作:
    • 远程登陆
    • 远程命令执行
    • 远程文件传输
  • 存在的问题:这些操作不安全!
  • 使用纯文本口令,并用明文发送
    • 信息可能会被截取,口令可能会被检索
    • 未经授权的人员使用截取的口令登陆系统而对系统造成危害

SSH的目标

  • 在不安全的网络上提供安全的网络服务。

二、配置前的准备

  • 配置hosts文件:
	vi /etc/hosts

​ 在文件尾部添加

	192.168.1.106 linux1
	192.168.1.107 linux2
	192.168.1.108 linux3
	192.168.1.109 linux4
  • 安装 open-ssh:
yum  install -y openssh-server openssh-clients
  • 启动ssh:
# 以下二者均可
service sshd start
/etc/init.d/sshd start
  • 配置开机启动:
chkconfig --level 2345 sshd on

三、配置SSH免密登录

  • 生成**
ssh-****** -t rsa

Linux服务器搭建SSH免密登录

生成**后会在用户的根目录生成一个 “.ssh” 文件夹

Linux服务器搭建SSH免密登录

进入“.ssh”会生成以下几个文件:

Linux服务器搭建SSH免密登录

  • 文件含义:
    • authorized_keys:存放远程免密登录的公钥,主要通过这个文件记录多台机器的公钥
    • id_rsa :生成的私钥文件
    • id_rsa.pub : 生成的公钥文件
    • know_hosts : 已知的主机公钥清单
  • 如果希望ssh公钥生效需满足至少下面两个条件:
    • .ssh目录的权限必须是700 (drwx------)
    • .ssh/authorized_keys文件权限必须是600(-rw------)
配置免密登录
  • 通过ssh-copy-id的方式
ssh-copy-id -i ~/.ssh/id_rsa.pub [ip/hosts]

Linux服务器搭建SSH免密登录

  • 通过scp将内容写到对方的文件中
scp -p ~/.ssh/id_rsa.pub [email protected]<remote_ip>:/root/.ssh/authorized_keys

四、SSH用法

  • ssh登录另一台linux
ssh [ip/hosts]

Linux服务器搭建SSH免密登录

  • 退出登录:
exit
  • 复制文件
scp  srcFilePathName targetHostIp:/path

Linux服务器搭建SSH免密登录

  • 复制文件夹
scp  –r folder [email protected]/hosts:/path

Linux服务器搭建SSH免密登录