之前看到 SSH 好像被异地登录,netstat 和 ps 去看,有一些奇怪的东西,然后一扫就这样了。现在正在看怎么杀。
/tmp/min: Multios.Coinminer.Miner-6781728-2 FOUND
/tmp/vTtHH1: Multios.Coinminer.Miner-6781728-2 FOUND
/tmp/meonga: Unix.Trojan.Agent-37008 FOUND
/tmp/disable: Unix.Malware.Agent-6964935-0 FOUND
/usr/bin/ps: Unix.Trojan.Agent-37008 FOUND
/usr/bin/vphefa0: Unix.Malware.Agent-6958219-0 FOUND
/usr/bin/chgf: Unix.Trojan.Agent-37008 FOUND
/usr/bin/vphebce: Unix.Malware.Agent-6936468-0 FOUND
/usr/bin/vphefa2: Unix.Malware.Agent-6963626-0 FOUND
/usr/bin/vphefa3: Unix.Malware.Agent-6967124-0 FOUND
/usr/bin/masscan: Unix.Malware.Agent-6889450-0 FOUND
/usr/bin/ti0bjinogi: Unix.Malware.Agent-6684905-0 FOUND
/usr/bin/netstat: Unix.Trojan.Agent-37008 FOUND
/usr/sbin/lsof: Unix.Trojan.Agent-37008 FOUND
/usr/sbin/ss: Unix.Trojan.Agent-37008 FOUND
1
arloor 2019-06-11 10:28:33 +08:00 via iPad
trojan?
|
2
titanium98118 2019-06-11 10:31:26 +08:00
一直都是禁止密码登录的,但是否足够?
|
3
dorothyREN 2019-06-11 10:32:51 +08:00 1
我用的 google 二次验证
|
4
VANHOR 2019-06-11 10:34:38 +08:00
+1
|
5
brust 2019-06-11 10:35:21 +08:00 1
google 二次验证是什么意思
|
6
msg7086 2019-06-11 10:38:37 +08:00
怎么杀?重装就杀了。
如果不关密码登录的话,那至少把 fail2ban 装上吧。 |
7
qwerthhusn OP @titanium98118 应该没问题吧,只要控制好私钥别泄露就行。比如别人问你要 Key 让你能登他的,你别把公钥和私钥都给他就行。我看现在推荐的是 ED25519 256 位的密钥,不过大部分人(包括我)还是在用那种 RSA2048 位的。
|
8
qwerthhusn OP @msg7086 要干净的话,那就重装系统呗,恨不得格盘重建 RAID,幸亏里面没太多数据,而且都是容器好备份迁移。
|
9
pxw2002 2019-06-11 10:46:44 +08:00 via Android
家里公网 ip 只有后三位会变
服务器只允许我的 ip 访问所有端口 其他 ip 只允许 80.443 端口 |
10
HuasLeung 2019-06-11 10:46:45 +08:00 via Android
量子计算没取得重大突破之前,强密码口令就 ok,暴力破解是极其困难的
|
11
jackmod 2019-06-11 10:46:52 +08:00
换端口,关密码,还可以考虑只通过代理访问(
|
13
qwerthhusn OP @brust libpam-google-authenticator 在机器上装一个组件,配置上 Google 认证信息,然后登录的时候去 Google 验证一把(通过手机什么的)。这种只能用在个人的在国外的服务器。。。。我猜的
|
14
mostkia 2019-06-11 11:04:38 +08:00
我一直图方便没有关密码登录,每次登陆都有上万的爆破记录。。
密码的话 18 位密码。。[狗头]所以还是大致放心的。从 ssh 爆破基本没什么可能性。 |
15
2exploring 2019-06-11 11:14:17 +08:00
我只允许 key + 2FA 登录,并且开 fail2ban。
|
16
webdisk 2019-06-11 11:17:23 +08:00
经过一层 VPN 后只允许密钥登陆
|
17
shilyx 2019-06-11 11:22:43 +08:00
每次登录都能发现几万次的失败的登录尝试
换了 ssh 端口 降低到了几十次非法尝试 |
18
qwerthhusn OP @shilyx 大部分肉鸡只看 22,不过也有一些肉鸡是玩端口扫面的。我之前也遇到过
|
19
Caan07 2019-06-11 11:28:07 +08:00 1
换端口;
密钥加强再加密登录; 禁止账户密码登录; 因为不是固定 IP,不然我就仅限指定 IP 了。 |
20
wenzhoou 2019-06-11 11:30:42 +08:00 1
自从我换了 ssh 端口了以后就再也没有被爆破过。
结论,换端口足够了。 |
21
pxw2002 2019-06-11 11:40:05 +08:00 via Android 9
还有个办法
linux 换成 3389 win 换成 22 这样就好多了 就算发送登录请求也没用 |
22
qwerthhusn OP @pxw2002 Good idea
|
23
playnoa 2019-06-11 11:48:50 +08:00 via Android
只允许秘钥登录,加上 fail2ban,一次不对就永久封 IP
|
25
crazytroll 2019-06-11 12:18:41 +08:00 via iPhone
@msg7086 非常同意 fail2ban 挂上 再换个端口
|
26
Rworld 2019-06-11 12:20:11 +08:00
有固定 IP 就防火墙限制 没有就使用 google 二次验证吧。
|
27
anubu 2019-06-11 12:24:02 +08:00 2
常规操作:
换端口; 禁止 root 登录; fail2ban 安全且方便: 密码+MFA 更安全: 有密码的密钥 可选: 如果可能,限制登录 IP |
28
sariya 2019-06-11 12:38:00 +08:00 via Android
如果要求不高如楼上说的,换高位端口足矣,我的换了之后直接从几万降到 0。。。有需要再加上 RSA、禁密码
|
30
Wyane 2019-06-11 12:42:29 +08:00
学习一下, 一直没把这个当回事,密码一直用的最简单的。。
|
32
mmtromsb456 2019-06-11 12:47:25 +08:00
其实使用
|
33
wtks1 2019-06-11 12:50:17 +08:00 via Android
fail2ban 装上,设置最大失败两次,一分钟扫描一次,封禁时间十几年,基本就没啥事了
|
34
mmtromsb456 2019-06-11 12:50:47 +08:00
@mmtromsb456 #32 手快一下子发出去了...
其实使用如下参数就已经很足够了 PermitRootLogin prohibit-password Port 8888(替换成你想要的端口) 必要时 whitelist 即可 |
35
azh7138m 2019-06-11 12:55:49 +08:00 1
走跳板姬呗,我买了一台阿里云华东,装好 mosh,每台机器都配跳板姬的密钥登录,我只要登录跳板姬就好,美滋滋。
当然,22 我是不开的。 |
37
wenzhoou 2019-06-11 13:28:24 +08:00 via Android
另外禁止 root 登录基本上是常识。
|
38
realpg 2019-06-11 13:39:24 +08:00
这还用建议?
首先,不用 root 是常识了吧 ubuntu 之类的发行版 压根就不给你 root 密码,都是自己 zuo 才能弄出来 其次,服务器的任何密码都得设复杂点也是常识把 再次,服务器 ssh 不放默认端口上就能减少大量网络流量和 CPU 负载开销也算是个准常识了吧 |
39
Navee 2019-06-11 13:50:34 +08:00 via iPhone
开机第一件事:安装 fail2ban
|
40
qwerthhusn OP @azh7138m 用跳板机的话有一个小问题就是,SFTP 操作比较麻烦
|
42
qwerthhusn OP @ohmyzsh 因为 3389 是 win 默认的远程桌面端口,肉鸡扫到 3389 可用,可能就试图连 Windows 那一套,肯定连不上的,殊不知其实是个 ssh 端口
|
43
yinzhuoqun 2019-06-11 14:15:00 +08:00 via Android
@wenzhoou 端口换掉,再加 fail2ban,基本没有可疑登录
|
44
catcalse 2019-06-11 14:42:27 +08:00
@qwerthhusn 自己欺骗自己吗?
|
45
liangzi 2019-06-11 14:50:58 +08:00 via Android 1
曾经遇到过可疑登录 IP 地址指向国内两大云服务商 只有一个来自美国 我就呵呵了
|
46
oxoxoxox 2019-06-11 14:59:17 +08:00
换端口+fail2ban,就足够了,即使打开密码登陆,也不怕
|
47
wenzhoou 2019-06-11 15:11:27 +08:00 via Android
@yinzhuoqun 如果说要加一个屏障的话,我希望是 2FA。
|
48
nicevar 2019-06-11 15:15:51 +08:00
光密码复杂有什么用,你得限制登陆尝试次数
另外你改 3389 的做法其实也是掩耳盗铃,真的骗你自己,就算小白 telnet 一下都能识别 |
49
ucaime 2019-06-11 15:45:33 +08:00
|
51
qwerthhusn OP @ucaime 国内有什么厂家能搞这种吗?因为 server 在国内,我刚搜了一下,没有什么
|
52
aborigine 2019-06-11 17:07:21 +08:00
其实一般换个端口就好很多了
|
53
xpresslink 2019-06-11 17:13:43 +08:00
一般情况下 SSH 端口号都是换成 5 位数,直接用 IP 白名单+公钥又省事又安全。
再严格一点加个谷歌双因子认证也就足够了。 |
55
fvckDaybyte2 2019-06-11 17:57:35 +08:00 via iPhone
@qwerthhusn 现在端口扫描都带检测服务功能了……
|
58
webshe11 2019-06-11 19:17:09 +08:00
换端口 + 只允许密钥登录 + fail2ban 路过
|
59
Hardrain 2019-06-11 19:42:35 +08:00 via Android
赞同所有用 Pub key(并停用键盘交互)的回复
如果用 Google authenticator 之类的 TFA 则更好 反对一切改端口的回复,这是没用的方法。防得了大批量扫描,完全不能防御具有针对性的攻击 |
61
runtu2019 2019-06-11 22:09:21 +08:00
一般是部署 ssl 加密代理在上面进行访问,密钥一都要都在 2048 以上,绝不开放 ssh 端口,暴力破解 ssh 虽然破解不了强口令和密钥,但是被恶意的暴力破解特别占 cpu,浪费资源。
|
62
Aixtuz 2019-06-11 22:37:27 +08:00
我用的 Krypton,禁止密码 + 手机端允许密钥才能连上。
|
63
nicevar 2019-06-11 22:49:42 +08:00 1
上面那些说 linux 换成 3389 的太天真了,还有一堆人赞成这个做法,你不做其他处理是个端口扫描程序根据返回信息就能判断出来你是不是 ssh
|
64
daibingsong 2019-06-11 23:03:53 +08:00
@pxw2002 666
|
66
xrlin 2019-06-12 00:47:35 +08:00
系统刚装好就屏蔽密码登录了,只允许 key 登录。
|
68
xmi 2019-06-12 09:06:46 +08:00
新建一个和 root 一样权限的账户然后把 root 账户登陆禁用掉
|
69
c4f36e5766583218 2019-06-12 09:46:40 +08:00
@pxw2002 #21 好像没用的,nmap 可以探测系统版本的吧
|
71
pxw2002 2019-06-12 15:28:41 +08:00 via Android
@sodadev 我当时给电信客服打电话,说我家里有老人,小孩儿需要安装远程监控,需要公网 IP 连接,然后就给了
|
72
qwerthhusn OP @pxw2002 这个是“借口”还是真的?我家用的 360 摄像机,没有公网也能正常用啊
|
73
Cu635 2019-06-12 16:50:34 +08:00
@qwerthhusn
其实已经是还没过去几年的事情了,稍微旧一点的这种家庭监控设备就需要公网 ip 才能正常运作。现在没有公网 ip 也能正常用的消费级家庭监控设备是很新的。 @playnoa 一般认为不应该记密码…… |
74
qbqbqbqb 2019-07-05 21:45:15 +08:00
@qwerthhusn 随便什么服务器都可以用,Google Authenticator 是纯离线的动态密码,完全不需要连接 Google 服务。
|
75
qbqbqbqb 2019-07-05 21:49:21 +08:00
@qwerthhusn ssh,scp,sftp 都有一个-o ProxyJump=<username>@<host>:<port>的参数可以跨越跳板机,还可以通过编写.ssh/config 文件自动跨越多层跳板机,并不麻烦。如果是使用 Windows 上的各种 GUI 客户端,里面一般也会有填写 Gateway host/Jump host 的地方。
|