debian重启ssh服务_Linux服务器配置-SSH远程登录管理(四)

95752122231685fbaa12ac05d4ce0aac.png

上文:Linux服务器配置-SSH远程登录管理(三)

上两篇文章介绍了SSH服务配置密码认证和密钥对认证的方法,这里使用的都是SSH服务默认的22端口。Linux系统安装完毕后,为了便于远程控制,默认开启SSH服务并对防火墙和SELinux进行了缺省配置,这样就会很方便的通过SSH连接到远程主机。如果需要更改SSH服务的默认端口,并且系统开启了防火墙和SELinux,那么就要对它们进行相应设置后,方能正确连接到主机。

下面将通过实例说明系统在开启防火墙和SELinux后怎样改变SSH的服务端口。(SSH认证的配置请参阅以前的文章,这里就不再讲述。)现将上篇文章中的实例的SSH服务端口更改为2019。

4d64a66326bab1c0f3a3deef84bd3afc.png

一、查询主机防火墙和SELinux的运行状态

1、在系统中查询防火墙的运行状态

  • 在CentOS6系统中

CentOS6系统中运行的防火墙是iptables,可用以下命令查询iptables的运行状态。

service iptables status #查询iptables的运行状态

78561ddf1bd29a7f7a7e65279d75d7aa.png
  • 在RHEL7系统中

RHEL7系统中运行的防火墙是firewalld或者是iptables,可用以下命令查询运行状态。

systemctl status firewalld iptables #查询firewalld和iptables的运行状态

ebadbf3b73bd4f6ced3d637e44c3c7d5.png

iptables与firewalld都不是真正的防火墙,它们都只是用来定义防火墙策略的防火墙管理工具,或者说只是一种服务。iptables会把配置好的防火墙策略交由内核层面的netfilter网络过滤器来处理,而firewalld服务则是把配置好的防火墙策略交由内核层面的nftables包过滤框架来处理。

2、在系统中查询SELinux的运行状态

sestatus | grep SELinux #查询SELinux的运行状态

getenforce#查询SELinux的运行模式(enforcing 强制、permissive 警告和disabled 禁用)

e35c1a01931c94cefa62a180294bc771.png

二、更改端口前其他准备工作

1、安装semanage工具,用来设置SELinux安全策略。

rpm -qa | grep policycoreutils-python #检查semanage工具是否安装

如果未安装请用下列命令安装

yum install -y policycoreutils-python#安装semanage工具

2、查询预更改的端口在SELinux中的定义情况

semanage port -l | grep 2019

执行此命令,如果没有任何输出信息,表示此预设端口没有被SELinux定义,即可用。

三、修改SSH服务的默认端口

SSH服务默认是22端口,如果要修改端口,可先增加一个端口,测试新端口设置成功后,再把默认22端口关闭掉。

1、修改SSH服务的配置文件

vim /etc/ssh/sshd_config

Port 22#去掉此项前的井号

Port 2019 #增加一个预更改的端口

2、修改SELinux端口定义

semanage port -a -t ssh_port_t -p tcp 2019 #将预更改端口添加到SELinux规则中

semanage port -l | grep ssh#检查预更改端口是否添加成功

4287587949a4346a0fc214fad56e3bd7.png

3、在防火墙中开放该端口

  • iptables防火墙

iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 2019 -j ACCEPT#添加防火墙规则,开放预更改端口。

iptables -L -n #查看预更改端口防火墙规则是否设置成功

service iptables save #保存iptables设置

service iptables restart#重新启动防火请

28d8da5abf317cfcb80b3c02d7693474.png
  • firewalld防火墙

firewall-cmd --permanent --zone=public --add-port=2019/tcp#添加防火墙规则,开放预更改端口。

firewall-cmd --reload #重新加载放火墙

firewall-cmd --list-all #查看预更改端口设置情况

04365c185c114869647ee1f1e6c031a6.png

4、重启SSH服务

service sshd restart #CentOS6主机

systemctl restart sshd #RHEL7主机

5、用修改后的端口登录测试

ssh -p 2019 root@192.168.1.90 #登录CentOS6主机

ssh -p 2019 snowfox@192.168.1.93#登录RHEL7主机

7140bee1564f02f3035cb05b99c6f4d8.png

这里用Linux系统SSH客户端进行登录测试,如果使用Windows系统SSH工具登录,一定要注意更改端口号。

四、关闭默认22端口

1、在防火墙中关闭SSH默认22端口

  • iptables防火墙

iptables -D INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT#删除默认22端口规则

service iptables save #保存iptables设置

service iptables restart#重新启动防火请

  • firewalld防火墙

firewall-cmd --permanent --zone=public --remove-service=ssh#删除默认22端口规则

firewall-cmd --reload #重新加载放火墙

firewall-cmd --list-all #查看端口设置情况

2、修改SSH服务的配置文件

vim /etc/ssh/sshd_config

Port 22#删除此项

Port 2019 #保留此项设置

重启SSH服务

service sshd restart #CentOS6系统

systemctl restart sshd #RHEL7系统

3、用netstat命令查看端口的开放情况

netstat -tunl | grep -E ':2019|:22'

52a41eb84fe2c6c10af114855a12accd.png

以上是我在学习Linux系统中整理的一些学习要点,肯定会有不对的地方,希望各位大侠给与指正,我们共同学习!谢谢!

至此【Linux服务器配置-SSH远程登录管理】已经全部介绍完毕,如果喜欢请加关注!谢谢!

下篇将介绍【Linux服务器配置-VSFTP服务配置】

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值