更改SSH服务器远程登录设置

Linux的管理用户是root,远程连接的默认端口是22,这是通常有IT经验的人都知道的。为了系统安全,我们通常都会修改这些默认的设置,下面就说下怎么修改ssh的配置。实验用的系统为CentOS6.9,其他的Linux也可以参考。

1、修改ssh连接的端口

ssh的端口默认为22,我们可以通过修改配置文件改为一个非著名的端口,比如2222.

vim /etc/ssh/sshd_config

用vim编辑器打开sshd_config,把22端口改为2222,然后保存退出。

注意:配置文件生效之前,我们要在防火墙放行2222端口,设置iptables。

iptables -I INPUT -p tcp -m tcp --dport 2222 -j ACCEPT    #放行2222端口
/etc/init.d/iptables save    #保存iptables配置
/etc/init.d/iptables restart    #重启iptables服务

重载ssh配置文件,不建议用restart来重启ssh服务,这样会影响到现有的ssh连接。

/etc/init.d/sshd reload

然后用XShell重新连接看看,连接成功。

更改SSH服务器远程登录设置

2、禁止root用户直接ssh连接

root这个帐号是所有人都知道并且拥有最高权限的帐号,直接暴露在网络中不大安全,我们可以禁止ssh使用root连接,同样只需要修改ssh的配置文件即可。在这里要确认自己的系统有一个可以登录的普通帐号,用该帐号登录之后再su -切换到root,或者将该帐号加入sudoers里面。

用vim编辑器打开ssh的配置文件,找到PermitRootLogin那行,去掉注释,参数改为no,或者直接在最后几行加入下面的几条参数。(这几个命令都可以在配置文件找到的)

PermitRootLogin no        #是否允许root登录
PermitEmptyPasswords no        #是否允许空密码登录
UseDNS yes        #是否对远程主机名进行反向解析,关闭会提高连接的速度
GSSAPIAuthentication no        #解决Linux之间使用ssh连接慢的问题

修改之后,保存退出,然后重新加载ssh文件即可。

3、其他

如果对安全有更高的要求,可以更高ssh的监听ip,使其只监听内网的ip。可以通过防火墙来限制来源的IP地址

iptables -I INPUT -s 192.168.17.0/24 -p tcp --dport 2222 -j ACCEPT
/etc/init.d/iptables save   
/etc/init.d/iptables restart

下面关于SSH相关的文章您也可能喜欢,不妨参考下:

集群环境SSH免密码登录设置 

Linux基础教程:配置SSH免密码登陆

远程SSH连接服务与基本排错 

使用SSH公钥密钥自动登陆Linux服务器

配置SSH免密码登录 

开启SSH服务让Android手机远程访问 Ubuntu 14.04 

SSH非交互式密码授权远程执行脚本 

SSH通过密钥登陆

Ubuntu 安装配置SSH(ssh: connect to host localhost port 22: Connection refused问题的解决) 

CentOS SSH提示:connect to host centos-py port 22: Connection refused 

Linux上实现SSH免密码登陆远程服务器 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/feb51276653c54989080c89640d65c15.html