docs(troubleshooting): 260324 fail2ban Cursor 접속 밴 해제 및 설정 완화
- 대표님 IP(112.170.247.38) f2b-sshd-aggressive에서 밴 해제 - aggressive maxretry 3→10, bantime 7일→1일로 완화 - ignoreip에 성수 대역(192.168.0.0/24), 자택 IP 추가 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
e803e56dea
commit
ac15c4f972
@ -0,0 +1,95 @@
|
||||
---
|
||||
type: troubleshooting
|
||||
tags: [fail2ban, ssh, cursor, firewall, 51123]
|
||||
status: closed
|
||||
opened_date: 2026-03-24
|
||||
closed_date: 2026-03-24
|
||||
closed_reason: 밴 해제 + ignoreip 추가 + aggressive 설정 완화 적용 완료
|
||||
severity: high
|
||||
root_cause: Cursor Remote SSH 자동 재시도가 sshd-aggressive(maxretry=3)에 걸려 대표님 IP 7일 밴
|
||||
---
|
||||
|
||||
# 260324 51123 fail2ban Cursor 접속 밴 및 설정 완화
|
||||
|
||||
## 문제
|
||||
|
||||
- Cursor Remote SSH로 `ro-being.com:51123` 접속 시 `Connection timed out`
|
||||
- 대표님 PC 외부 IP `112.170.247.38`이 `f2b-sshd-aggressive` 체인에서 REJECT 상태
|
||||
|
||||
## 원인
|
||||
|
||||
- `sshd-aggressive` jail: **maxretry=3, findtime=300초, bantime=604800초(7일)**
|
||||
- Cursor Remote SSH는 접속 시 install script 전송 등으로 여러 번 인증 시도 → 3회 초과로 밴
|
||||
- 대표님 IP가 `ignoreip`에 없었음 (성수 이전 후 IP 변경)
|
||||
|
||||
## 조치
|
||||
|
||||
### 1. 즉시 밴 해제
|
||||
|
||||
```bash
|
||||
sudo fail2ban-client set sshd-aggressive unbanip 112.170.247.38
|
||||
```
|
||||
|
||||
### 2. ufw 허용 추가
|
||||
|
||||
```bash
|
||||
sudo ufw allow from 112.170.247.38 to any port 51123 proto tcp comment "trusted-admin-ssh-cursor-home"
|
||||
```
|
||||
|
||||
### 3. fail2ban 설정 완화 (`/etc/fail2ban/jail.d/ssh-custom.conf`)
|
||||
|
||||
**변경 전 → 변경 후:**
|
||||
|
||||
| 항목 | sshd (변경 없음) | sshd-aggressive (완화) |
|
||||
|---|---|---|
|
||||
| maxretry | 5 | **3 → 10** |
|
||||
| findtime | 600초 | **300초 → 600초** |
|
||||
| bantime | 86400초(1일) | **604800초(7일) → 86400초(1일)** |
|
||||
|
||||
**ignoreip 추가:**
|
||||
|
||||
| 추가 항목 | 사유 |
|
||||
|---|---|
|
||||
| `192.168.0.0/24` | 성수 사무실 내부 대역 |
|
||||
| `220.73.99.189` | 성수 사무실 외부 IP |
|
||||
| `112.170.247.38` | 대표님 자택 IP |
|
||||
|
||||
### 4. 현재 적용 설정
|
||||
|
||||
```ini
|
||||
[sshd]
|
||||
maxretry = 5
|
||||
findtime = 600
|
||||
bantime = 86400
|
||||
ignoreip = 127.0.0.1/8 ::1 192.168.219.0/24 192.168.0.0/24 112.146.113.214 220.85.143.128 220.73.99.189 106.254.1.37 112.170.247.38
|
||||
|
||||
[sshd-aggressive]
|
||||
maxretry = 10
|
||||
findtime = 600
|
||||
bantime = 86400
|
||||
ignoreip = (sshd와 동일)
|
||||
```
|
||||
|
||||
### 5. 재시작
|
||||
|
||||
```bash
|
||||
sudo systemctl restart fail2ban
|
||||
```
|
||||
|
||||
## 완화 근거
|
||||
|
||||
- Cursor Remote SSH는 접속 시 자동으로 install script 전송 + 여러 인증 시도를 수행
|
||||
- maxretry=3은 정상 사용자도 쉽게 걸림 (특히 IDE 원격 접속 도구)
|
||||
- bantime 7일은 유동 IP 환경에서 과도함 — 1일이면 브루트포스 억제에 충분
|
||||
- ignoreip에 관리자 IP를 빠짐없이 등록하는 것이 근본 대책
|
||||
|
||||
## 주의사항
|
||||
|
||||
- 대표님 IP가 유동 IP(통신사)일 경우 변경 시 다시 밴될 수 있음
|
||||
- IP 변경 감지 시: `sudo fail2ban-client set sshd-aggressive unbanip {IP}` + ignoreip 갱신
|
||||
- 밴 확인: `sudo iptables -L f2b-sshd-aggressive -n`
|
||||
|
||||
## 관련 문서
|
||||
|
||||
- [260226 SSH 브루트포스 차단 및 fail2ban 교정](./260226_51123_SSH_브루트포스_차단_및_fail2ban_교정.md) — 최초 fail2ban 설정
|
||||
- [AGENTS.md §7 Safety](/home/admin/AGENTS.md) — SSH 반복 접속 금지 규칙
|
||||
Loading…
x
Reference in New Issue
Block a user