服务器SSH登录与使用

2022-03-15 13:53:21 20 0

  免密码登录

  

  通过非对称加密分享公钥的方式,可以证明身份,实现免密码登录服务器。

  

  ssh user@ip_addr

  

  初次登陆服务器还是要输入密码的,如果不小心出了意外被阻止后续连接,在该路径文件中找到并删除对应ip_addr(公网IP),即可恢复连接。

  

  ~/.ssh/known_hosts

  

  如果本地还没有ssh密钥对,使用ssh-keygen指令生成。

  

  ssh-keygen -t rsa -C "email@domain.com"

  

  默认生成路径如下,其中id_rsa.pub是公钥文件,其内容将被拷贝到目标服务器。

  

  ~/.ssh

  

  | id_rsa      # 私钥,保密

  

  | id_rsa.pub  # 公钥,可分享

  

  在已经登录的服务器,编辑authorized_keys文件,将公钥id_rsa.pub的内容拷贝过去。

  

  vim ~/.ssh/authorized_keys

  

  当下次再登录服务器时,可以在本地使用公钥登录,不需要输入密码。

  

  ssh root@ip_addr -i ~/.ssh/id_rsa

  

  如果觉得该输入指令过长,可以设置alias.

  

  非对称加密原理

  

  延长连接时间

  

  使用ssh连接服务器,如果一段时间无操作,连接可能被中断。可以通过设置连接时长参数,来延长ssh连接服务器的时间。

  

  在服务器端,修改ssh连接设置。

  

  vim /etc/ssh/sshd_config

  

  设置参数如下,并保存。

  

  ClientAliveInterval 60 # 服务器端向客户端请求消息的时间间隔, 默认是0,不发送。60表示每分钟发送一次,然后客户端响应。

  

  ClientAliveCountMax 5  # 服务器发出请求后客户端没有响应的次数达到一定值,就自动断开。

  

  服务器运行,使ssh配置生效。

  

  systemctl restart sshd.service

  

  在本地客户端,修改ssh连接设置。

  

  vim ~/.ssh/config

  

  添加设置。

  

  Host * # * 能匹配任意服务器

  

  ServerAliveInterval 60

  

  ServerAliveCountMax 5

  

  保存配置后,ssh连接服务器的时间变长。

  

  后台运行

  

  一般情况下,退出终端ssh连接时,服务器上程序也会中断运行。使用nohup指令可以允许程序在服务器后台继续运行。

  

  nohup (no hang up) 使用方法,会在后台运行to_run.sh指令。

  

  nohup to_run.sh &

  

  运行输出结果会默认生成到 nohup.out 文件里。

  

  appending output to nohup.out


联系

您可24小时联系我们的在线客服

contact-img