序:
本文主要讲述基于阿里云ECS的CentOS7.4基础操作。包括修改计算机名,配置防火墙,修改ssh端口号,添加用户并配置SSH秘钥登录。
本文编撰于2018.11.27。
阿里云服务器基础操作
更新系统
yum upgrade -y
修改计算机名
hostnamectl set-hostname aleserver
//使用下面的命令,重启使之生效
systemctl restart systemd-hostnamed
修改ssh默认端口
- 修改ssh端口号为想要的
vi /etc/ssh/sshd_config
// 搜索 Port,去掉#号,把22改成喜欢的端口,如22022
:wq
- 设置semanage
yum -y install policycoreutils-python
semanage port -a -t ssh_port_t -p tcp 22022
//检测是否成功
semanage port -l | grep ssh
- 设置防火墙
systemctl start firewalld
- 添加端口(这里同时添加了80和443,不需要的同学后面两句不用)
firewall-cmd --permanent --zone=public --add-port=22022/tcp
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --permanent --zone=public --add-port=443/tcp
- 修改防火墙端口
cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
vi /etc/firewalld/services/ssh.xml
// 修改端口为22022
:wq
- 重新载入,使之生效
systemctl restart sshd.service
firewall-cmd --reload
systemctl restart firewalld
此时 22端口已经不能登录
使用秘钥登录
- 添加用户
useradd Seven
- 设置密码
passwd Seven
- 加入wheel组
usermod -G wheel Seven
- 修改配置文件
vi /etc/pam.d/su
//找到
#auth required pam_wheel.so use_uid // 找到此行,去掉行首的“#”
:wq
- 修改 /etc/ssh/sshd_config
vim /etc/ssh/sshd_config
// 找到 #StrictModes yes 改成 StrictModes no (去掉注释后改成 no)
// 找到 #PubkeyAuthentication yes 去掉注释
// 找到 #AuthorizedKeysFile .ssh/authorized_keys 去掉注释
:wq
- 使用Seven登录
ssh-keygen -t RSA -C "yuomail@gmail.com"
// 第一次提示存储位置,直接回车
// 第二次提示是否需要密码,空密码直接回车
// 第三次重复密码
cd /home/Seven/.ssh
cp id_rsa.pub authorized_keys
chmod 600 authorized_keys
下载私钥文件保存到本地
// 这部分有需要的同学可以留言,我再图文贴上来配置xshell或SecureCRT等
使用秘钥登录
su //登录成功后,换root权限
- 修改ssh登录方式
vim /etc/ssh/sshd_config
#PermitRootLogin yes ← 找到这一行,将行首的“#”去掉,并将yes改为no
↓
PermitRootLogin no ← 修改后变为此状态,不允许用root进行登录
#PasswordAuthentication yes ← 找到这一行,将yes改为no
↓
PasswordAuthentication no ← 修改后变为此状态,不允许密码方式的登录
#PermitEmptyPasswords no ← 找到此行将行头的“#”删除,不允许空密码登录
↓
PermitEmptyPasswords no ← 修改后变为此状态,禁止空密码进行登录
wq:
- 重新载入,使之生效
systemctl reload sshd
systemctl restart sshd.service
此时只能用Seven账号登录。