文档章节

linux修改ssh端口

 范思哲思考者
发布于 2014/11/11 23:32
字数 821
阅读 197
收藏 12
点赞 0
评论 2

该教程是目前最安全的教程,如果你是新手请严格按照教程的步骤进行,如果是有一定基础的人可以选择性跳过某些段落

修改端口配置

先运行

  1. vim /etc/ssh/sshd_config


找到#Port 22 这行然后去掉前面的注释,然后再下面加一行 Port 1234

Port 22  
Port 1234

  1. 很多教程是直接修改22为其他端口,最好不要这样做,万一修改的端口不能用,你就完全登陆不上了,所以先留一条后路


 修改防火墙配置


修改iptables(linux 的防火墙)文件:

  1. vim /etc/sysconfig/iptables


增加一行

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 1813 -j ACCEPT


关闭防火墙

然后关闭防火墙

  1. service iptables stop  


关闭SELinux

重要:先关闭SELinux,很多教程没有提到这点,因为SElinux 默认的防护等级是很高的,如果不关闭SElinux就会出现很多问题

  1. vim /etc/sysconfig/selinux


将SELINUX=enforcing 这行修改为 SELINUX=disabled 然后重启

测试连接

重启好后运行命令 :

  1. netstat -tpnl | grep ssh

会看到同时有两个端口打开

  1. [root@localhost ~]# netstat -tpnl | grep ssh  
    tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1497/sshd             
    tcp        0      0 0.0.0.0:1234                 0.0.0.0:*                   LISTEN      1497/sshd             
    tcp        0      0 :::22                       :::*                        LISTEN      1497/sshd             
    tcp        0      0 :::1234                      :::*                        LISTEN      1497/sshd


重要:这时测试一下新端口能否连接通过

修改SELinux配置

如果正常再进行下面的步骤:修改selinux

刚刚装好的centos是没有semanage命令的,所以请先确认semanage命令是否存在,如果没有,就按照下面的教程安装

  1. # rpm -qa | grep semanag  
    libsemanage-2.0.43-4.2.el6.x86_64  
      
    # which semanage  
    /usr/bin/which: no semanage in (/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)  
      
    # yum provides /usr/sbin/semanage  
    policycoreutils-python-2.0.83-19.30.el6.x86_64 : SELinux policy core python utilities  
    Repo        : base  
    Matched from:  
    Filename    : /usr/sbin/semanage  
      
    # yum whatprovides /usr/sbin/semanage  
    Loaded plugins: fastestmirror, refresh-packagekit, security  
    Loading mirror speeds from cached hostfile  
     * base: mirrors.prometeus.net  
     * epel: mirror.switch.ch  
     * extras: mirrors.prometeus.net  
     * rpmfusion-free-updates: rpmfusion.famillecollet.com  
     * rpmfusion-nonfree-updates: rpmfusion.famillecollet.com  
     * updates: mirrors.prometeus.net  
    policycoreutils-python-2.0.83-19.30.el6.x86_64 : SELinux policy core python utilities  
    Repo        : base  
    Matched from:  
    Filename    : /usr/sbin/semanage  
      
    # yum -y install policycoreutils-python


完成之后,使用以下命令查看当前SElinux 允许的ssh端口:

  1. semanage port -l | grep ssh


会输出

  1. ssh_port_t                     tcp      22


添加1234端口到 SELinux

  1. semanage port -a -t ssh_port_t -p tcp 1234


重要:然后确认一下是否添加进去

  1. semanage port -l | grep ssh


如果成功会输出

  1. ssh_port_t                     tcp      1234, 22


开启SELinux较低安全等级

然后去修改SELinux策略,重新打开它,但是我们先修改为permissive这种安全等级不会拦截你的修改,只是提示警告

  1. vim /etc/sysconfig/selinux

修改安全等级

  1. SELINUX=permissive


然后reboot重启

重要:重启好之后再一次用新端口测试远程连接

开启SELinux正常安全等级

重启好之后用新的端口测试连接

如果测试通过修改 SELINUX=enforcing, 然后重启,因为前面说过很多次修改的方式,这边就不贴代码了

重启之后再一次用新端口测试远程连接

后续清理步骤

如果都可以的话,恭喜你,成功的配置好新端口,然后你可以自己进行把22端口从sshd_config中删除,把22端口从防火墙中删除等步骤


© 著作权归作者所有

共有 人打赏支持
粉丝 3
博文 57
码字总数 15081
作品 0
朝阳
加载中

评论(2)

顺其自然001
顺其自然001

引用来自“ericsoul”的评论

防火墙增加一行,之后端口是1813,lz是想害死新手么?

呵呵
ericsoul
ericsoul
防火墙增加一行,之后端口是1813,lz是想害死新手么?
ssh隧道转发内网穿透功能实现(反弹式木马原理)

一、ssh说明 SSH(secure shell)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境(这点很重要);SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接。人...

dyc2005 ⋅ 04/21 ⋅ 0

Linux系统安装网络配置及远程连接知识点小结

基础知识课后题 远程连接Linux服务器,需要Linux服务器开启sshd服务,那么sshd服务默认监听哪个端口?这个端口是否可以自定义呢 ?如果可以,如何自定义呢? 2.常用的远程连接Linux的终端工具...

蛋黄哥 ⋅ 2017/08/24 ⋅ 0

使用Holer外网SSH访问内网(局域网)Linux系统

1. Holer工具简介 Holer exposes local servers behind NATs and firewalls to the public internet over secure tunnels. Support forwarding message based on TCP protocol. Holer是一个免......

domwang ⋅ 05/06 ⋅ 0

linux应急取证学习(更新中)

