欢迎光临殡葬网
详情描述

1. Windows 防火墙设置(最简单有效)

入站规则设置

# 允许特定 IP 访问 1433 端口
New-NetFirewallRule -DisplayName "SQL Server Allow IP" -Direction Inbound `
  -LocalPort 1433 -Protocol TCP -Action Allow -RemoteAddress 192.168.1.100

# 拒绝其他 IP 访问
New-NetFirewallRule -DisplayName "SQL Server Block All" -Direction Inbound `
  -LocalPort 1433 -Protocol TCP -Action Block

2. SQL Server 配置管理器

修改 TCP/IP 属性

打开 SQL Server 配置管理器 展开 SQL Server 网络配置 → 协议 右键 TCP/IP → 属性 在 IP 地址 选项卡中:
  • 设置特定 IP 的 TCP 端口 为 1433
  • 将不需要的 IP 的 活动 改为 否
  • 将 IPAll 中的 TCP 动态端口 清空

3. 数据库引擎的登录限制

使用登录名的 CONNECT 权限

-- 创建登录名时限制访问
CREATE LOGIN [YourLogin] WITH PASSWORD = 'StrongPassword!'
GO

-- 为登录名授予连接权限(默认就有)
-- 如果要限制,可以通过拒绝 CONNECT SQL 权限

4. 使用数据库触发器(应用层限制)

创建登录触发器

CREATE TRIGGER [connection_limit_trigger]
ON ALL SERVER WITH EXECUTE AS 'sa'
FOR LOGON
AS
BEGIN
    DECLARE @ClientIP VARCHAR(50)
    SET @ClientIP = EVENTDATA().value('(/EVENT_INSTANCE/ClientHost)[1]', 'VARCHAR(50)')

    -- 允许的 IP 列表
    IF @ClientIP NOT IN ('192.168.1.100', '192.168.1.101')
    BEGIN
        ROLLBACK
        RAISERROR('IP %s 不允许访问数据库服务器', 16, 1, @ClientIP)
    END
END
GO

5. 使用 SQL Server Audit(监控和审计)

-- 创建服务器审计
CREATE SERVER AUDIT IP_Audit
TO FILE (FILEPATH = 'C:\Audits\')
WITH (ON_FAILURE = CONTINUE)
GO

-- 启用审计
ALTER SERVER AUDIT IP_Audit WITH (STATE = ON)
GO

-- 创建服务器审计规范
CREATE SERVER AUDIT SPECIFICATION IP_Audit_Spec
FOR SERVER AUDIT IP_Audit
ADD (FAILED_LOGIN_GROUP),
ADD (SUCCESSFUL_LOGIN_GROUP)
WITH (STATE = ON)
GO

6. 通过应用程序网关/防火墙

使用 Azure SQL Database

-- Azure SQL 有内置的防火墙功能
-- 在 Azure Portal 中设置防火墙规则:
-- 1. 服务器防火墙 → 添加客户端 IP
-- 2. 配置虚拟网络规则

-- 使用存储过程管理防火墙规则
EXEC sp_set_firewall_rule @name = N'AllowOffice', 
    @start_ip_address = '192.168.1.1', 
    @end_ip_address = '192.168.1.254'

最佳实践建议:

多层防护策略:

第一层:操作系统防火墙 第二层:SQL Server TCP/IP 配置 第三层:SQL Server 登录限制 第四层:应用程序权限控制

具体操作步骤:

-- 1. 查看当前连接信息
SELECT 
    session_id,
    connect_time,
    client_net_address,
    auth_scheme,
    host_name
FROM sys.dm_exec_connections
WHERE session_id = @@SPID

-- 2. 查看所有连接
EXEC sp_who2

-- 3. 查看登录信息
SELECT name, type_desc, is_disabled
FROM sys.server_principals
WHERE type IN ('S', 'U', 'G')

推荐的组合方案:

生产环境:使用 Windows 防火墙 + SQL Server 配置 高安全环境:增加登录触发器 + SQL Server Audit 云环境:使用云服务商提供的网络安全组和防火墙

注意事项:

  • 修改配置前务必备份现有设置
  • 测试时保留一个管理员 IP 的访问权限
  • 确保应用程序连接池配置正确
  • 定期审查和更新 IP 白名单
  • 使用 VPN 或专用连接进行远程访问更安全

选择哪种方法取决于你的具体需求:

  • 简单控制:使用 Windows 防火墙
  • 精细控制:结合多种方法
  • 云环境:使用云平台的安全组功能
相关帖子
各类应用如何通过产品设计,无形中加剧了用户的依赖与使用时长?
各类应用如何通过产品设计,无形中加剧了用户的依赖与使用时长?
对于有家庭负担的群体,2026年如何更有效地为住房进行专项储蓄?
对于有家庭负担的群体,2026年如何更有效地为住房进行专项储蓄?
陵水殡葬服务办理|办理白事服务,白事追悼会策划
陵水殡葬服务办理|办理白事服务,白事追悼会策划
陵水网站建设正规公司-苹果app开发,一站式服务
陵水网站建设正规公司-苹果app开发,一站式服务
房产抵押贷利率区间参考,结合房产条件判断当前利率是否合理
房产抵押贷利率区间参考,结合房产条件判断当前利率是否合理
二抵利率比一抵高一两个点,因为银行风险更大
二抵利率比一抵高一两个点,因为银行风险更大
漯河市殡葬电话|丧事一站式服务,殡葬悼念会服务
漯河市殡葬电话|丧事一站式服务,殡葬悼念会服务
未来几年,随着政策完善,对不缴社保公司的监管和惩处是否会更加严格?
未来几年,随着政策完善,对不缴社保公司的监管和惩处是否会更加严格?
大庆市殡葬一站式服务-殡礼拍摄,为家属解决后顾之忧
大庆市殡葬一站式服务-殡礼拍摄,为家属解决后顾之忧
过去的逾期记录会在信用报告中保留多久,到期后是否会自动消除?
过去的逾期记录会在信用报告中保留多久,到期后是否会自动消除?
德宏网站定制服务公司-软件系统开发,多年建站经验
德宏网站定制服务公司-软件系统开发,多年建站经验
如何查询所在城市支持身份证异地办理的具体服务网点地址?
如何查询所在城市支持身份证异地办理的具体服务网点地址?
新手必学汽车二押常识,掌握基础内容避开各类理解偏差与误区
新手必学汽车二押常识,掌握基础内容避开各类理解偏差与误区
平顶山市企业获客软件@商城网站开发设计,价格透明
平顶山市企业获客软件@商城网站开发设计,价格透明
绵阳市丧葬服务一条龙-殡葬追悼会服务,服务好
绵阳市丧葬服务一条龙-殡葬追悼会服务,服务好
湘潭市精准获客@网站定制,一站式建站服务
湘潭市精准获客@网站定制,一站式建站服务
鹤壁市网站优化推广-做网站公司,服务可靠
鹤壁市网站优化推广-做网站公司,服务可靠
咸宁市一条龙殡葬服务办理|殡仪服务,丧事录像
咸宁市一条龙殡葬服务办理|殡仪服务,丧事录像
在短视频时代,传统戏曲是如何通过短内容形式传播并获得新关注的?
在短视频时代,传统戏曲是如何通过短内容形式传播并获得新关注的?
海南模版网站建设-苹果手机app开发,模板建站
海南模版网站建设-苹果手机app开发,模板建站
宁德市公司网站建设@网站制作设计服务公司,收费标准
宁德市公司网站建设@网站制作设计服务公司,收费标准