Centos 7 SSh--端口号的更改
前言:开启某服务或软件的端口,要从该服务或软件监听的端口(多以修改配置文件为主),SeLinux和防火墙(FireWall)的安全策略下手。如果使用阿里云,腾讯等第三方服务器还需要对管理控制台的安全组下手。
下面进入主题,如果有什么问题请查看下面的补充栏:
第一步:修改SSH配置文件(注意是sshd_config而不是ssh_config,多了个d)
vim /etc/ssh/sshd_config
找到“#Port 22”,这一行直接键入“yyp”复制该行到下一行,然后把两行的“#”号即注释去掉,修改成:
Port 22
Port 10086
SH默认监听端口就是22,如果你不强制说明别的端口,”Port 22”注不注释都是开放22访问端口。上面我保留了22端口,防止之后因为各种权限和配置问题,导致连22端口都不能访问了,那就尴尬了。等一切都ok了,再关闭22端口。
Ok,继续,我增加了10086端口,大家修改端口时候最好挑10000~65535之间的端口号,10000以下容易被系统或一些特殊软件占用,或是以后新应用准备占用该端口的时候,却被你先占用了,导致软件无法运行。
第二步:如果你关闭了SELinux,可以忽略第二步。
先查看SELinux开放给ssh使用的端口
semanage port -l|grep ssh
如果提示:-bash: semanage: command not found,表示没有安装semanage
安装yum -y install policycoreutils-python.x86_64
我的系统打印如下:
[root@izwz98nqtxax20v9gcwk1tz ~]# semanage port -l|grep ssh
ssh_port_t tcp 22
可知,SELinux没有给SSH开放10086端口,那么我们来添加端口:
semanage port -a -t ssh_port_t -p tcp 10086
完成后,再次查看
semanage port -l|grep ssh [root@izwz98nqtxax20v9gcwk1tz ~]# semanage port -l|grep ssh
ssh_port_t tcp 22,10086
如果确认在配置文件中添加了和开放了端口,执行上一步未显示的话无需在意
第三步:如果你关闭了防火墙,可以忽略第三步(不开防火墙会很危险,建议开启)
先查看防火墙是否开启了10086端口:
firewall-cmd --zone=public --query-port=10086/tcp
打印结果如下:
no
表示没有开放端口,这就要添加端口
firewall-cmd --zone=public --add-port=10086/tcp --permanent 打印结果:
success
重新加载防火墙策略:
firewall-cmd --reload
第四步:重启SSH服务和防火墙,最好重启一下服务器
systemctl restart sshd
systemctl restart firewalld.service
shutdown -r now
第五步:尝试用10086登录SSH,或者进入该服务器直接本地访问SSH如下:
ssh root@localhost -p 10086
如果成功,说明10086已经完全可以使用了,接下来你就可以根据上述步骤sshd_config Port22注释掉,SELinux和防火墙(Firewalld)关闭22端口就OK,大工造成!
第六步:修改第三方服务器安全组策略。如果没有第三方服务器,上述已经完成了本文的目标,可以忽略第六步。下面直接上阿里云的示例图:
1.查看某端口是否被占用,以10086为例:
netstat -lnp|grep 10086
如果没有任何打印,说明没有被占用。有打印的话,说明被占用了,一般会列出哪个进程占用。
列出所有端口
netstat -ntlp
查看是否开启了SELinux
sestatus -v
如果输出结果为:
SELinux status: disabled
说明有打开,可以通过修改SELinux的配置开启或关闭它:
vim /etc/selinux/config
找到:
SELINUX=disabled
修改成:
SELINUX= enforcing
重启一下,就OK。
semanage命令无法使用,或说找不到该命令。说明没有配置该命令,可以进行以下命令进行安装:
yum -y install policycoreutils-python.x86_64
关于它的依赖库我就不作赘述,可以百度下更全面的安装semanage教程。
CentOS7防火墙改为firewalld了,而不是iptables,对应的命令也请百度下,这里不作赘述。 
Centos 7 SSh--端口号的更改的更多相关文章
- CentOS修改SSH端口号和禁止root用户直接登录
		linux安装ssh远程登录后,为了安全起见,修改默认的22端口号并禁止root用户直接通过ssh登录. 配置方法如下: 1.使用vi编辑器打开ssh配置文件 /etc/ssh/sshd_config ... 
- Ubuntu以及CentOS7修改ssh端口号详细步骤
		1.Ubuntu修改ssh端口号步骤: 1.修改sshd.config文件.执行vim etc/ssh/sshd_config.增加上我们需要增加的ssh的端口号.图例增加了5309的端口号. ESC ... 
