Ubuntu16.04开启SSH服务远程登录 root登录 密钥登录

本文档详细介绍了如何在Ubuntu16.04系统上设置SSH服务,包括安装openssh-server,允许root用户登录,以及启用密钥身份验证。步骤涵盖查看ssh服务状态,编辑sshd_config配置文件,生成和上传SSH密钥,以及关闭密码和root登录。

初始环境

  • 一台新安装好linux系统(以ubuntu16.04系统为例)的机器或者虚拟机
  • 此时本机ip无法被其他机器ping通,无法被ssh连接

安装ssh服务

  • 本机ssh连接其他机器,需安装openssh-client(ubuntu系统默认已安装)
  • 其他机器ssh连接本机,需安装openssh-server

1、查看该服务器是否安装ssh服务

dpkg -l | grep ssh
  • 执行该命令,会打印出openssh-client相关字样,说明本机系统已默认安装好了openssh-client

2、安装openssh-server

sudo apt-get install openssh-server
  • 执行该命令,安装完毕后会自动启动openssh-server服务
  • 启动命令是sudo service ssh start
  • 配置文件路径:/etc/ssh/sshd_config

编辑sshd_config设置root身份登录

sudo vim /etc/ssh/sshd_config
  • 找到PermitRootLogin,默认值是prohibit-password,改成yesPermitRootLogin yes
  • 可更改Port,默认值22

配置完毕后,需重启服务。工作中会同时配置好密钥登录,再重启服务。

sudo service ssh restart

设置密钥登录

  • 需要密钥文件id_rsaid_rsa.pub,工作中会保存自己的一份密钥,在各个机器上使用
  • 没有密钥可用ssh-keygen命令生成
  • id_rsa文件在其他机器的~/.ssh文件夹中,id_rsa.pub文件的内容需追加到本机~/.ssh文件夹中的authorized_keys文件里

1、创建密钥路径

  • 创建.ssh文件夹(服务配置文件里可指定密钥文件夹路径,默认在~/.ssh文件夹里,基本不会改动)
sudo mkdir ~/.ssh
  • 实际工作中,使用git等命令会用到该文件夹里的id_rsa文件,存在权限问题,索性直接更改该文件夹权限
sudo chmod 600 ~/.ssh

2、上传公钥

  • 复制id_rsa.pub的内容
  • ~/.ssh文件夹里创建authorized_keys文件
sudo vim ~/.ssh/authorized_keys
  • 将内容粘贴到authorized_keys
  • 如果还有其他机器使用的是不同的密钥,则在authorized_keys里追加其他机器的id_rsa.pub的内容

3、编辑sshd_config设置密钥登录

sudo vim /etc/ssh/sshd_config

参照以下,文件默认参数配置里就是如下

RSAAuthentication  yes
PubkeyAuthentication  yes

重启服务

sudo service ssh restart

4、附加 关闭密码登录和root登录

实际工作中,成功进行密钥登录成功后,一般会关掉密码登录和root登录,修改默认的22端口,按需选择。

sudo vim /etc/ssh/sshd_config

PasswordAuthentication no
PermitRootLogin no
Port 88888

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值