一、首先确认 Centos7 是否已安装 ssh服务
一般情况下,centos自带ssh服务
使用命令行 yum list installed | grep ssh
来查询
如果显示:
则说明安装ssh服务。
如果没有安装,则先需要安装ssh服务,
使用命令行yum install openssh-server
一路Y确认
二、配置SSH
ssh默认端口是22
使用 root 用户进入 /etc/ssh/ 目录: cd /etc/ssh/ (切换到root用户,使用 su 命令)
使用 vi/vim 打开 sshd_config 文件: vim sshd_config
默认是22端口,将配置文件里的 #注释 释放,(想要哪个设置生效,就删除前面的 #)
su #切换到root
cd /etc/ssh/
vim sshd_config
PermitRootLogin yes #是否允许root用户登录
PermitEmptyPasswords no #是否允许空密码
PasswordAuthentication yes #是否允许密码验证
AllowUsers xxxxx #允许xxxxx用户登录
ecs
wq # 保存退出
三、 防火墙打开22端口
firewall-cmd --zone=public --add-port=22/tcp --permanent #向防火墙中添加端口
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效
firewall-cmd --reload #使防火墙规则生效
firewall-cmd --zone=public --query-port=22/tcp #查看端口是否添加成功:
firewall-cmd --list-ports #查看防火墙开放的端口
四、启用ssh服务
service sshd restart #重启ssh服务
service sshd start #启动ssh服务
五、检查是否启动ssh服务(以下通用)
netstat -antup|grep ssh #查询-antup(列出ssh相关地址。用IP地址显示TCP/UDP连线状况,正在使用Socket的程序识别码和程序名称)
netstat -lnp|grep 22 #查询-lnp(用ip显示出正在使用端口22的程序名称或识别码)
六、 开机启动ssh服务
用root用户修改
systemctl enable sshd #开机启动sshd服务
systemctl list-unit-files |grep ssh #检查是否开机启动
systemctl stop sshd #停止sshd服务
systemctl disable sshd #禁用开机启动sshd服务
七、更改SSH端口
用root用户修改
将 port
22 改为 8112
vim /etc/ssh/sshd_config #ssh配置文件
service sshd restart #重启ssh服务
netstat -lnp|grep 8112 #检查8112端口是否开启
#如果无法连接,需修改selinux
semanage port -l|grep ssh #查询selinux给ssh开放了什么端口
semanage port -a -t ssh_port_t -p tcp 8112 #添加8112端口
semanage port -l|grep ssh #检查是否添加成功
service sshd restart #重启ssh服务
netstat -lnp|grep 8112 #检查8112端口是否开启
如果无效,参照第三步放行防火墙