一、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. Mysql、SqlServer、Oracle三大数据库的区别

    一.MySQL 优点: 体积小.速度快.总体拥有成本低,开源: 支持多种操作系统: 是开源数据库,提供的接口支持多种语言连接操作 : MySQL的核心程序采用完全的多线程编程.线程是轻量级的进程,它可 ...

  2. 关于Exceptionless的使用注意

    大家都应该比较熟悉NLOG,我们知道log4net和nlog,也有其它的记日志框架.目前我们的生产环境使用nlog,而且对Exceptionless的对接也是无缝的.可能有人会问为什么不用ELK,主要 ...

  3. loj#6041. 「雅礼集训 2017 Day7」事情的相似度(SAM set启发式合并 二维数点)

    题意 题目链接 Sol 只会后缀数组+暴躁莫队套set\(n \sqrt{n} \log n\)但绝对跑不过去. 正解是SAM + set启发式合并 + 二维数点/ SAM + LCT 但是我只会第一 ...

  4. NextCloud前端支持播放mov文件

    默认情况下,NextCloud网盘是不支持播放 .mov文件的. 通过修改前端代码就可以实现. 如下 1 找到 apps/files_videoplayer/js/viewer.js 文件 2 搜索 ...

  5. 服务器部署Apache+PHP+MYSQL+Laravel

    1.安装PHP 添加php安装源: sudo apt-get install python-software-properties sudo add-apt-repository ppa:ondrej ...

  6. Java学习资源整理(超级全面)

    这里整理一些自己平常搜集的比较好的关于Java的学习资源,主要包括博客站点.书籍.课程等. 了解Java最新资讯 这部分主要是了解与Java相关的动态以及信息,能够拓展我们的视野以及寻找一些好的ide ...

  7. django mongodb配置

    #settings.py import os from mongoengine import * BASE_DIR = os.path.dirname(os.path.dirname(os.path. ...

  8. Spark 基本函数学习笔记一

      Spark 基本函数学习笔记一¶ spark的函数主要分两类,Transformations和Actions. Transformations为一些数据转换类函数,actions为一些行动类函数: ...

  9. iBatis第四章:动态SQL的用法

    一.什么是动态SQL,以及使用动态SQL的好处 所谓动态SQL,是针对静态SQL而言的,静态SQL的SQL语句是固定的,使用动态SQL是为了增强SQL的灵活性和复用性,可以用一个动态SQL达到在不同条 ...

  10. SQLServer之创建用户定义的数据库角色

    创建用户定义的数据库角色注意事项 角色是数据库级别的安全对象. 在创建角色后,可以使用 grant.deny 和revoke来配置角色的数据库级权限. 若要向数据库角色添加成员,请使用alter ro ...