一、root登录

首先使用root用户登录远程主机:

ssh -p prot root@host

这时命令行会输出类似的信息:

The authenticity of host '[23.105.216.8]:28087 ([23.105.216.8]:28087)' can't be established.
ECDSA key fingerprint is SHA256:+64x/VEJUAk1yJXB0C3sE6hGVw58bWwOwoFiOM6CtzI.
Are you sure you want to continue connecting (yes/no)?

警告这时一个新的地址,存在安全风险,输入 yes 表示接受,然后根据提示输入 root 用户的密码即可成功登录。
接着修改 root 用户的密码:

passwd

二、创建新用户

添加组

groupadd groupname

添加用户

useradd -d /home/username -s /bin/bash -m username  

设置新用户的密码

passwd username

将新用户添加到用户组

usermod -a -G groupname username

为新用户设置 sudo 权限

visudo

visudo 会打开 sudo 命令的配置文件 /etc/sudoers ,找到下面这行

root    ALL=(ALL:ALL) ALL

然后在下面添加

username ALL=(ALL) NOPASSWD: ALL # 执行sudo时无需输入密码
# 或
usename ALL=(ALL:ALL) ALL #执行sudo时需要输入当前用户的密码

然后退出 root 用户,以新用户登录

ssh -p port username@host

三、SSH配置

首先,确定本机有SSH公钥(一般是文件 ~/.ssh/id_rsa.pub ),如果没有的话,使用 ssh-keygen 命令生成一个。

在本机上另开一个shell窗口,将本机的公钥拷贝到服务器的 authorized_keys 文件。

ssh -p port username@host 'mkdir -p .ssh && cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub
# 或
ssh-copy-id -p port username@host

然后进入服务器,编辑 SSH 的配置文件 /etc/ssh/sshd_config

sudo cp /etc/ssh/sshd_config ~  # 备份配置到用户目录
sudo vi /etc/ssh/sshd_config # 编辑

修改配置文件中的下面几项:

Port 22888  # 登录端口号 默认为22 修改为1~65535之间的数值
Protocol 2  # 协议

PermitRootLogin no  # 禁用 root 用户登录
PermitEmptyPasswords no # 禁用空密码登录
PasswordAuthentication no # 禁用密码登录

RSAAuthentication yes # 启用秘钥登录
PubkeyAuthentication yes # 启用公钥登录
AuthorizedKeysFile .ssh/authorized_keys # 秘钥文件地址

UseDNS no

AllowUsers username # 允许登录的用户

保存后退出。
修改 authorized_keys 文件的权限

sudo chmod 600 ~/.ssh/authorized_keys && chmod 700 ~/.ssh/

重启 SSHD 服务

sudo service sshd restart
# 或者
sudo /etc/init.d/sshd restart

四、运行环境配置

** Cent OS ** 系统登录时会提示以下警告:

-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory

如果想要去除该警告,在 ** /ect/enviroment ** 配置文件中指定该环境变量的值即可,如:

sudo vi /etc/enviroment
# 添加
LC_CTYPE=zh_CN.utf8 # 指定字符编码为 中文 utf8

更多 locale信息 可点击链接查看