- centos修改SSH端口并禁用root远程登录
		1.使用 root 用户执行以下步骤:只在 CentOS 6.5 下验证. 2.先查看下服务器端口号范围: # sysctl -a|grep ip_local_port_range 3.修改端口 vi ... 
- 如何修改配置文件:CentOS下SSH端口修改
		CentOS各发行版中SSH端口默认为22,如果正式做站或其它用途,为了提高安全性就需要修改掉默认的SSH端口号,防止被有心人穷举密码.部分VPS提供商,若您的VPS服务器SSH遭受多次的暴力破解,可 ... 
- centos 修改ssh端口,以支持vsftp
		vi /etc/ssh/sshd_config Port 22 Port 2225执行/etc/init.d/sshd restart 启动SSH服务,这样SSH端口将同时工作与22和2225上. ... 
- centos修改ssh端口
		1.编辑防火墙配置:vi /etc/sysconfig/iptables防火墙增加新端口2222-A INPUT -m state --state NEW -m tcp -p tcp --dport ... 
- CentOS 7 修改SSH端口号 和 ssh无法使用密码登录 和 查看pid 端口占用
		如下示例把SSH默认端口22改为122. 1 修改/etc/ssh/sshd_config文件 #Port #找到改行,如果还想继续使用该端口,可以把#去掉,如果使用新端口,可以默认不管 Port # ... 
- Linux下rsync增加SSH端口号的用法
		rsync默认使用SSH的22号端口,为了安全起见,很多机器更改了SSH默认的端口号,对应rsync命令的用法为: rsync -e 'ssh -p 1234' username@hostname:S ... 
- git ssh端口号变更之后所需要的修改
		假设原本的repository地址为:git@gitlab.cjx.com:jinxin/project2.git 端口变更之后,需要调整为:ssh://git@gitlab.cjx.com:PORT ... 
- CentOS7.6新增或修改SSH端口号的步骤
		1.修改SSH配置文件(注意是sshd_config而不是ssh_config,多了个d) vim /etc/ssh/sshd_config 找到"#Port 22",这一行直接键 ... 
随机推荐
- Java中的23种设计模式与7大原则
			一.创建型模式 1.抽象工厂模式(Abstract factory pattern): 提供一个接口, 用于创建相关或依赖对象的家族, 而不需要指定具体类.2.生成器模式(Builder patter ... 
- 代码实现:输入三个整数x,y,z,请把这三个数由小到大输出。
			import java.util.Arrays; import java.util.Scanner; //输入三个整数x,y,z,请把这三个数由小到大输出. public class Test { p ... 
- 使用matlab画半透明椭圆
			先上最终效果图: 本来是想直接用scatter和alpha来画的,结果在尝试以下代码后,发现无法显示透明效果 scatter(rand(1000,1),rand(1000,1), 'filled'); ... 
- web开发(五) JSP详解(四大作用域九大内置对象等)
			在网上看见一篇不错的文章,写的详细. 以下内容引用那篇博文.转载于<http://www.cnblogs.com/whgk/p/6427759.html>,在此仅供学习参考之用. 一.JS ... 
- SuperSocket 学习笔记-客户端
			客户端: 定义 private AsyncTcpSession client; 初始化 client = new AsyncTcpSession(); client.Connected += Clie ... 
- Python密码登录程序的思考--学与习
			# 初学者的起步,对于开始的流程图结构还不太熟悉 # 思考: 1,write()与writelines()的区别,前者确定为字符串,后者为序列(列表,字典.元组等),自动为你迭代输入# ... 
- form 源码刨析
			def clean_name(self) value = self.cleaned_data.get('name') if "金-瓶-梅" not in value: raise ... 
- Linux MFS分布式文件系统介绍和安装
			MFS分布式文件系统 mooseFS(moose 驼鹿)是一款网络分布式文件系统.它把数据分散在多台服务器上,但对于用户来讲,看到的只是一个源.MFS也像其他类unix文件系统一样,包含了层级结构(目 ... 
- Mybatis(二) SQL映射文件
			SQL映射文件 单条件查询 1. 在UserMapper接口添加抽象方法 //根据用户名模糊查询 List<User> getUserListByName(); 2. 在UserMappe ... 
- (转)HashMap底层实现原理
			①HashMap的工作原理 HashMap基于hashing原理,我们通过put()和get()方法储存和获取对象.当我们将键值对传递给put()方法时,它调用键对象的hashCode()方法来计算h ... 
