服务器初始化配置

创建
阅读 5504

添加用户

请将下面提到 ryan 替换成你自己的用户名

# 添加用户
adduser ryan
# 设置密码
passwd ryan

添加用户还有另一种方法

在 centos7 系统中会创建用户的 home 目录,但在 ubuntu17.10 系统不会创建用户的 home 目录(其他版本请自测)

useradd ryan

添加 sudo 用户权限

强烈建议不要使用修改/etc/sudoers的方法,一旦修改出错,后果很严重

usermod -aG sudo ryan (ubuntu)
usermod -aG wheel ryan (centos)

参考链接:

How To Create a Sudo User on CentOS

How can I add a new user as sudoer using the command line

设置使用 ssh-key 远程登录

如果本地机器是 MacOS 系统或 Linux 系统,可以使用ssh-copy-id快速导入将公钥远程主机

ssh-copy-id -i ~/.ssh/id_rsa.pub user@ip

如果本地是 Windows 系统,请参考 https://www.yidiankuaile.com/post/use-of-ssh-key/#拷贝公钥到远程主机

调整 ssh 远程登录的设置

# vim /etc/ssh/sshd_config

修改配置文件中下面字段内容

PubkeyAuthentication yes  //允许使用基于密钥认证的方式登陆
PasswordAuthentication no //禁止使用基于口令认证的方式登陆
PermitRootLogin no        //禁止root用户远程登录

重启 sshd

在重启 sshd 之前务必确保密钥登陆的可用,否则重启 sshd 之后可能无法远程登陆!

sudo systemctl reload sshd

禁止用户登录

方法一:禁止个别用户登录

# 禁止个别用户登录。比如禁止ryan用户登录。
passwd -l ryan
# 锁定ryan用户,这样该用户就不能登录了。
passwd -u ryan

对锁定的用户 ryan 进行解锁,用户可登录了。

方法二:禁止部分用户登录

通过修改 /etc/passwd 文件中用户登录的 shell

vi /etc/passwd

root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin ryan:x:500:500::/home/ryan:/bin/bash

ryan:x:500:500::/home/ryan:/bin/bash

更改为:

ryan:x:500:500::/home/ryan:/sbin/nologin

该用户就无法登录了。

方案三:禁止所有用户登录

禁止所有用户登录。

touch /etc/nologin

除 root 以外的用户不能登录了。

接下来可能要做事情

  1. 挂载 NFS 文件系统
  2. 安装 docker
  3. 安装 docker-compose
  4. Circleci SSH 服务端设置
  5. SSL 证书配置

更新记录

  1. 2017-06-20 00:15:00 首次发布
  2. 2020-02-19 20:43:11 添加禁止用户登录的方法
  3. 2020-02-19 19:45:00 添加“接下来”链接指引

本文链接 https://www.yidiankuaile.com/post/initial-server-setup

最后更新