Linux服务器初步配置流程的更多相关文章

  1. 在Linux服务器上配置phpMyAdmin

    使用php和mysql开发网站的话,phpmyadmin是一个非常友好的mysql管理工具,并且免费开源,国内很多虚拟主机都自带这样的管理工具,配置很简单,接下来在linux服务器上配置phpmyad ...

  2. [亲测]ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问

    前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...

  3. 本地Linux服务器上配置Git

    当我们需要拉取远程服务器代码到本地服务器时,我们首先要确定已经配置了正确的Git账号,可以从~/.gitconfig文件(为隐藏文件,需要使用ls -a查看),以及~/.ssh下的id_rsa.pub ...

  4. [亲测]七步学会ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问

    前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...

  5. linux服务器上配置多个svn仓库

    linux服务器上配置多个svn仓库 1.在指定目录建立仓库保存总目录,本文示例目录设定为:/usr/local/svn/svnrepos # mkdir -p /usr/local/svn/svnr ...

  6. Linux服务器时间同步配置

    Linux服务器时间同步配置   以CentOS7 做时间服务器,其他服务器(Centos 6.RHEL7)同步该服务器时间 RHEL 7.CentOS 7 默认的网络时间协议 为Chrony 本教程 ...

  7. Linux服务器的初步配置流程

    作者: 阮一峰 日期: 2014年3月14日 开发网站的时候,常常需要自己配置Linux服务器. 本文记录配置Linux服务器的初步流程,也就是系统安装完成后,下一步要做的事情.这主要是我自己的总结和 ...

  8. Linux服务器安全配置

    众所周知,网络安全是一个非常重要的课题,而服务器是网络安全中最关键的环节.Linux被认为是一个比较安全的Internet服务器,作为一种开放源代码操作系统,一旦Linux系统中发现有安全漏洞,Int ...

  9. (转)linux服务器安全配置攻略

    引言: 最小的权限+最少的服务=最大的安全 所以,无论是配置任何服务器,我们都必须把不用的服务关闭.把系统权限设置到最小话,这样才能保证服务器最大的安全.下面是CentOS服务器安全设置,供大家参考. ...

随机推荐

  1. 学习笔记—log4j2

    概念 什么是日志 日志是系统运行过程中的后台输出信息,方便程序员进行系统运行的管控以及Bug的查找. log4j2的概念 log4j2是一个日志输出的插件,专门用来进行日志的管理. Log4j是Apa ...

  2. async await详解

    async await本身就是promise + generator的语法糖. 本文主要讲述以下内容 async awiat 实质 async await 主要特性 async await 实质 下面 ...

  3. Ant Design按需加载

    不eject情况下配置antd按需加载 1.安装 react-app-rewired yarn add react-app-rewired 2. 项目根目录下新建 config-overrides.j ...

  4. Android破解学习之路(十五)—— 【Unity3D】洛菲斯的呼唤(Lophis roguelike)无限金币(道具)的实现 破解

    前言 之前玩月圆之夜玩的挺high的,最近又找到了个与月圆之夜类似的卡牌游戏,游戏名为Lophis roguelike,中文翻译名洛菲斯的呼唤. 但是这个与月圆之夜有所不同,如果失败了,只能从开头重新 ...

  5. 工具资源系列之给虚拟机装个windows

    前面我们介绍了如何在 mac 宿主机安装 VMware 虚拟机软件,本节我们将继续介绍如何给虚拟机安装镜像,切换不同的操作系统. VMware 软件是容器,镜像是内核,这里的镜像指的是操作系统. 下载 ...

  6. MongoDB中数组类型相关的操作

    概述 在MongoDB的模式中,我们经常将一些数据存储到数组类型中,即我们常见的嵌套模式设计的一种实现方式.数组的这种设计实现方式在关系数据库中是没有或者说不常见的.所以,通过本文我们来梳理一下Mon ...

  7. 简说Python生态系统的14年演变

    [导语]Python 里各种丰富的标准库.第三方库和模块成为其广受欢迎的原因之一.而 PyPI 就是大家想第三方库前先要安装的一个仓库.作为使用者,它可以帮我们查找 Python 社区开发和共享的软件 ...

  8. redis的穿透和雪崩

    穿透: 从缓存中查询一个数据,查到为空,需要每次都去数据库中查询.而从数据库中查询出来也为空,也就不写入缓存.导致一个不存在的数每次都去数据库中查询,造成db系统很大压力 造成缓存穿透 解决:如果从数 ...

  9. 设置MYSQL数据库编码为UTF-8

    设置MYSQL数据库编码为UTF-8   1.  编辑MySql的配置文件 MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一 ...

  10. webapi读取上传的文件流

    逻辑说明 这里未引用System.Web.Mvc. 主要使用MultipartMemoryStreamProvider对象从Request中获取文件流. var provider = new Mult ...