Linux服务器初步配置流程
一、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/environment ** 配置文件中指定该环境变量的值即可,如:
sudo vi /etc/environment
# 添加
LANG=zh_CN.UTF-8 # 指定所有locale变量的默认值
LC_CTYPE=zh_CN.utf8 # 指定字符编码为 中文 utf8
有些文章提到可以修改 /etc/sysconfig/i18n文件,但是我测试了不起作用
更多 locale信息 可点击链接查看