一些好的文章: 1 SecDarker的文章 http://www.freebuf.com/author/secdarker 2 我的一台linux肉鸡的简单手工***检测过程 http://www.grablan.com/article/2012/920299.html 3 Linux平台“盖......

Alyoyojie ⋅ 05/31 ⋅ 0

NetHunter和花生壳实现SSH远程访问内网安卓手机

  *本文作者:2benben,本文属 FreeBuf 原创奖励计划,未经许可禁止转载。   关键词: 内网穿透, 端口映射, SSH协议, 花生壳, Kali NetHunter      本文针对普通家庭内网用户,有条件...

FreeBuf ⋅ 06/11 ⋅ 0

linux禁止root用户直接登录sshd并修改默认端口

linux最高权限用户root,默认可以直接登录sshd。为了提高服务器的安全度,需要对它进行禁止,使得攻击者无法通过暴力破解来获取root权限。 1,新建一个用户; #useradd xxx (xxx为你要新建的用...

技术小阿哥 ⋅ 2017/11/27 ⋅ 0

SaltStack自动化部署Kubernetes v1.9.3版本

SaltStack自动化部署Kubernetes v1.9.3版本(支持TLS 双向认证、RBAC 授权、Flannel网络、ETCD集群等) 版本明细:Release-v1.0 测试通过系统:CentOS 7.4 salt-ssh: 2017.7.4 Kubernetes: ...

OpenStack2015 ⋅ 04/16 ⋅ 0

开启SUSE Linux的SSH密码登陆

开启SUSE Linux的SSH密码登陆 [日期:2017-10-11] 来源:Linux社区 作者:neverinit [字体:大 中 小] 一般来说,刚安装好的SUSE Linux系统默认是可以使用ssh2登陆的,但是不能使用ssh密码登...

rootliu ⋅ 05/09 ⋅ 0

centos7.4+GitLab部署

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。 系统环境准备 建议:内存4G以上不然带不动 #关闭firewalld和NetWorkManager #永久关闭...

归来仍少年 ⋅ 04/28 ⋅ 0

ssh-keyscan命令--Linux命令应用大词典729个命令解读

内容来源于人民邮电出版社《Linux命令应用大词典》 讲述729个命令,1935个例子 学习Linux系统的参考书、案头书,遇到不懂的命令或命令选项一查即可 争取每天都发布内容 本文出自 “airfish20...

airfish2000 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Android JNI 读写Bitmap的方法

Java层创建Bitmap,通过JNI将Bitmap传到C/C++进行处理 Java部分 public static native boolean greenBitmap(Bitmap bitmap); C/C++部分 JNIEXPORT jboolean JNICALL Java_com_test_Test_gree......

国仔饼 ⋅ 7分钟前 ⋅ 0

一次性让你懂async/await,解决回调地狱

什么是async? 欢迎留言讨论 async 函数是 Generator 函数的语法糖。使用 关键字 async 来表示,在函数内部使用 await 来表示异步。相较于 Generator,async 函数的改进在于下面四点: 内置执...

阿K1225 ⋅ 7分钟前 ⋅ 0

angular常用命令

.下载更新操作 1.利用npm下载angular的命令行工具AngularCLI: npm install -g @angular/cli 2.下载jquery: npm install --save jquery 3.更新npm: npm i -g npm 4.更新angular: ng update ......

消散了的诗意 ⋅ 9分钟前 ⋅ 0

window.print 页面打印

定义和用法 print() 方法用于打印当前窗口的内容。 语法 window.print(); window.print() 实际上,是浏览器打印功能菜单的一种程序调用。与点击打印功能菜单一样,不能精确分页,不能设置纸型...

初学者的优化 ⋅ 10分钟前 ⋅ 0

魔兽世界 7.0版本上 PVE装备全攻略

  T套 因为大家应该都会打穿副本的所以具体是哪个boss我就不说了。   T1: 所有套装都在【熔火之心】出   T2: 头原来是在【奥妮克希亚的巢穴】改到黑翼之巢的奈法利安了,腿是在【熔火之...

wangchen1999 ⋅ 10分钟前 ⋅ 0

java.math.BigDecimal使用小结

原文地址 java.math.BigDecimal使用小结 divide方法 使用BigDecimal.divide方法时一定要考虑: 除数是否为0 商是否是无限小数 正确的使用方式 判断除数是否为0,是0做另外的处理逻辑 调用除法...

666B ⋅ 13分钟前 ⋅ 0

关于qstring转char乱码问题。

if (OpenClipboard(NULL)) { HGLOBAL hgClip; EmptyClipboard(); QByteArray byay = FValue.toLocal8Bit(); //转latin编码 char *bochsrc_line = byay.data(); hgClip = GlobalAlloc(GMEM_DD......

backtrackx ⋅ 13分钟前 ⋅ 0

了解SSH加密和连接过程

介绍 SSH或安全shell是安全协议,也是安全管理远程服务器的最常用方式。通过使用多种加密技术,SSH提供了一种机制,用于在双方之间建立加密安全连接,对彼此进行身份验证,以及来回传递命令和...

吴伟祥 ⋅ 20分钟前 ⋅ 0

微信小程序

小程序的基础配置:导航栏和tabbar 在app.json文件中配置导航栏和tabrbar 导航栏的设置 设置导航,背景黑色,文字白色,文字内容 { "pages":[ "pages/index/index", "pages/logs/l...

上官清偌 ⋅ 23分钟前 ⋅ 0

【转】百度坐标坐标系之间的转换(JS版代码)

/** * Created by Wandergis on 2015/7/8. * 提供了百度坐标(BD09)、国测局坐标(火星坐标,GCJ02)、和WGS84坐标系之间的转换 *///定义一些常量var x_PI = 3.1415926535897932...

HAVENT ⋅ 25分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部