前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >几行命令了解一下远程服务器创建用户并无密登录

几行命令了解一下远程服务器创建用户并无密登录

作者头像
JS菌
发布2019-04-10 15:32:55
1.1K0
发布2019-04-10 15:32:55
举报
文章被收录于专栏:JS菌JS菌

升级包管理系统

首先使用如下命令升级包管理系统:

  • sudo apt-get update
  • sudo apt-get upgrade

创建用户并配置账号权限

为了服务器安全,我们应该避免直接使用 root 用户去登录;而是创建一个新用户,并使用这个用户账号去登录远程服务器:

如果使用 centos :

代码语言:javascript
复制
useradd oli # add new user
passwd oli # password
usermod -g root oli # set user to root group
# /etc/sudoers
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
oli ALL=(ALL) ALL

使用 Ubuntu 创建用户非常简单:

使用 adduser 命令即可:

代码语言:javascript
复制
# 添加帐号
$ adduser oli # 自动将该用户 oli 加入群组 oli,生成 /home/oli
# Adding user 'oli'
# Adding new group 'oli'
# Adding new user 'oli' with group 'oli'
# Creating home directory '/home/oli'
# Copying files from '/etc/skel'

# 填写用户个性化信息
# Enter the new value, or press ENTER for the default
# 可选

然后对用户进行授权:

代码语言:javascript
复制
# 用户组里
$ gpasswd -a oli sudo # 将 oli 加入到 群组 sudo
# 从而可以部分拥有 root 的权限 相对比较高的权限 可以通过输入密码执行较高权限的命令
# Adding user oliver to group sudo

# 修改配置文件
$ sudo visudo
# 在 User privilege specification 的 root 用户设定的行下 新增一行 oli 的设定:
oli ALL=(ALL:ALL) ALL
# 分别对应:
# 对所有 sudo 生效;oli 可以任何用户执行命令;oli 可以任何的组来执行命令;该规则适用于所有命令
# 意思是只要提供密码就可以 sudo 执行任何 root 可以执行的命令

验证是否成功

新建一个终端会话,用新账号远程联机,不要关闭 root 窗口

ssh oli@xxx

如果失败可以马上返回 root 用户登录的窗口试着重启 ssh 服务: service ssh restart,这就是为什么需要暂时不要关闭 root 用户的登录界面

至此,新用户创建成功。

ssh 无密码登录

生成私钥和公钥,将公钥上传至服务器,每次登录自动进行密钥算法比较,如正确即可成功登录

(1) 客户端配置

代码语言:javascript
复制
$ ls ~/.ssh # 如果为空则没有创建过 ssh 密钥,否则会有 id_rsa.pub id_rsa 两个文件

# 新建公钥和私钥
$ ssh-keygen -t rsa -b 4096 -C "oli@xxx.xxx" # 会生成 id_rsa 和 id_rsa.pub 两个文件

# 代理
$ eval "$(ssh-agent -s)"
# Agent pid ...

# 若执行ssh-add /path/to/xxx.pem是出现这个错误:Could not open a connection to your authentication agent,则先执行如下命令即可:
$ ssh-agent bash

# 文件加入
$ ssh-add ~/.ssh/id_rsa

(2) 服务端配置 `~/.ssh/authorized_keys` 文件

首先执行一遍上面客户端的代码然后创建 authorized_keys:

代码语言:javascript
复制
# 将客户端的 id_rsa.pub 中的公钥信息复制到这个文件
$ vi ~/.ssh/authorized_keys

# 文件权限设置
$ sudo chmod 600 ~/.ssh/authorized_keys

# 重启 ssh 服务
$ sudo service ssh restart

至此,然后就可以通过 ssh 登录服务器而不需要密码了

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JS菌 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 升级包管理系统
  • 创建用户并配置账号权限
    • 如果使用 centos :
      • 使用 Ubuntu 创建用户非常简单:
        • 验证是否成功
        • ssh 无密码登录
          • (1) 客户端配置
            • (2) 服务端配置 `~/.ssh/authorized_keys` 文件
            相关产品与服务
            主机安全
            主机安全(Cloud Workload Protection,CWP)基于腾讯安全积累的海量威胁数据,利用机器学习为用户提供资产管理、木马文件查杀、黑客入侵防御、漏洞风险预警及安全基线等安全防护服务,帮助企业构建服务器安全防护体系。现支持用户非腾讯云服务器统一进行安全防护,轻松共享腾讯云端安全情报,让私有数据中心拥有云上同等级别的安全体验。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档