收藏文章 楼主

ssh-timeout连接超时/无法连接 iptables防火墙详解端口开放/删除

版块:linux   类型:普通   作者:小绿叶技术博客   查看:1863   回复:2   获赞:1   时间:2019-11-25 09:05:06

ssh 连接超时,ssh登录后在1分钟内断开,每分钟断开


cat /etc/ssh/sshd_config | grep Client                                   # 查看ssh 时间配置

#ClientAliveInterval 0                                                            # 客户端存活时间间隔 

#ClientAliveCountMax 3                                                       # 客户端存活计数最大值 (单位:分钟)



sudo sed -i "s/#ClientAliveInterval.*/ClientAliveInterval 60/g" /etc/ssh/sshd_config
sudo sed -i "s/#ClientAliveInterval.*/ClientAliveInterval 60/g" /etc/ssh/sshd_config
sudo sed -i "s/ClientAliveCountMax.*/ClientAliveCountMax  5/g" /etc/ssh/sshd_config
sudo sed -i "s/#ClientAliveCountMax.*/ClientAliveCountMax  5/g" /etc/ssh/sshd_config
sudo systemctl restart ssh
                                                # 修改间隔: 60
                                                # 修改最大连接数量






#---------------------  自动替换参数  ----------------------#

#!/bin/bash

#脚本自动替换参数

setcs=(

"ClientAliveInterval"

"ClientAliveCountMax"

)

upsetcs=(

"ClientAliveInterval 60"

"ClientAliveCountMax 5"

)

suzu=${#setcs[*]} ; echo "修改文件总参数个为:$suzu"

# 由于数组角标默认从0开始,数组角标数数到元素个数会多出一个空的,才用小数组个数6==》6-1=0~5

phpini="/etc/ssh/sshd_config"

if [ ! -e $phpini.back ]

then

     echo "备份"

     cp $phpini $phpini.back

   else

     echo "备份文件存在:$phpini.back"

fi

for((i=0;i<$suzu;i++))

  do

    set=${setcs[$i]} ; upset=${upsetcs[$i]}

    NR=`cat -n $phpini | grep "$set" | awk -F" " '{print $1}'` ; echo "行信息: $NR"


    if [[ ${NR} =~ ^[0-9]+ ]]

     then

         echo "$set   +++++> 参数更新: $upset

         -------------------------------------------------------------"

         sed -i "$NR a $upset" $phpini

         sed -i "$NR d" $phpini

         echo "修改后的信息:";  cat $phpini | grep "$upset"

     else

         echo "$NR 没有获取到行 $setcs 退出修改"

     fi

 done

systemctl restart sshd

# wget www.eisc.cn/file/shell/sedfile.sh


=======   ssh无法连接解决思路   =======

检查环境变量:https://www.linuxprobe.com/diff-bashrcprofile.html

1.自己ssh自己是否正常

2.通机房是否正常

3.换端口是否正常

4.centos7不要关闭防火墙,

5.selinux关了吗

6.他自己防火墙规则问题

7.关闭  iptables



=======    

yum update iptables

yum install iptables-services


iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 添加进端口

iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT # 添加出端口

iptables -L -n  --line-numbers # 查看已有规则并显示编号

iptables -D INPUT 2 # 删除规则编号为2的



systemctl start iptables.service #启动防火墙

systemctl enable iptables.service #设置开机自启动


systemctl stop iptables.service #关闭防火墙

systemctl disable iptables.service #禁止开机启动


#----------------- 设置 ssh 超时时间 -------#

linux下ssh超时时间配置

Linux下设置超时时间,是在配置文件/etc/profile里。在该文件下,添加一个变量:

export TMOUT=3600

时间单位是S,上面配置的超时时间是1个小时。

另外,在ssh配置文件/etc/ssh/sshd_config中,将ssh的保活配置打开:

ClientAliveInterval 300

ClientAliveCountMax 3

意思是5分钟检查一次客户端响应,最多检查3次。如果3次都检查到客户端不响应,那么就认为ssh已经断开了。

# ssh 超时:https://www.cnblogs.com/flishroom/p/11661515.html

脚本执行: wget www.eisc.cn/file/shell/sedfile.sh ; sh sedfile.sh

本文章最后由 admin2025-11-30 22:35 编辑

提供企业建站服务,免费网防系统,提交信息登录 http://yundun.ddoss.cn 邮箱: proposal@ddoss.cn 
回复列表
默认   热门   正序   倒序

回复:ssh-timeout连接超时/无法连接 iptables防火墙详解端口开放/删除

头像

用户名:

粉丝数:

签名:

资料 关注 好友 消息