基础服务:OpenSSH

OpenSSH

SSH是一种安全通道协议,主要用来实现字符界面的远程登录,远程命令执行,远程复制等功能。SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令等。

SSH协议默认监听端口:TCP协议22号端口

  • 常用远程访问工具

    Xshell,SecureCRT,Finalshell,Putty,Xmanager(远程图形化界面),Telten等

  • Openssh官方地址:

http://www.openssh.com

  • SSH服务安装包:

rpm -qa openssh*

​ openssh-clients-*

​ openssh-*

​ openssh-servver*

  • 服务主配置

/usr/sbin/sshd #sshd服务端主程序

/etc/ssh/sshd_config #服务端配置文件(修改之前一定要先备份)

/etc/ssh/ssh_config #客户端配置文件(一般不需要改动)

  • 服务端配置

    • 服务端配置文件:

      /etc/ssh/sshd_config

    • 服务端端口(默认22号端口)

      Prot 22

    • 服务监听的地址(默认监听所有地址)

      ListenAddress 0.0.0.0

    • 允许尝试链接的次数,默认6次

      MaxAuthTries 6

    • 允许最多链接数,默认为10

      Maxsession 10

    • 是否开启基于RSA密钥认证

      RSAAuthentication yes

    • 是否开启基于密钥认证

      PubkeyAuthentication yes

    • 如果开启,把客户端公钥放到.ssh/authorized_keys文件中(默认关闭)

      AuthorizedKeysFile .ssh/authorized_keys

    • 是否允许基于口令的的认证链接,默认允许

      PasswordAuthentication yes

    • 是否允许空密码登录,默认为yes,启用为no,(建议修改)

      PermitEmptyPasswords no

    • 是否域名解析,建议改为no提高相应速度

      UseDNS yes

    #systemctl restart sshd

  • SSH服务登录验证方式

    • 密码验证:

      对服务器中本地系统用户的登录名称,密码进行认证,使用这种方式最为简便。

    • 密钥对验证:

      要求提供相匹配的密钥信息才能通过验证

      vim //etc/ssh/sshd_config

      #PubkeyAuthentication yes #启用密钥对认证

      #AuthorizedKeyFile .ssh/authorized_keys #公钥文件位置

      #PasswordAuthentication yes #启用密码验证

  • SSH客户端命令

    • 远程链接服务器

      ssh 用户名@主机 IP -p 端口

      当第一次登录SSH服务器时,必须接受服务器发来的ECDSA密钥(根据提示输入“yes”)后继续验证;如果远程接受了一个主机的链接请求,这个主机的公钥信息就会保存在家目录下的.ssh/known_hosts文件中

    • 不登陆此用户,用此用户的身份执行此命令

      ssh 用户名@IP ‘要执行的命令’

    • 客户端推送文件到服务端

      scp 文件名 服务端用户@服务器ip:/推送服务器文件所选位置

  • SSH密钥验证

    • 首先在SSH客户端创建密钥对
    • 客户端将创建的公钥文件上传到SSH服务端
    • 服务端将公钥信息导入用户的公钥数据库文件
    • 客户端连接服务器端用户测试
  • 创建秘钥对,实现主机A登陆主机B不需要输入密码,直接登陆

    • 先创建密钥对

      ssh-keygen -t rsa/dsa(指定秘钥类型),默认公钥在家目录/.ssh/id_rsa.pub 里,私钥在家目录/.ssh/id_rsa里

    • 然后复制公钥到远程主机的家目录下的.ssh/authorized_keys文件(

      ssh-copy-id -i .ssh/id_rsa.pub -p 65022 root@主机B的IP(远程直接自动复制到远程PC的authorized_keys这个文件中)

    • 3、使用测试

    • 总结:在主机A上创建密钥对,一个公钥(.pub);一个私钥.以公钥为准,如果想不需要输入密码连接到B服务器上.就把公钥拷贝到B服务器上,然后就可以连接这台服务器了;新生成的密钥对文件中, id_ecdsa是私钥文件,默认为600,对于私钥文件必须妥善保管,不能泄露给他人。id_ecdsa.pub 是公钥文件,用来提供给SSH服务器。

    • 连接过程:

      创建密钥对的这个机器(主机A)会拿自己私钥和你拷贝过去的公钥(主机B)做配对,如果配对成功即可不需要输入密码就可连接主机B.否则登陆失败

  • Windows XShell密钥连接主机

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值