在Linux云服务器上限制特定IP进行SSH远程连接的设置

简介: 温馨提示,修改iptables规则时要格外小心,否则可能导致无法远程访问你的服务器。最好在掌握足够技术知识和理解清楚操作含义之后再进行。另外,在已经配置了防火墙的情况下,例如ufw(Ubuntu Firewall)或firewalld,需要按照相应的防火墙的规则来设置。

让我们一起进入神秘的Linux命令行的世界,找出如何限制特定IP进行SSH远程连接。这就像是把云服务器变成一座古老城堡,只有持有特殊通行证的人才能进入。

首要任务在于修改iptables的规则,iptables就像城堡的守卫,负责筛选出那些可以进入城堡的IP。若对iptables的操作不熟悉,别急,我会深入解析的。

让我们布置第一个策略,这需要把其他的IP都阻挡在城堡门口。打开你的命令行,输入以下代码:

sudo iptables -A INPUT -p tcp --dport 22 -j DROP
​

这就好像是生成一个大屏障,防止所有人通过端口22(SSH默认使用端口22)进入我们的城堡。但是,我们还需要特例让特定IP得以进入。

然后输入下面的代码,假设我们允许的IP是123.123.123.123:

sudo iptables -A INPUT -p tcp --dport 22 -s 123.123.123.123 -j ACCEPT
​

这条命令为123.123.123.123开了一道特殊通道,可以无阻碍地进入城堡。

接下来我们需要保存iptables的规则,如此即使城堡的大门关闭(服务器重启),这些规则也不会丢失。在不同的Linux发行版中,用来保存iptables规则的命令稍有不同:

  • 绝大部分基于Debian的发行版(如Ubuntu),使用下列命令:
sudo sh -c "iptables-save > /etc/iptables.rules"
​

然后在/etc/network/interfaces文件中加上下列一行:

pre-up iptables-restore < /etc/iptables.rules
​
  • 这一部分用来引导城堡内的住民(系统启动)时恢复iptables的规则。
  • Red Hat、CentOS和其他基于Red Hat的Linux发行版使用如下命令:
sudo /sbin/service iptables save
​

这个命令一键保存iptables的规则,不需要修改文件。

以上的操作就达到了限制特定IP进行SSH远程连接的目标,就像城堡的守卫一样,iptables新的规则只允许持有通行证的IP访问你的云服务器。

温馨提示,修改iptables规则时要格外小心,否则可能导致无法远程访问你的服务器。最好在掌握足够技术知识和理解清楚操作含义之后再进行。另外,在已经配置了防火墙的情况下,例如ufw(Ubuntu Firewall)或firewalld,需要按照相应的防火墙的规则来设置。

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
相关文章
|
11月前
|
网络协议 Ubuntu
在Ubuntu 18.04/20.04 LTS设置静态DNS服务器的过程。
以上步骤提供了一种简洁明了的指导,让用户能够在Ubuntu系统中有效设置静态DNS服务器,这对日常管理和网络配置来说是非常实用的技能。
1714 18
|
11月前
|
应用服务中间件 网络安全 数据安全/隐私保护
网关服务器配置指南:实现自动DHCP地址分配、HTTP服务和SSH无密码登录。
哇哈哈,道具都准备好了,咱们的魔术秀就要开始了。现在,你的网关服务器已经魔法满满,自动分配IP,提供网页服务,SSH登录如入无人之境。而整个世界,只会知道效果,不会知道是你在幕后操控一切。这就是真正的数字世界魔法师,随手拈来,手到擒来。
545 14
|
Java 关系型数据库 MySQL
在Linux操作系统上设置JDK、Tomcat、MySQL以及J2EE后端接口的部署步骤
让我们总结一下,给你的Linux操作系统装备上最强的军队,需要先后装备好JDK的弓箭,布置好Tomcat的阵地,再把MySQL的物资原料准备好,最后部署好J2EE攻城车,那就准备好进军吧,你的Linux军团,无人可挡!
481 18
|
Ubuntu 应用服务中间件 网络安全
关于一些轻量云服务器SSH断连的疑问
在使用2H2G配置的轻量级Ubuntu 22.04服务器时,按照Solana官网教程安装环境,执行`[cargo install]`命令(特别是安装avm和anchor包时),出现SSH连接中断且无法重新登录的问题。推测可能是低配服务器资源耗尽导致SSH进程被终止,即便CPU使用率下降也无法恢复连接,需重启服务器并等待约30分钟才能恢复正常。此现象或与服务器性能限制有关,期待更多测试与解释。
|
11月前
|
数据采集 人工智能 BI
MyEMS能源管理系统后台配置-邮件服务器设置
本文介绍其邮件服务器配置方法。
169 0
|
11月前
|
安全 网络协议 Linux
Linux查 ssh端口号和服务状态
本指南详细介绍如何检查SSH服务的运行状态,包括通过进程命令验证服务启动、查看监听端口、检测系统服务状态以及防火墙配置。同时提供安全建议,如修改默认端口、禁用密码登录和定期更新系统,确保SSH服务稳定与安全。适用于不同Linux发行版(Systemd/SysVinit),帮助用户全面排查和优化SSH配置。
|
Ubuntu Linux 网络安全
SSH客户端连接远程服务器
一、什么是客户端连接远程服务器 发起连接的一方,计算机或设备(称为客户端)与另一个计算机或设备(称为远程服务器)建立连接。 客户端通过网络连接到远程服务器,远程服务器则是提供所需服务或资源的一方。 客户端通常使用特定的协议(如SSH、HTTP、FTP等)与远程服务器进行通信。 示例:你使用SSH客户端从本地计算机连接到远程服务器以执行远程命令。 二、什么是服务端连接远程服务器
637 1
|
Linux 网络安全 数据安全/隐私保护
SSH工具连接远程服务器或者本地Linux系统
SSH工具连接远程服务器或者本地Linux系统
299 0
|
Cloud Native 网络安全 Go
SSH连接服务器后执行多条命令
SSH连接服务器后执行多条命令
504 0
|
网络安全
mac下通过ssh脚本实现免账号密码连接运服务器
mac下通过ssh脚本实现免账号密码连接运服务器
281 3