
저도 급하게 서버에 파일을 올려야 하는데 FTP 업로드가 갑자기 안 돼서 식은땀을 흘렸던 적이 있어요. 연결은 되는데 파일만 안 올라가는 그 답답함, 겪어보신 분들은 아실 거예요. 원인을 하나씩 짚어보니 결국 수동 모드 설정 하나로 해결됐는데, 그걸 모르고 한 시간을 허비했죠. 이 글에서는 FTP 업로드가 안 될 때 확인해야 할 원인과 해결 방법 5가지를 순서대로 정리해 드릴게요.
1. FTP 업로드가 안 되는 주요 원인 한눈에 보기
FTP 접속 자체는 성공했는데 파일 업로드만 안 되는 경우, 원인은 크게 다섯 가지로 나뉩니다.
| 원인 | 증상 | 해당 해결 방법 |
|---|---|---|
| 능동/수동 모드 불일치 | 연결은 되나 파일 전송 시 멈춤 또는 오류 | 해결 방법 1 |
| 서버 폴더 권한 부족 | 550 Permission denied 오류 | 해결 방법 2 |
| 동시 연결 수 초과 | 421 Too many connections 오류 | 해결 방법 3 |
| 방화벽·백신 프로그램 차단 | 전송 시작 후 갑자기 끊김 | 해결 방법 4 |
| 저장 용량 초과 또는 계정 권한 없음 | 특정 폴더에만 업로드 불가 | 해결 방법 5 |
2. 해결 방법 1 — 수동 모드(Passive Mode)로 전환하기
FTP 업로드가 안 될 때 가장 먼저 시도해야 할 방법입니다. 실제로 업로드 오류의 절반 이상이 이 방법으로 해결됩니다.
능동 모드 vs 수동 모드 차이:
FTP에는 능동 모드(Active Mode)와 수동 모드(Passive Mode) 두 가지 연결 방식이 있습니다.
- 능동 모드: 서버가 클라이언트(내 PC)에 직접 연결을 시도 → 공유기나 방화벽이 이 연결을 차단하는 경우가 많음
- 수동 모드: 클라이언트(내 PC)가 서버에 연결을 시도 → 방화벽 영향을 덜 받아 훨씬 안정적
파일질라에서 수동 모드로 변경하는 방법:
- 파일질라 상단 메뉴 편집 > 설정 클릭 (단축키: Ctrl+I)
- 좌측 트리에서 연결 > FTP 선택
- 전송 모드 항목에서 수동(Passive) 선택
- 확인 클릭 후 FTP 재접속
- 파일 업로드 재시도
3. 해결 방법 2 — 파일 권한(Permission) 확인 및 수정
“550 Permission denied” 오류가 뜨면서 업로드가 안 된다면 서버 폴더의 권한 설정 문제입니다.
파일질라에서 권한 확인 및 변경 방법:
- 오른쪽(서버) 패널에서 업로드하려는 폴더를 우클릭
- 파일 속성 클릭
- 현재 권한 숫자 확인
올바른 권한 설정값:
| 대상 | 권장 권한값 | 의미 |
|---|---|---|
| 폴더(디렉토리) | 755 | 소유자 읽기·쓰기·실행, 그룹·기타 읽기·실행 |
| 일반 파일 | 644 | 소유자 읽기·쓰기, 그룹·기타 읽기만 |
| wp-config.php | 600 | 소유자만 읽기·쓰기 (보안 강화) |
- 권한값을 위 표에 맞게 수정 후 확인 클릭
⚠️ 주의: 폴더 권한을 777로 설정하면 업로드는 가능해지지만 보안상 매우 위험합니다. 문제 해결 후 반드시 755로 되돌리세요.
4. 해결 방법 3 — 동시 연결 수 줄이기
“421 Too many connections” 오류는 파일질라가 서버에 동시에 너무 많은 연결을 시도할 때 발생합니다. 대부분의 호스팅 서버는 계정당 동시 FTP 연결 수를 제한하고 있기 때문입니다.
파일질라 동시 연결 수 줄이는 방법:
- 파일질라 편집 > 설정 클릭
- 좌측 트리에서 연결 선택
- 최대 동시 전송 수를 1 또는 2로 변경
- 확인 클릭 후 재접속
사이트 관리자에서 개별 설정하는 방법:
- 파일 > 사이트 관리자 클릭
- 해당 사이트 선택 후 전송 설정 탭 클릭
- 동시 연결 수 제한 체크 후 최대값을 1로 설정
- 확인 클릭
5. 해결 방법 4 — 방화벽 및 백신 프로그램 예외 설정
파일 전송이 시작되다가 중간에 갑자기 끊기거나, 작은 파일은 올라가는데 큰 파일만 실패한다면 방화벽 또는 백신 프로그램이 전송을 차단하는 경우입니다.
Windows 방화벽 예외 설정 방법:
- Windows 시작 > 설정 > Windows 보안 클릭
- 방화벽 및 네트워크 보호 클릭
- 방화벽을 통해 앱 허용 클릭
- 설정 변경 > 다른 앱 허용 클릭
- 파일질라 실행 파일 경로 추가 (보통 C:\Program Files\FileZilla FTP Client\filezilla.exe)
- 확인 클릭
백신 프로그램 예외 설정 방법:
사용 중인 백신 프로그램(V3, 알약, 카스퍼스키 등)의 설정에서 파일질라를 신뢰할 수 있는 프로그램으로 등록하거나, FTP 사용 중 일시적으로 실시간 감시를 끄고 테스트해 보세요.
💡 팁: 백신을 끈 상태에서 업로드가 성공한다면 백신이 원인입니다. 업로드 완료 후 반드시 백신을 다시 켜고, 파일질라를 예외 목록에 추가하세요.
6. 해결 방법 5 — FTP 계정 권한 및 저장 용량 확인
위 방법을 모두 시도해도 해결되지 않는다면 FTP 계정 자체의 문제일 수 있습니다.
확인해야 할 항목:
- 호스팅 저장 용량 초과 여부 호스팅 관리 페이지에서 현재 사용 용량을 확인하세요. 용량이 꽉 찬 경우 업로드 자체가 불가능합니다. 불필요한 파일을 삭제하거나 호스팅 용량을 업그레이드해야 합니다.
- FTP 계정의 접근 가능 폴더 범위 확인 일부 호스팅에서는 FTP 계정별로 접근 가능한 폴더를 제한합니다. 호스팅 관리 페이지 > FTP 계정 설정에서 해당 계정이 업로드하려는 폴더에 접근 권한이 있는지 확인하세요.
- FTP 계정 잠금 여부 확인 비밀번호를 여러 번 틀리면 계정이 잠길 수 있습니다. 호스팅사 관리 페이지에서 계정 상태를 확인하거나, FTP 비밀번호를 재설정해 보세요.
7. 오류 메시지별 원인과 해결 방법
| 오류 메시지 | 원인 | 해결 방법 |
|---|---|---|
| 425 Can’t open data connection | 능동 모드 차단 | 수동 모드(Passive)로 전환 |
| 550 Permission denied | 폴더 쓰기 권한 없음 | 대상 폴더 권한을 755로 변경 |
| 421 Too many connections | 동시 연결 수 초과 | 최대 동시 전송 수를 1~2로 줄이기 |
| 426 Connection closed | 전송 중 연결 끊김 | 방화벽·백신 예외 설정 또는 수동 모드 전환 |
| 452 Not enough space | 서버 저장 용량 초과 | 호스팅 용량 확인 및 불필요 파일 삭제 |
| 530 Not logged in | 계정 권한 없음 또는 잠김 | FTP 계정 비밀번호 재설정 |
| Transfer timeout | 대용량 파일 전송 시간 초과 | 파일질라 설정 > 연결 타임아웃 시간 늘리기 |
8. 그래도 안 될 때 — 최후의 수단
위 방법을 모두 시도해도 해결이 안 된다면 아래 방법을 순서대로 시도해 보세요.
- FTP 대신 cPanel 파일 관리자 사용 — 호스팅 cPanel에서 직접 파일을 업로드합니다. FTP를 우회하는 방법으로, 긴급 상황에서 유용합니다.
- FTP 대신 SFTP로 전환 — 포트 22번을 사용하는 SFTP는 방화벽 영향을 덜 받습니다. (SFTP 설정 방법은 바로 아래 글에서 이어서 설명합니다.)
- 호스팅사 고객센터 문의 — 서버 측 문제일 가능성이 있습니다. 오류 메시지 전문을 복사해서 문의하면 빠르게 해결할 수 있습니다.