日志管理看了下,24 小时大概有 3 万多条记录。大部分记录都在试 Administrator ,但显然我已经把 Administrator 禁用了。
之所以发现这个问题,是因为中午出去吃个饭,回来就发现账户被锁定无法登陆了。Windows 本地安全策略里面的锁定时间跟尝试次数已经改成 1 分钟 18 次了。虽然可以改大,但感觉改大之后只会让他们提高爆破强度...
有装 Zerotier ,但是有时候 Zerotier 会挂,所以还是保留了公网的端口。
现在的问题有两个,一个是会遇到账户被锁定,等一段时间才能登陆。第二个问题是虽然密码被破的概率不高,但是一直在被爆,总感觉不爽。由于 Windows 密码经常需要手动输入,不可能像一般网站密码搞得那么复杂。密码复杂程度一高,便捷性也就受影响了。万一密码出现在某个字典里,那麻烦就大了。
有没有什么办法可以兼顾安全性跟便捷性?
1
crab 2023-05-30 12:35:19 +08:00
ipsec 设置白名单 IP
|
2
TerranceL 2023-05-30 12:39:51 +08:00
ban2fail
黑名单 随机生成密码 |
3
txj 2023-05-30 12:41:08 +08:00 2
|
4
BH1SMB 2023-05-30 12:42:12 +08:00
我上次被爆破到无法登陆,然后不用的时候就关掉映射了。。。
|
5
yagamil 2023-05-30 12:43:49 +08:00
换了端口还这么多人爆破? 是有人专门要黑你这个服务器吧。。。
那种脚本小子的,一般都扫下默认,没有就下一个的,一般没必要耗死在一台机子上的。 或者你看看 ip ,是不是固定的一个访问的,直接 ban 掉就好了。 |
6
amorphobia 2023-05-30 12:54:40 +08:00
影射到了 X3389 端口?
|
7
kav2007 2023-05-30 13:08:03 +08:00
把 RDP 公网的端口映射关了。通过 ssh 隧道、端口映射,增加一层防护。
找一台 linux ,开启 ssh pub key 登录,禁用 ssh 密码登录,修改 ssh 默认端口。安装 fail2ban ,开启 ssh 防护。 需要访问 RDP 的时候,本地执行 ssh 端口映射。 |
8
acbot 2023-05-30 13:09:07 +08:00
系统或者是网关上加上 IP 段白名单
|
9
PHPer233 2023-05-30 13:11:38 +08:00 1
建议换个端口。你这个端口已经在扫描器的识别范围内,换个毫无规律的随机端口,应该就安静了。。。
|
10
gtheone1 2023-05-30 13:25:29 +08:00
我想问,不映射 3389 到外网直接访问,而是用 Zerotier 组网后再用 3389 ,这样更安全吧?
|
11
opengps 2023-05-30 13:26:47 +08:00
我教你个办法,你转发出去的端口只在需要时候开启公网
|
12
l4ever 2023-05-30 13:33:11 +08:00
买个堡垒机呗
|
14
yinmin 2023-05-30 13:49:48 +08:00
remote desktop 不能暴露在公网上。你可以试一下在服务器和客户机上都安装 stunnel ,然后启用双向证书认证,通过 stunnel 将服务器的 rdp 端口映射到客户机的 127.0.0.1:13389
stunnel 的 linux 版本和 windows 版本都可以用在生产环境,稳定性好,几乎不会出现软件挂掉的情况。 具体配置方式可以问 chatgpt 。 |
17
zmcity 2023-05-30 14:59:47 +08:00
找个支持云管理的路由器,有需要的时候再开端口。
|
18
githmb 2023-05-30 15:04:09 +08:00
|
19
Leexiaobu 2023-05-30 15:09:15 +08:00
后台在挂一个 ToDesk,zerotier 断了的时候,上 ToDesk 去解决
|
20
yhvictor 2023-05-30 15:13:04 +08:00
我记得 rdp 不是安全协议 不建议跑在公网。
套个 ssh 吧。 windows 自己好像也支持 ssh server 了,但我还没试。 |
21
Portalv 2023-05-30 15:13:27 +08:00
不要暴露到公网,server 上弄个 vpn ,通过 vpn 来访问服务。
|
22
newmlp 2023-05-30 15:13:54 +08:00
vpn 连到内网再远程控制
|
23
mohumohu 2023-05-30 15:38:22 +08:00
Zerotier 会挂的可以自建 zerotier 。
|
24
zhouu 2023-05-30 15:42:23 +08:00
我是家里运行 ss server ,通过 clash/surge 通过规则配置走 ss ,安不安全不好说,但还没遇到暴力破解访问的
|
25
luckyv2 2023-05-30 15:46:04 +08:00
自建 tailscale+ rustdesk
主要通过 tailscale+rdp 出问题就 rustdesk 还有一个内网备选的 nps 一直运行,上面都不行然后 nps 使用 tcp 进去内网然后 rdp 在调试 |
26
leefor2020 2023-05-30 16:18:40 +08:00
我是路由器上起一个 IPSec 的服务,这些服务都不暴露到公网
|
27
peasant 2023-05-30 16:25:41 +08:00
看到这个贴子想起来我的远程端口也在开着,打开事件查看器看了下,昨天中午到现在,登录失败的记录有 31000 条
|
28
wowpaladin 2023-05-30 16:26:15 +08:00
ipsec vpn 或者 ssl vpn
|
29
GoodRui 2023-05-30 16:28:25 +08:00 via Android
@yagamil 早就不是这样了,N 多服务器,不管什么服务,只要映射到公网,不几天就全是各种爆破。都无语了。服务器业务端口全都是 4 5 万以上的,基本无一幸免。现在就靠强密码或者密钥来硬抗。什么 IP 白名单都没法弄,因为可能要多人访问,来源也不固定。
|
30
hahiru 2023-05-30 16:31:03 +08:00
zerotier+tailscale ,双重保障。
|
33
huahsiung 2023-05-30 18:10:25 +08:00
我是加 vpn
但是还有其他两种简单方法 一个是微软的 rdp 协议强行验证信任的远程桌面证书,win10/server2012 以上都是 rdp over tls ,只是没有验证证书而已,第一次连接时候都要问你信不信任这个证书,强行验证这个可能要加域,不在域里面的无法连接,我没有试过。 还有一个,让扫描器扫描不到 rdp 服务就行了,一般扫描不到就不会爆破。传出的数据 xor 变化一下就行,实在不会加个 kcp-tunnel 也可以。会减少 99%的爆破 |
34
eudemonwind 2023-05-30 18:19:25 +08:00 via Android
理论上没事,win 系统只要一直跟着升级,开自动更新,在闹个 50 位的复杂密码,基本上爆不出来。
我一台 virjp 的小鸡 dd 了 win ,rdp 改了端口,在那放了一年,爆破日志十几个 G ,都没一点问题。还用的是默认 administrator 用户。实在不放心可以闹个火绒,管理下防火墙和出站连接,win 自带防火墙玩的溜的可以直接用自带防火墙替代火绒,搞个规则就行了。 |
35
paranoiagu 2023-05-30 18:21:03 +08:00 via Android
都 5 位数了,还一直被爆,这确实有点奇怪
|
36
PrinceofInj 2023-05-30 19:49:41 +08:00
映射成 22 试试看
|
37
callmebigfaceman 2023-05-30 19:50:54 +08:00
@paranoiagu 几位数都不行,我自己的也开了 5 位数端口。爆破从来没停止过,我用了笨方法,强密验证+登录短信告警。。目前还正常。🤣
|
38
jianyang 2023-05-30 21:06:18 +08:00
设置个简单的密码方便自己、防火墙设置入站 IP 拒绝小黑子
|
39
tivizi 2023-05-30 21:11:05 +08:00
我服务器目前都用的是 TCP over HTTP 的代理端口通过 HTTPS 映射到本地访问,很舒服。或者稍微复杂点上 WireGuard 之类的 VPN
|
40
lovelylain 2023-05-30 21:13:12 +08:00 via Android 1
运行 frps 和 frpc ,通过 stcp
|
41
feaul 2023-05-30 21:26:17 +08:00
用 vpn ,WireGuard 最近用的不错,设置只允许 WireGuard 的客户端的地址可以访问。
|
42
fox0001 2023-05-30 21:36:41 +08:00 via Android
使用 ssh 作为安全网关。要远程桌面时,使用 ssh 登录并代理 3389 端口。
|
43
dode 2023-05-30 22:00:54 +08:00
1. RDP 开启白名单,只允许固定 IP 连进来
2. 电脑安装 WireGuard 套起来保护 RDP 3. win10 以上电脑安装 sshd 服务,设置好仅密钥登录,套起来保护 RDP |
44
leloext 2023-05-30 22:03:55 +08:00
vpn 到内网再连,不要在公网上暴露。
BTW:映射到 5 位端口了还被爆破,是不是有点异常? |
45
yagamil 2023-05-30 23:25:51 +08:00
爆就爆呀,换端口,用个奇异的用户名+定期改密码。这样也会锁定吗?
|
46
Xbol 2023-05-30 23:34:01 +08:00 1
之前搞了一个脚本,同一个 ip rdp 登陆几次失败就加防火墙 ip 黑名单。。每天看着黑名单 ip 越来越多有股成就感
|
47
germain 2023-05-31 01:36:48 +08:00 via iPhone
3389 有很多 vulnerability 绝对不要放公网
|
48
mingl0280 2023-05-31 08:02:10 +08:00 via Android
被映射的端口用 iptables 在网关或防火墙上加规则,只允许五分钟内尝试三次,否则就拉永久黑名单。非常有效。
|
49
Timk 2023-05-31 08:13:26 +08:00
vpn 连回家最稳了
|
50
liansishen 2023-05-31 08:20:11 +08:00
我一开始也是被爆破的没法正常登录,后来直接开启了白名单
客户端 IP 变动了就 rustdesk 连上去加一下白名单,基本上加一次能用好几天,也不算太麻烦了 |
51
ChenSino 2023-05-31 08:51:07 +08:00
把外网的那个服务器的端口限制指定 ip 登录
|
52
openbsd 2023-05-31 09:16:23 +08:00
遇到同样的问题,虽然密码不怕被爆,但是日志看着难受
有条件的话,关掉端口,前面挡个防火墙开 VPN 改端口没啥用,动态 IP+63726 这种随机端口都每天几万条日志,触目惊心 |
53
fbichijing 2023-05-31 09:19:33 +08:00
如果能够设置密钥+密码登录的话,我觉得很难暴力进去吧。
或者你可以配置防火墙加一个 IP 白名单,只是动态 IP 的原因你得不时去更新配置,比较麻烦。当然,你可以通过许多方式去改善这个行为。 |
54
yqlian 2023-05-31 09:36:20 +08:00 3
实测:系统内使用一个特殊的用户名(非 Administrator )+一个简单的密码(短至 6 位)+非标准端口,就足矣了。放在公网上几年都没有出过问题。反而同网一台使用 Administrator 用户+复杂密码+标准端口,被黑客撞击进来了。网络专家说用工具扫描一台机器的几万个端口也就几秒钟。可见端口并不是最有效的阻挡因素,第一步,非 Administrator 的特殊用户名才是最有效的。
|
55
ALLENi 2023-05-31 09:41:37 +08:00
我 frp 用非管理员的用户名 加 5 位端口 加 大小写数字符号的密码 稳定一年多 爆破我就不知道了 不会看日志。
|
56
huangzhe8263 2023-05-31 10:18:45 +08:00
knock 敲门
额外开一个端口,接受指定 uuid, 若是符合,则记录 ip ,并为该 ip 开启需要端口的权限 设定一个超时时间,超时后关闭该权限 每次访问前先手动访问额外端口,后再进行 rdp 连接 |
57
cy18 OP @huangzhe8263 #56 敲门感觉比较方便,有啥推荐的工具么?
|
58
hermanarturo 2023-05-31 10:42:47 +08:00
先把内网 3389 映射到公网高位端口。 然后设置主路由一旦收到公网 3389 端口扫描,就把对方 ip 拉黑。
|
59
5200 2023-05-31 10:48:26 +08:00
@hermanarturo #58 拉不完的,之前试过,都拉黑了上百个 IP 。后面放弃了使用 VPN
|
60
hermanarturo 2023-05-31 10:53:48 +08:00
@5200 ip ban 一天就够了,目的不是拉黑,是让他们扫描到普通低位端口的时候就 ban 了他们,这样大概率不会发现高位的 3389 ? 我的 blacklist 基本上就是一两百的长度
|
61
realpg 2023-05-31 10:59:32 +08:00
一般远程我都限制本市 IP 本运营商 IP 访问
基本三大运营商正规宽带的 IP 段很固定 |
62
ihciah 2023-05-31 12:00:12 +08:00 via iPhone
我这边的 shadow-tls v3 也可以拿来搞这个。
服务端对客户端的 client hello 有鉴权,通过后转发至配置的后端 A ,否则转发至后端 B 。 |
63
ghjexxka 2023-05-31 12:40:04 +08:00 via iPhone
zerotier 都能接受的话,那用 v2ray 套一层加密后再转发应该也行
|
64
ghjexxka 2023-05-31 12:42:01 +08:00 via iPhone
zerotier 都能接受的话,那用 v2 ,ray 套一层加密后再转发应该也行
|
65
nightwitch 2023-05-31 13:05:18 +08:00 via Android
不建议暴露 rdp 到公网,历史上多次出现鉴权和远程代码执行这种严重安全漏洞
|
66
yuchenr 2023-05-31 14:20:48 +08:00
```
Import-Module NetSecurity $startTime = Get-Date $startTimeStr = $startTime.AddMinutes(-5).ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.FFFZ") $failedAttemptsThreshold = 3 $Query = [xml]@" <QueryList> <Query Id="0" Path="Security"> <Select Path="Security">*[System[(EventID=4625) and TimeCreated[@SystemTime>='$startTimeStr']]]</Select> </Query> </QueryList> "@ function Get-IPAddresses { param ( [xml]$query, [int]$maxEvents ) $events = Get-WinEvent -FilterXml $query -MaxEvents $maxEvents if (-not $events) { Write-Host "未获取到任何日志。脚本将退出。" return } $events | ForEach-Object { $_.Properties[19].Value } } $failedIPs = Get-IPAddresses -query $Query -maxEvents 100 | Group-Object | Where-Object { $_.Count -gt $failedAttemptsThreshold } | Select-Object -ExpandProperty Name -Unique $uniqueIPs = Get-IPAddresses -query $Query -maxEvents 100 | Select-Object -Unique $filteredFailedIPs = $failedIPs | Where-Object { $_ -notmatch '^192\.168\.' -and $_ -notmatch '^10\.' -and $_ -notmatch '^172\.(1[6-9]|2[0-9]|3[0-1])\.' } # 定义要过滤的特定 IP 地址列表 $specificIPs = @("192.168.1.100", "10.0.0.5") # 过滤掉特定 IP 地址 $filteredFailedIPs = $filteredFailedIPs | Where-Object { $_ -notin $specificIPs } $ruleName = "BlockIPs" $filteredFailedIPs = $filteredFailedIPs | Sort-Object # 获取现有的防火墙规则 $existingRule = Get-NetFirewallRule -DisplayName $ruleName if ($existingRule) { # 获取现有的远程地址过滤器 $existingAddressFilters = Get-NetFirewallAddressFilter -AssociatedNetFirewallRule $existingRule # 获取现有的远程地址 $existingRemoteAddresses = $existingAddressFilters | Select-Object -ExpandProperty RemoteAddress $existingRemoteAddresses = @($existingRemoteAddresses) $existingAddressFilters = @($existingAddressFilters) # 添加新的地址 $newRemoteAddresses = $existingRemoteAddresses + $filteredFailedIPs | Select-Object -Unique # 更新远程地址过滤器 $existingAddressFilters | Set-NetFirewallAddressFilter -RemoteAddress $newRemoteAddresses } else { Write-Host "规则 $ruleName 不存在。" New-NetFirewallRule -DisplayName $ruleName -Direction Inbound -Action Block -Protocol Any -RemoteAddress $filteredFailedIPs -RemoteAddressType "IP" } ``` |
67
playboy0 2023-05-31 14:53:27 +08:00
可以把国外 ip 都封了
|
68
lx0758 2023-05-31 15:21:32 +08:00
我去, 刚刚看了下我的, 也是一堆审核失败..........我也换了端口的
|
69
Jxnujason 2023-05-31 15:32:28 +08:00
端口限 ip ?我也被爆破过,后来用的时候就上后台开放一下 IP ,用的是 frps
|
70
zhj9709 2023-05-31 16:59:24 +08:00
@hahiru 我 zerotier+tailscale 一起用明显不如用单个的,不知道是不是一起用有干扰,ping 丢包率都高点。
|
72
asuraa 2023-05-31 17:13:28 +08:00
加入域环境 用证书登陆
|
73
iphoneXr 2023-05-31 17:31:07 +08:00
企业都是上 vpn 和堡垒机 ,任选其一不就行了。
|
74
Arthur2e5 2023-05-31 17:45:49 +08:00
@yinmin RDP 一样有 TLS 加密,再套一层 TLS… duh 。也不是不行。
就,一样是让爆破哥难受,fail2ban 等效功能也有啊 https://github.com/DigitalRuby/IPBan 。或者说,爆破哥真的是什么大问题吗? @yhvictor Windows XP SP3 就有 Network Level Authentication ,你在喝什么老酒啊? TLS 强制也有注册表配置 https://serverfault.com/a/128943 连接时候点一个自签名证书信任,和 ssh 信任 host key 是一个道理。 |
75
fyfy560 2023-05-31 18:46:26 +08:00
可以试试 IPBan ,设置成服务,自启动
|
76
snsqq 2023-05-31 19:33:18 +08:00 via iPhone
用系统自带的防火墙 限制特定 ip 访问
|
77
documentzhangx66 2023-05-31 20:24:04 +08:00 1
先给当地 IP 段做个白名单,直接避免 99.9999% 的攻击。
再来个 wail2ban 。 无敌。 |
78
yankebupt 2023-05-31 22:31:55 +08:00
@cy18 以段为单位,出现 4 次非法登录的直接 ban C 段,出现 32 次非法登录的直接 ban B 段……
看他有多少个 ip 吧. |
79
cy18 OP @yankebupt #78 自动封 IP 有啥推荐的工具不?
封 IP 有一个局限,我另外还有一台没有公网 IP 通过 frp 转发的电脑,最近也被攻击了。frp 进来连接全是中继服务器的 IP ,没法封。 至于其他各种加密、转发、VPN 之类的,都需要额外装工具啥的,丧失了便捷性。 |
80
f0rger 2023-05-31 23:20:14 +08:00 via iPhone
一直以为没事情,看前面说的,我也看了一下我的日志,现在还有尝试登录的。我是没启用超管,用的另外的账号和密码
|
81
nicevar 2023-05-31 23:53:52 +08:00
@paranoiagu 换 5 位数有啥用,对扫描程序来说几秒钟的事,意义不大
|
82
someonedeng 2023-06-01 00:24:16 +08:00
白名单吧,爆破还好,就怕漏洞精准打击
|
83
angryfish 2023-06-01 08:41:26 +08:00
设置防火墙,只允许固定 ip 访问。比如家里 ip 会变动,就允许一段 /24 的 ip 访问,公司的直接固定 ip 。基本可以了
|
84
yy306525121 2023-06-01 08:49:58 +08:00
我是防火墙设置了只允许国内 IP 访问之后就好了, 因为之前被扫的时候发现全是国外的 IP 。
|
85
cy18 OP @yy306525121 #84 我看了下日志,都是国内的 IP
|
86
cy18 OP @someonedeng #82 这个确实,有点吓人
|
87
summersun2021 2023-06-01 11:52:02 +08:00
@leloext vpn 到内网是不是也得至少开一个端口,因为家宽 ip 都是不固定的,需要用 ddns 来获取更新,那就必须要一个域名+开放端口。
|
88
ZeroDu 2023-06-01 13:25:00 +08:00
求问怎么查看登录记录,那个
|
89
photon006 2023-06-01 13:42:24 +08:00
@cy18
试用 IPBan 确实不行,搭配 frp 失效,只适用公网 ip 端口转发的情况,我的 frpc 运行在 openwrt ,IPBan 获取的 ip 就是路由器内网 ip ,不属于公网 ip ,忽略不做任何操作 2023-06-01 13:26:57.8466|INFO|IPBan|Ignoring failed login for internal ip address 192.168.2.1 because ProcessInternalIPAddresses is false |
90
photon006 2023-06-01 13:44:54 +08:00
我平常的习惯不用 Administrator ,用自定义用户,这能避免不少攻击,相当于双层密码。
|
91
leloext 2023-06-01 14:04:46 +08:00
@summersun2021 对的,ddns 算是(我自己的)常规操作了,用 vpn 来保护远程桌面,但要需确保 vpn 已知的漏洞得到修复。
|
92
cdswyda 2023-06-01 14:47:35 +08:00
想个办法,外网映射在自己用的时候才开,不要一直开着。
|
93
EvineDeng 2023-06-01 15:47:33 +08:00
我在路由器上防火墙限制了 RDP 端口仅限本省电信 IP 访问,RDP 的连接记录中一年多来,在事件查看器中只有自己连接的记录。
|
96
ddd270700 2023-06-01 21:38:06 +08:00 via Android
@huangzhe8263
大佬,有相关的文章链接么? |
97
AIyunfangyu 2023-06-30 10:50:37 +08:00
可以了解下我们的防御 合作交流 V:with--tea
|
98
wslzy007 2023-07-22 17:02:28 +08:00
|
99
asdgsdg98 2023-07-28 15:57:23 +08:00
基本都是国外 ip 打来的,白名单加自己省份的 ip
|
100
anciusone 2023-07-31 23:58:12 +08:00
我用了 RDPGuard 保护 RDP 和 FTP 端口,自动封 IP 。找不到资源的话,踢我。
|