大大小小 ACTIVITIES

대대소소의 소식을 전합니다.

ABOUT US

블로거 대대소소가 운영하는 블로그입니다. 다양한 정보와 인사이트를 공유합니다.

INNOVATION

최신 기술과 트렌드를 통해 혁신적인 컨텐츠를 제공합니다.

CONTENT

유용하고 흥미로운 컨텐츠를 지속적으로 업데이트합니다.

Synology NAS SSH 접속 가이드

안녕하세요! 저도 처음 Synology NAS 샀을 때 SSH가 뭔지도 몰랐거든요 😅 근데 이거 한 번 알아두면 진짜 유용해요. 웹 인터페이스로 안 되는 고급 설정들을 할 수 있어서, NAS를 제대로 활용하려면 꼭 알아야 하는 기능이에요.

처음에는 "명령어 입력한다"는 말 듣고 엄청 겁먹었는데, 막상 해보니까 생각보다 간단하더라고요! 제가 헤맸던 부분들 다 포함해서 정리해봤으니까, 이 글 하나면 SSH 접속은 완전 정복하실 수 있을 거예요 💪

📋 목차 (급한 분들은 3번부터 보세요!)

  1. SSH가 뭐고 왜 필요한가요?
  2. 사전 준비사항 체크리스트
  3. Synology에서 SSH 켜기 (제일 중요!)
  4. Windows에서 SSH 접속하기
  5. Mac에서 SSH 접속하기
  6. 관리자 권한 얻기 (sudo)
  7. 자주 발생하는 오류 해결법
  8. SSH 보안 강화 팁

1. 🤔 SSH가 뭐고 왜 필요한가요?

SSH란? (쉽게 설명해드릴게요)

SSH(Secure Shell)는 쉽게 말하면 **"집에서 회사 컴퓨터를 원격으로 조종하는 것"**이라고 생각하시면 돼요. Synology NAS에 명령어를 직접 입력할 수 있게 해주는 거죠.

웹 브라우저로 접속하는 DSM(DiskStation Manager)도 있는데, 왜 굳이 SSH를 써야 할까요?

제가 실제로 SSH를 쓰는 이유들:

  • 🗄️ 데이터베이스 직접 설정 (MariaDB, MySQL 등)
  • 🐳 Docker 컨테이너 고급 관리 (CLI가 훨씬 편해요)
  • 📁 파일 권한 문제 해결 (웹에서 안 될 때 진짜 유용)
  • ⚙️ 시스템 설정 파일 직접 수정
  • 🔍 로그 파일 실시간 확인 (문제 해결할 때 필수)

처음에는 "그냥 웹에서 클릭클릭하면 되는데..." 싶었는데, 막상 써보니까 SSH 없으면 못 하는 게 너무 많더라고요!


2. ✅ 사전 준비사항 체크리스트

시작하기 전에 이것들만 확인하세요!

필수 준비물:

  • ✅ Synology NAS (당연히 있으시겠죠? ㅎㅎ)
  • ✅ 관리자 계정 정보 (ID/비밀번호)
  • ✅ 같은 네트워크에 연결된 컴퓨터
  • ✅ 인터넷 연결 (당연한 얘기지만...)

알아두면 좋은 정보:

  • 📌 Synology IP 주소 (나중에 찾는 방법 알려드릴게요)
  • 📌 관리자 계정명 (보통 admin이나 처음 만든 계정)
  • 📌 SSH 포트 번호 (기본값은 22번)

⚠️ 주의사항: 관리자 비밀번호를 까먹으면 진짜 난감해요... 저는 메모장에 적어뒀다가 한 번 날려먹어서 초기화한 적 있거든요 😭 꼭 안전한 곳에 보관하세요!


3. 🔑 Synology에서 SSH 기능 켜기

이 부분이 진짜 중요해요! SSH는 기본적으로 꺼져 있거든요.

3-1. Synology DSM 접속하기

  1. 웹 브라우저를 엽니다 (크롬, 엣지, 사파리 뭐든 상관없어요)
  2. 주소창에 다음 중 하나를 입력:

💡 IP 주소 모를 때 찾는 꿀팁:

  • Windows: 공유기 관리 페이지에서 연결된 기기 확인
  • Synology Assistant 프로그램 설치 (공식 홈페이지에서 다운)
  • 스마트폰으로 "DS Finder" 앱 설치해서 찾기
  1. 관리자 계정으로 로그인

3-2. SSH 서비스 활성화하기

자, 이제 진짜 중요한 단계예요!

  1. DSM에 로그인한 상태에서 좌측 상단 메뉴 (9개 점 모양) 클릭
  2. 제어판 (Control Panel) 찾아서 클릭
  3. 왼쪽 메뉴에서 터미널 및 SNMP 클릭
    • 못 찾겠으면 검색 기능 써보세요!
  4. 터미널 탭을 선택
  5. ✅ SSH 서비스 활성화 체크박스를 켭니다
  6. 포트 번호는 22 그대로 두세요 (바꿔도 되긴 한데 기억하기 귀찮아요)
  7. 하단의 적용 버튼 꼭 누르세요!

🎯 제가 했던 실수: 처음에 적용 버튼 안 누르고 그냥 창 닫았다가 SSH 안 되서 한참 헤맸어요 😅 꼭 적용 버튼 누르고 확인하세요!


4. 💻 Windows에서 SSH 접속하기

Windows 사용자분들! 크게 두 가지 방법이 있어요.

방법 1: 명령 프롬프트/PowerShell 사용 (권장!)

Windows 10/11이면 별도 프로그램 설치 필요 없어요!

4-1. 명령 프롬프트 열기

  1. Windows 키 누르기 (키보드 좌측 하단)
  2. cmd 또는 PowerShell 입력
  3. 명령 프롬프트 또는 Windows PowerShell 클릭

4-2. SSH 접속 명령어 입력

검은 창이 뜨면 다음과 같이 입력:

 
 
bash
ssh 관리자계정명@IP주소

실제 예시:

 
 
bash
ssh admin@192.168.0.100
```

💡 **명령어 설명:**
- `ssh`: SSH 접속하겠다는 명령
- `admin`: 제 관리자 계정명 (여러분 거는 다를 수 있어요)
- `@`: 구분자
- `192.168.0.100`: 제 NAS IP (여러분 거로 바꾸세요!)

#### 4-3. 보안 확인 메시지

처음 접속할 때 이런 메시지가 나와요:
```
The authenticity of host '192.168.0.100 (192.168.0.100)' can't be established.
ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxx.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
```

무섭게 생겼지만 걱정 마세요! 그냥 **yes** 입력하고 **Enter** 누르면 돼요.

#### 4-4. 비밀번호 입력
```
admin@192.168.0.100's password:

이렇게 나오면 비밀번호 입력Enter

⚠️ 엄청 중요한 팁: 비밀번호 입력할 때 화면에 아무것도 안 보입니다! 저도 처음에 고장난 줄 알았는데, 보안상 일부러 안 보이게 한 거래요. 그냥 입력하고 Enter 누르세요!

4-5. 접속 성공!

이렇게 표시되면 성공이에요:

 
 
bash
admin@Synology:~$

또는

 
 
bash
admin@DiskStation:~$

축하합니다! 이제 명령어를 입력할 수 있어요 🎉

방법 2: PuTTY 프로그램 사용 (GUI 좋아하시는 분들께)

명령어가 부담스러우신 분들은 PuTTY를 추천해요!

4-6. PuTTY 설치하기

  1. 구글에서 "putty download" 검색
  2. 공식 사이트 접속: https://www.putty.org/
  3. Download PuTTY 클릭
  4. 64-bit x86용 MSI 설치 파일 다운로드
  5. 다운로드한 파일 실행해서 설치 (Next만 누르면 돼요)

💡 설치 없이 쓰고 싶으면: putty.exe (portable) 다운로드하면 바로 실행 가능해요!

4-7. PuTTY로 접속하기

  1. PuTTY 실행
  2. Configuration 화면에서:
    • Host Name (or IP address): 192.168.0.100 (여러분 NAS IP)
    • Port: 22
    • Connection type: SSH 선택 (라디오 버튼)
  3. Open 버튼 클릭
  4. 보안 경고 나오면 예(Y) 클릭
  5. 검은 터미널 창에서:
    • login as: → 관리자 계정명 입력 (예: admin)
    • password: → 비밀번호 입력

🎯 PuTTY 장점:

  • 접속 정보 저장 가능 (Session → Save)
  • 다음에 Load만 하면 바로 접속!
  • 화면 설정 커스터마이징 가능

저는 처음엔 PuTTY 썼는데, 요즘은 그냥 PowerShell이 편하더라고요 ㅎㅎ


5. 🍎 Mac에서 SSH 접속하기

Mac 사용자분들은 더 쉬워요! 기본 터미널로 바로 접속 가능합니다.

5-1. 터미널 열기

방법 1: Spotlight 검색

  • Command(⌘) + Space 누르기
  • "terminal" 입력
  • Terminal 앱 실행

방법 2: 직접 찾기

  • Finder → 응용 프로그램 → 유틸리티 → 터미널

5-2. SSH 접속 명령어

Windows와 똑같아요:

 
 
bash
ssh admin@192.168.0.100

나머지 과정도 Windows랑 동일합니다!

🎯 Mac 꿀팁: .ssh/config 파일에 설정 저장하면 다음부터 ssh nas 이런 식으로 짧게 접속 가능해요!


6. 👑 관리자 권한 얻기 (sudo 명령어)

SSH 접속은 했는데, 중요한 작업 하려면 관리자 권한이 필요해요.

sudo란?

"SuperUser DO"의 약자로, "관리자님, 이 명령 실행해주세요!" 라는 뜻이에요.

관리자 권한으로 전환하기

 
 
bash
sudo -i

입력하고 Enter비밀번호 입력Enter

성공하면 프롬프트가 바뀝니다:

이전:

 
 
bash
admin@Synology:~$

이후:

 
 
bash
root@Synology:~#

$가 #으로 바뀌면 성공! 이제 모든 권한으로 작업할 수 있어요.

⚠️ 주의사항: 관리자 권한(root)으로는 시스템 파일도 삭제할 수 있어요. 명령어 실행 전에 꼭 한 번 더 확인하세요!

관리자 권한 해제

 
 
bash
exit
```

---

## 7. 🚨 자주 발생하는 오류 해결법

제가 실제로 겪었던 오류들과 해결 방법이에요!

### ❌ "Connection refused" 오류

**증상:**
```
ssh: connect to host 192.168.0.100 port 22: Connection refused
```

**원인과 해결:**
1. SSH 서비스 안 켜진 경우 → DSM에서 SSH 활성화 다시 확인
2. 방화벽이 22번 포트 막은 경우 → 제어판 → 보안에서 22번 포트 허용
3. IP 주소가 틀린 경우 → NAS IP 다시 확인

**제 경험:**
처음에 이 오류 나서 한참 헤맸는데, 알고 보니 SSH 활성화하고 적용 버튼을 안 눌렀더라고요... 🤦‍♂️

### ❌ "Permission denied" 오류

**증상:**
```
admin@192.168.0.100's password: 
Permission denied, please try again.
```

**원인과 해결:**
1. 비밀번호가 틀린 경우 → 대소문자 정확히 확인!
2. 계정이 비활성화된 경우 → DSM에서 사용자 계정 상태 확인
3. SSH 권한이 없는 사용자 → 제어판 → 사용자에서 해당 계정에 SSH 권한 부여

### ❌ "Host key verification failed" 오류

**증상:**
```
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

원인: NAS를 초기화했거나 재설치해서 보안 키가 바뀐 경우

해결 방법 (Windows):

 
 
bash
ssh-keygen -R 192.168.0.100

해결 방법 (Mac):

 
 
bash
ssh-keygen -R 192.168.0.100

또는 ~/.ssh/known_hosts 파일에서 해당 IP 라인 삭제

❌ "Network error: Connection timed out"

원인과 해결:

  1. NAS가 꺼져 있음 → NAS 전원 확인
  2. 네트워크 연결 끊김 → 인터넷 연결 확인
  3. 다른 네트워크에 있음 → 같은 WiFi/랜 사용 중인지 확인

8. 🔒 SSH 보안 강화 팁

SSH는 편한데 보안도 중요하잖아요? 제가 쓰는 보안 팁들이에요.

8-1. 기본 포트 변경하기

22번 포트는 해커들이 제일 먼저 노리는 포트예요.

변경 방법:

  1. DSM → 제어판 → 터미널 및 SNMP
  2. 포트를 22에서 2222 같은 다른 번호로 변경
  3. 적용

접속할 때:

 
 
bash
ssh -p 2222 admin@192.168.0.100

-p 옵션으로 포트 지정!

8-2. 강력한 비밀번호 사용

약한 비밀번호:

  • ❌ admin123
  • ❌ password
  • ❌ 12345678

강한 비밀번호:

  • ✅ Sy!N0l0gy#2025
  • ✅ MyNas$Secure99!
  • ✅ 대소문자+숫자+특수문자 조합 12자 이상

8-3. SSH 접속 로그 확인하기

누가 내 NAS에 접속했는지 확인하세요!

DSM에서 확인:

  1. 로그 센터 → 연결
  2. SSH 접속 기록 확인

SSH로 확인:

 
 
bash
sudo cat /var/log/auth.log | grep ssh

8-4. 특정 IP만 허용하기 (고급)

집에서만 접속한다면 집 IP만 허용하는 것도 방법이에요.

설정 위치: 제어판 → 보안 → 방화벽 → 규칙 편집

외부 네트워크 vs 내부 네트워크, DHCP 서버까지 완벽 정리

안녕하세요! 😊 회사에서 IT 담당하게 되면서 네트워크 관련해서 정말 많이 헤맸던 사람입니다. 처음에는 "외부 네트워크가 뭐지?", "DHCP는 또 뭐야?" 하면서 완전 멘붕이었거든요 ㅠㅠ

그런데 2년 정도 직접 부딪히면서 배우다 보니 이제는 어느 정도 자신감이 생겼어요! 완전 전문가는 아니지만, 제가 겪었던 시행착오와 이해하기 쉽게 정리한 내용들 공유해볼게요. 혹시 저처럼 네트워크 때문에 머리 아프신 분들께 도움이 되면 좋겠어요 😄

📋 목차 (바쁘신 분들은 3번부터!)

  1. 네트워크가 뭔데? (기초 개념)
  2. 외부 네트워크 vs 내부 네트워크 (핵심 차이점!)
  3. DHCP 서버란? (이게 없으면 진짜 불편해요)
  4. 실전 활용 방법 (제가 실제로 쓰는 팁들)
  5. 문제 해결 가이드 (자주 겪는 오류들)

1. 💡 네트워크가 뭔데? (정말 쉽게 설명해드릴게요)

처음에 저는 네트워크를 너무 어렵게 생각했어요. 근데 알고 보니 정말 간단한 개념이더라고요!

쉽게 비유하면:

  • 네트워크 = 컴퓨터들이 서로 대화할 수 있는 통로
  • 마치 전화선으로 사람들끼리 통화하는 것처럼, 컴퓨터들도 네트워크로 데이터를 주고받아요

왜 네트워크를 나눌까?

솔직히 처음에는 "그냥 다 연결하면 되지 왜 나눠?" 했는데요, 이유가 있더라고요:

보안: 회사 기밀 자료를 인터넷에 바로 노출하면 안 되잖아요 ✅ 속도: 내부끼리만 통신하면 훨씬 빨라요 ✅ 관리: 문제 생기면 어디가 문제인지 찾기 쉬워요 ✅ 비용: 외부 통신은 돈이 드는데 내부는 무료!


2. 🔍 외부 네트워크 vs 내부 네트워크 (드디어 핵심!)

이 부분이 정말 헷갈렸거든요. 제가 이해한 방식으로 설명해볼게요!

🏢 내부 네트워크 (Private Network)

쉽게 말하면: 우리 집/회사 안에서만 쓰는 네트워크예요

제가 겪은 실제 사례:

회사에서 사무실 내 컴퓨터 30대를 연결해야 했어요. 처음에는 뭘 어떻게 해야 할지 막막했는데, 알고 보니 공유기 하나만 있으면 되더라고요!

내부 네트워크의 특징들:

IP 주소가 특별해요:

  • 192.168.x.x (제일 많이 봤어요)
  • 10.x.x.x (큰 회사에서 주로 써요)
  • 172.16.x.x ~ 172.31.x.x (중간 크기 회사)

인터넷에서는 안 보여요:

  • 외부에서 접근 불가능 (보안에 좋아요!)
  • 같은 사무실에 있어야 접속 가능

속도가 빨라요:

  • 파일 공유할 때 진짜 빠르더라고요
  • 제 경우 1GB 파일이 10초 만에!

💡 제가 내부 네트워크 쓰는 경우:

  • 사무실 컴퓨터들끼리 파일 공유
  • 프린터, 복합기 공유 (이게 진짜 편해요)
  • 회사 내부 서버 접속
  • 보안 카메라 연결

🌍 외부 네트워크 (Public Network)

쉽게 말하면: 인터넷이요! 전 세계 누구나 접근 가능한 네트워크

외부 네트워크의 특징들:

IP 주소가 공개되어 있어요:

  • 예: 203.241.132.82 (이런 식으로 생겼어요)
  • ISP(인터넷 회사)가 할당해줘요

어디서나 접근 가능:

  • 집에서도, 카페에서도, 해외에서도
  • 인터넷만 되면 OK!

보안이 중요해요:

  • 누구나 접근할 수 있어서 해킹 위험
  • 방화벽 필수! (처음에 이거 몰라서 고생했어요...)

💡 제가 외부 네트워크 쓰는 경우:

  • 회사 홈페이지 운영
  • 원격 근무할 때 VPN 연결
  • 클라우드 서비스 이용

📊 한눈에 비교하기 (실제로 제가 느낀 차이)

구분내부 네트워크외부 네트워크

접근 범위 같은 건물/사무실 안 전 세계 어디서나
IP 주소 192.168.x.x 같은 사설 IP 공인 IP (ISP 제공)
보안 상대적으로 안전 해킹 위험 높음
속도 엄청 빠름 (1Gbps 이상) 인터넷 속도에 따라
비용 초기 장비 비용만 월 인터넷 비용
용도 파일 공유, 내부 시스템 웹사이트, 이메일

🔗 둘이 어떻게 연결될까? (저도 궁금했어요)

이게 진짜 신기한데요:

 
[내부 네트워크] → [공유기/라우터] → [외부 네트워크]
  192.168.1.x     (NAT 변환)      203.241.x.x
```

- **NAT (Network Address Translation)**: 내부 IP를 외부 IP로 바꿔주는 마법사 같은 거예요
- 덕분에 사설 IP 여러 개가 공인 IP 하나만으로 인터넷 사용 가능!

---

## 3. ⚙️ DHCP 서버란? (진짜 편리한 친구예요)

### DHCP가 뭐길래?

**Dynamic Host Configuration Protocol** - 이름은 어렵지만 하는 일은 간단해요!

**제가 이해한 방식:**
DHCP = 자동으로 IP 주소 나눠주는 로봇 🤖

#### 제가 겪은 실제 상황:

**❌ DHCP 없을 때 (진짜 지옥이었어요...):**
```
직원 A: "컴퓨터 새로 샀는데 IP 설정 어떻게 해요?"
저: "192.168.1.50 입력하고, 서브넷 마스크는 255.255.255.0..."
직원 B: "저도요!"
저: "당신은 192.168.1.51로..."
직원 C: "저도요!"
저: "😭😭😭"
```

30명한테 하나하나 설정해줘야 했어요... 그것도 누가 어떤 IP 쓰는지 엑셀로 관리하면서!

**✅ DHCP 설치 후 (천국!):**
```
직원: "컴퓨터 랜선 꽂았는데 바로 인터넷 되네요?"
저: "네~ DHCP가 자동으로 해줬어요 ㅎㅎ"
```

### DHCP가 해주는 일들

1. **IP 주소 자동 할당**
   - 컴퓨터 켜면 자동으로 IP 받아요
   - 중복될 걱정 없어요!

2. **서브넷 마스크 설정**
   - 보통 `255.255.255.0`
   - 이것도 자동으로!

3. **게이트웨이 정보**
   - 인터넷 나가는 문 주소
   - 보통 `192.168.1.1`

4. **DNS 서버 정보**
   - 구글 접속할 때 필요한 거
   - 자동 설정!

### 🛠️ DHCP 서버 설정 방법 (제가 실제로 했던 순서)

#### 필요한 것들:
- 공유기 (요즘 거의 다 DHCP 기능 있어요)
- 또는 윈도우 서버/리눅스 서버

#### 제가 쓰는 설정값 (중소기업 기준):
```
DHCP 시작 IP: 192.168.1.100
DHCP 끝 IP: 192.168.1.200
임대 시간: 24시간
게이트웨이: 192.168.1.1
DNS 서버: 8.8.8.8, 8.8.4.4 (구글 DNS)
```

💡 **제가 배운 팁:**
- IP 풀(Pool)을 너무 작게 잡으면 나중에 부족해요
- 고정 IP 필요한 장비(프린터, 서버)는 범위 밖으로!
- 임대 시간은 24시간이 적당한 것 같아요

### ⚠️ DHCP 없으면 어떻게 될까? (실제로 겪어봤어요)

어느 날 DHCP 서버가 다운됐어요:

- 기존 컴퓨터들: 임대 시간 남아서 정상 작동
- 새로 켜는 컴퓨터: IP 못 받아서 인터넷 안 됨
- 재부팅한 컴퓨터: IP 못 받아서 인터넷 안 됨

그날 전화 30통 받았어요... "인터넷 안 돼요!" 😭

---

## 4. 🎯 실전 활용 방법 (제가 실제로 쓰는 팁들)

### 집에서 설정하기 (초보자용)

제 집 네트워크 구성:
```
[KT/SKT 인터넷] → [공유기] → [내부 기기들]
  (외부 IP)         (NAT)      (192.168.0.x)
```

**제가 한 설정:**

1. **공유기 접속:**
   - 주소창에 `192.168.0.1` 또는 `192.168.1.1`
   - 비밀번호: 공유기 뒷면 확인 (저는 admin/admin이었어요)

2. **DHCP 설정 확인:**
   - 보통 기본으로 켜져 있어요
   - 혹시 꺼져 있으면 켜주세요!

3. **IP 범위 조정:**
   - 기기 10개 미만: 100~120 정도면 충분
   - 기기 많으면: 100~200으로 넓혀요

### 회사에서 설정하기 (중급자용)

저희 회사는 직원 50명이라:

**내부 네트워크 구성:**
```
층별 구분:
- 1층 사무실: 192.168.1.x (임직원용)
- 2층 개발팀: 192.168.2.x (개발 서버)
- WiFi 게스트: 192.168.100.x (방문객용)
```

**고정 IP 할당한 장비들:**
- 서버: 192.168.1.10
- 프린터: 192.168.1.11~15
- NAS: 192.168.1.20
- CCTV: 192.168.1.30~40

💡 **제가 배운 꿀팁:**
- 고정 IP는 앞번호로 (10~50)
- DHCP 풀은 뒷번호로 (100~200)
- 이러면 관리하기 편해요!

---

## 5. 🔧 문제 해결 가이드 (자주 겪는 오류들)

### ❗ 인터넷이 안 될 때 (제가 제일 많이 받는 질문)

#### 증상 1: "인터넷 연결 없음"

**제가 먼저 확인하는 것들:**

1. ✅ 랜선 제대로 꽂혔나?
   - 생각보다 이거 때문인 경우 많아요 ㅋㅋ

2. ✅ IP 주소 받았나?
```
   윈도우: cmd → ipconfig
   결과: 192.168.1.xxx 나오면 OK
        169.254.xxx.xxx 나오면 DHCP 문제!
```

3. ✅ DHCP 서버 살아있나?
   - 공유기 재부팅 (30초 대기 후)
   - 80% 이상 이거로 해결돼요!

#### 증상 2: "IP 주소 충돌" 경고

**제가 겪었던 원인:**
- 누군가 수동으로 IP 설정함
- DHCP 범위가 고정 IP랑 겹침

**해결 방법:**
```
1. cmd 열기
2. ipconfig /release (IP 반납)
3. ipconfig /renew (IP 다시 받기)
```

90% 이거로 해결돼요!

#### 증상 3: "특정 컴퓨터만 느림"

**제가 확인하는 순서:**

1. 다른 컴퓨터는 빠른가? → 그 컴퓨터 문제
2. 전체가 느린가? → 공유기/회선 문제
3. 특정 사이트만? → DNS 문제

**DNS 문제 해결:**
```
DNS를 구글 DNS로 변경:
기본 DNS: 8.8.8.8
보조 DNS: 8.8.4.4

이거 하고 나서 속도 2배 빨라졌어요!

🛡️ 보안 체크리스트 (해킹 당하지 맙시다!)

제가 꼭 확인하는 것들:

공유기 비밀번호 변경 (admin/admin은 위험!) WiFi 비밀번호 복잡하게 (최소 12자 이상) 불필요한 포트 포워딩 삭제 공유기 펌웨어 최신 버전으로 ✅ 게스트 WiFi 따로 운영 (내부망 분리)

실제로 당했던 경험: 작년에 공유기 비밀번호 admin/admin으로 방치했다가 해킹당했어요... 지금은 MyC0mp@ny!2025 같은 복잡한 걸로 바꿨어요!


6. 💎 3년 운영하면서 배운 것들

실수하기 쉬운 것들 (저도 다 겪어봤어요)

이렇게 하지 마세요:

  1. DHCP 범위를 너무 작게
    • 100~110으로 했다가 금방 꽉 참
    • 지금은 100~200으로 여유 있게
  2. 고정 IP를 DHCP 범위 안에
    • 서버 IP를 192.168.1.150으로 했는데
    • DHCP가 다른 컴퓨터에 또 할당해서 충돌!
  3. 공유기 재부팅 안 함
    • 6개월 동안 안 껐더니 먹통됨
    • 이제는 한 달에 한 번씩 재부팅해요
  4. 백업 안 해둠
    • 공유기 설정 날아가서 다시 설정...
    • 지금은 설정 백업 파일 저장해둬요

✅ 이렇게 하니까 좋았어요:

  1. IP 관리 문서 작성
    • 엑셀로 누가 어떤 IP 쓰는지 정리
    • 문제 생기면 바로 찾을 수 있어요
  2. 예비 공유기 준비
    • 중고로 하나 더 사둠
    • 고장 나면 바로 교체!
  3. 모니터링 툴 사용
    • 공유기 관리 페이지에서 접속 기기 확인
    • 이상한 기기 발견하면 바로 차단

📝 마무리하며...

처음 네트워크 공부할 때는 정말 어려웠어요. 용어도 생소하고, 설정도 복잡하고... 근데 하나하나 직접 해보면서 점점 이해가 되더라고요!

제가 깨달은 핵심:

🎯 내부 네트워크 = 우리끼리만 쓰는 빠르고 안전한 네트워크 🌍 외부 네트워크 = 전 세계와 연결된 인터넷 ⚙️ DHCP 서버 = IP 주소 자동으로 나눠주는 편리한 친구

처음에는 어려워 보여도, 하나씩 따라하다 보면 금방 익숙해져요. 저도 처음엔 IP 주소가 뭔지도 몰랐는걸요? 😅

혹시 이 글 보고 따라해보셨는데 막히는 부분 있으면 댓글로 물어보세요! 제가 아는 범위에서 최대한 도와드릴게요. 같이 배우면서 성장해요! 💪

BAT 파일로 로그 파일 자동 정리하기

시스템 관리자나 개발자라면 로그 파일이 시간이 지남에 따라 어떻게 쌓여가는지 잘 알고 계실 겁니다. 이러한 로그 파일을 수동으로 정리하는 것은 지루하고 시간 소모적인 작업입니다. 하지만 Windows 환경에서 간단한 BAT(배치) 파일을 활용하면 이 과정을 자동화할 수 있습니다. 이 글에서는 BAT 파일을 작성하여 로그 파일을 효율적으로 정리하고 관리하는 방법을 상세히 알아보겠습니다.

💡 TIP: BAT 파일은 단 몇 줄의 코드로 반복적인 파일 관리 작업을 자동화할 수 있어 시스템 관리자의 시간을 크게 절약해줍니다!

 

🔍 BAT 파일이란?

BAT 파일은 Windows 운영 체제에서 사용되는 배치 파일로, 일련의 명령어를 순차적으로 실행할 수 있게 해주는 스크립트 파일입니다. 확장자는 .bat 또는 .cmd를 사용합니다.

🌟 BAT 파일의 주요 특징:

  • 📝 메모장과 같은 텍스트 편집기로 쉽게 작성 가능
  • 🔄 반복적인 작업을 자동화하는 데 효과적
  • 🕒 작업 스케줄러와 함께 사용하여 정기적인 작업 예약 가능
  • 💻 별도의 프로그래밍 지식 없이도 간단한 스크립트 작성 가능
BAT 파일 구조
 

BAT 파일은 기본적으로 Windows 명령 프롬프트에서 실행할 수 있는 명령어들을 순차적으로 나열한 것으로, 시스템 관리와 파일 작업을 자동화하는 데 이상적입니다. 로그 파일과 같이 정기적으로 관리해야 하는 파일의 경우, BAT 파일을 통해 쉽게 자동화할 수 있습니다.


🛠️ 로그 파일 정리를 위한 BAT 파일 만들기

로그 파일을 효과적으로 정리하는 BAT 파일을 만드는 과정을 단계별로 알아보겠습니다.

1️⃣ 기본 스크립트 작성하기

다음과 같은 단계로 간단한 로그 파일 정리 스크립트를 작성할 수 있습니다:

  1. 메모장이나 다른 텍스트 편집기를 엽니다.
  2. 필요한 명령어를 작성합니다.
  3. .bat 확장자로 저장합니다.

기본적인 로그 파일 정리 BAT 파일의 예시 코드입니다:

@echo off
rem 로그 파일 정리 스크립트
setlocal enabledelayedexpansion

rem 변수 설정
set LOGDIR=C:\logs
set ARCHIVEDIR=%LOGDIR%\archive
set DAYSTOKEEP=30

rem 아카이브 디렉터리가 없으면 생성
if not exist "%ARCHIVEDIR%" mkdir "%ARCHIVEDIR%"

rem 날짜 형식 설정 (YYYY-MM-DD)
for /f "tokens=2-4 delims=/ " %%a in ('date /t') do (
    set DATESTR=%%c-%%a-%%b
)

rem 30일이 지난 로그 파일을 아카이브로 이동
forfiles /p "%LOGDIR%" /s /m *.log /d -%DAYSTOKEEP% /c "cmd /c if not @path contains 'archive' move @path %ARCHIVEDIR%\@file_%DATESTR%.log"

rem 60일이 지난 아카이브 파일 삭제
forfiles /p "%ARCHIVEDIR%" /m *.log /d -60 /c "cmd /c del @path"

echo 로그 파일 정리가 완료되었습니다.

2️⃣ 스크립트 세부 사항 조정하기

위의 기본 스크립트는 다음과 같은 작업을 수행합니다:

🗂️ 로그 디렉터리 설정: 로그 파일이 저장된 디렉터리와 아카이브용 디렉터리를 지정합니다.

보관 기간 설정: 현재 폴더에 유지할 로그 파일의 기간(일)을 설정합니다.

📁 아카이브 폴더 생성: 아카이브 폴더가 없는 경우 자동으로 생성합니다.

📅 날짜 형식 설정: 오늘 날짜를 YYYY-MM-DD 형식으로 가져옵니다.

🔄 파일 이동: 지정된 기간(예: 30일)보다 오래된 로그 파일을 아카이브 폴더로 이동합니다.

🗑️ 오래된 파일 삭제: 아카이브 폴더에서 특정 기간(예: 60일)이 지난 파일을 삭제합니다.

로그 파일 관리 흐름도
 
 

📊 주요 명령어 설명

BAT 파일에서 로그 파일 정리에 사용되는 주요 명령어들을 자세히 살펴보겠습니다.

@echo off

🔇 명령 실행 시 명령어 자체를 화면에 표시하지 않도록 합니다. 이를 통해 출력이 깔끔해집니다.

setlocal enabledelayedexpansion

🔄 변수의 지연 확장을 활성화합니다. 루프 내에서 변수 값이 변경될 때 유용합니다.

set VARIABLE=value

📝 변수에 값을 할당합니다. 로그 디렉터리, 아카이브 디렉터리, 보관 기간 등을 설정할 수 있습니다.

if not exist "path" mkdir "path"

📁 특정 디렉터리가 존재하지 않는 경우 새로 생성합니다.

for /f 명령어

🔄 텍스트 출력을 처리하는 루프를 만듭니다. 날짜 정보를 파싱하는 데 사용됩니다.

forfiles 명령어

🔍 조건에 맞는 파일을 찾아 특정 명령을 실행합니다. 다음과 같은 옵션이 있습니다:

  • /p: 검색할 경로 지정
  • /s: 하위 디렉터리 포함 검색
  • /m: 검색할 파일 패턴 지정
  • /d: 날짜 필터링 (-N은 N일 이전)
  • /c: 실행할 명령어 지정

move 명령어

📦 파일을 한 위치에서 다른 위치로 이동합니다.

del 명령어

🗑️ 파일을 삭제합니다.


⏱️ 자동 실행 스케줄링하기

BAT 파일을 수동으로 실행하는 것도 가능하지만, Windows 작업 스케줄러를 사용하여 자동으로 실행되도록 설정하면 더욱 효율적입니다.

작업 스케줄러 설정 방법:

1️⃣ 작업 스케줄러 열기

  • 시작 메뉴에서 '작업 스케줄러'를 검색하거나 taskschd.msc 명령을 실행합니다.

2️⃣ 새 작업 만들기

  • 오른쪽 패널에서 '기본 작업 만들기'를 클릭합니다.

3️⃣ 작업 정보 입력

  • 작업 이름과 설명을 입력합니다 (예: "로그 파일 정리").

4️⃣ 실행 주기 설정

  • 일별, 주별, 월별 등의 옵션 중에서 원하는 주기를 선택합니다.
  • 대부분의 로그 관리는 일별로 설정하는 것이 좋습니다.

5️⃣ BAT 파일 경로 지정

  • '프로그램 시작' 작업을 선택하고 BAT 파일의 전체 경로를 입력합니다.

6️⃣ 완료

  • 설정을 검토하고 '완료' 버튼을 클릭합니다.
 

작업 스케줄러 설정

 

💡 스케줄링 팁:

  • 🕒 실행 시간 선택: 시스템 부하가 적은 시간(예: 새벽 2시)에 실행하도록 설정하는 것이 좋습니다.
  • 🔄 반복 주기: 로그 생성 빈도와 중요도에 따라 일별, 주별 또는 월별로 설정합니다.
  • 📊 실행 계정: 관리자 권한이 필요한 작업의 경우 적절한 권한을 가진 계정으로 실행되도록 설정합니다.
  • 🔔 알림 설정: 작업 성공 또는 실패 시 이메일 알림을 받을 수 있도록 설정하면 모니터링에 도움이 됩니다.

🔄 실제 사용 사례

이제 로그 파일 정리를 위한 BAT 파일의 실제 사용 사례를 살펴보겠습니다.

사례 1: 웹 서버 로그 관리

웹 서버(예: IIS, Apache)는 방대한 양의 로그 파일을 생성합니다. 다음은 이러한 로그를 관리하는 BAT 파일 예시입니다:

@echo off
setlocal enabledelayedexpansion

rem 웹 서버 로그 디렉터리 설정
set LOGDIR=C:\inetpub\logs\LogFiles
set ARCHIVEDIR=D:\LogArchive\WebServer
set DAYSTOKEEP=14

rem 아카이브 디렉터리 생성
if not exist "%ARCHIVEDIR%" mkdir "%ARCHIVEDIR%"

rem 날짜 형식 설정
for /f "tokens=1-3 delims=/" %%a in ('echo %date%') do (
    set DATESTR=%%c-%%a-%%b
)

rem 지정된 일수보다 오래된 로그 파일 압축 및 이동
forfiles /p "%LOGDIR%" /m *.log /d -%DAYSTOKEEP% /c "cmd /c echo 압축: @path && compact /c @path && move @path %ARCHIVEDIR%\@file_%DATESTR%.log"

rem 90일 이상 된 아카이브 파일 삭제
forfiles /p "%ARCHIVEDIR%" /m *.log /d -90 /c "cmd /c echo 삭제: @path && del @path"

echo 웹 서버 로그 정리가 완료되었습니다.

사례 2: 애플리케이션 로그 백업 및 정리

애플리케이션 로그를 백업하고 정리하는 예시입니다:

@echo off
setlocal enabledelayedexpansion

rem 애플리케이션 로그 디렉터리 설정
set APPLOGDIR=C:\Program Files\MyApp\logs
set BACKUPDIR=E:\Backups\AppLogs
set DAYSTOKEEP=7

rem 백업 디렉터리 생성
if not exist "%BACKUPDIR%" mkdir "%BACKUPDIR%"

rem 년-월-일 형식의 폴더 생성
for /f "tokens=1-3 delims=/" %%a in ('echo %date%') do (
    set YEAR=%%c
    set MONTH=%%a
    set DAY=%%b
    set DATEDIR=%BACKUPDIR%\%%c-%%a-%%b
)

rem 백업용 날짜 폴더 생성
if not exist "%DATEDIR%" mkdir "%DATEDIR%"

rem 모든 로그 파일을 날짜 폴더로 복사
xcopy /y "%APPLOGDIR%\*.log" "%DATEDIR%\"

rem 7일 이상 된 로그 파일 삭제
forfiles /p "%APPLOGDIR%" /m *.log /d -%DAYSTOKEEP% /c "cmd /c echo 삭제: @path && del @path"

rem 30일 이상 된 백업 폴더 삭제
forfiles /p "%BACKUPDIR%" /d -30 /c "cmd /c if @isdir==TRUE echo 폴더 삭제: @path && rd /s /q @path"

echo 애플리케이션 로그 백업 및 정리가 완료되었습니다.
BAT 파일 실행 콘솔
 

❓ 자주 묻는 질문 (FAQ)

❓ BAT 파일 실행 시 '액세스가 거부되었습니다' 오류가 발생합니다.

💬 답변: 이 오류는 대개 권한 문제로 발생합니다. 다음과 같은 해결 방법을 시도해 보세요:

  • BAT 파일을 관리자 권한으로 실행합니다 (우클릭 > '관리자 권한으로 실행').
  • 작업 스케줄러에서 '가장 높은 권한으로 실행' 옵션을 선택합니다.
  • 대상 파일 및 폴더에 대한 적절한 읽기/쓰기 권한이 있는지 확인합니다.

❓ 특정 로그 파일만 제외하고 싶습니다.

💬 답변: findstr 명령과 함께 파이프를 사용하거나, 조건문을 추가하여 특정 패턴의 파일을 제외할 수 있습니다:

forfiles /p "%LOGDIR%" /m *.log /d -%DAYSTOKEEP% /c "cmd /c if not @file contains \"important\" move @path %ARCHIVEDIR%\@file_%DATESTR%.log"

❓ 로그 파일을 삭제하기 전에 압축하고 싶습니다.

💬 답변: PowerShell 명령이나 외부 도구를 사용하여 압축할 수 있습니다. 예시:

rem PowerShell을 사용한 압축
powershell -command "Compress-Archive -Path '%LOGDIR%\*.log' -DestinationPath '%ARCHIVEDIR%\logs_%DATESTR%.zip'"

rem 압축 후 원본 파일 삭제
forfiles /p "%LOGDIR%" /m *.log /d -%DAYSTOKEEP% /c "cmd /c del @path"

❓ 로그 파일 정리 작업의 성공 여부를 알고 싶습니다.

💬 답변: 작업 결과를 로그 파일에 기록하고, 오류 발생 시 이메일 알림을 보내도록 설정할 수 있습니다:

@echo off
echo 로그 정리 작업 시작: %date% %time% > "%LOGDIR%\cleanup_log.txt"

rem 로그 정리 작업 수행
if errorlevel 1 (
    echo 오류 발생: %errorlevel% >> "%LOGDIR%\cleanup_log.txt"
    
    rem 이메일 알림 (외부 도구 필요)
    blat -to admin@example.com -subject "로그 정리 오류" -body "로그 정리 중 오류가 발생했습니다."
) else (
    echo 작업 완료: 성공 >> "%LOGDIR%\cleanup_log.txt"
)

echo 로그 정리 작업 종료: %date% %time% >> "%LOGDIR%\cleanup_log.txt"

❓ 매우 큰 로그 파일(1GB 이상)을 처리할 때 성능 문제가 있습니다.

💬 답변: 대용량 파일을 처리할 때는 다음과 같은 방법을 고려해 보세요:

  • 로그 순환 주기를 짧게 조정하여 파일이 너무 커지지 않도록 합니다.
  • 백그라운드 작업으로 처리하거나 시스템 부하가 적은 시간에 실행하도록 스케줄링합니다.
  • PowerShell이나 Python 같은 더 강력한 스크립팅 언어를 사용하는 것을 고려해 보세요.

📝 정리 및 결론

BAT 파일을 사용한 로그 파일 정리는 Windows 환경에서 시스템 관리자의 일상적인 작업을 자동화하는 효과적인 방법입니다. 이 글에서 살펴본 내용을 요약하면 다음과 같습니다:

🔹 BAT 파일의 장점:

  • 간단한 문법으로 빠르게 스크립트 작성 가능
  • 별도의 소프트웨어 설치 없이 Windows에서 바로 실행
  • 작업 스케줄러와 연동하여 완전 자동화 가능

🔹 로그 관리 전략:

  • 최신 로그는 빠른 접근을 위해 원본 위치에 유지
  • 오래된 로그는 아카이브 폴더로 이동하여 저장 공간 관리
  • 매우 오래된 로그는 자동으로 삭제하여 디스크 공간 확보

🔹 추가 고려사항:

  • 중요한 로그는 삭제 전 반드시 백업
  • 정기적으로 스크립트 실행 결과 확인
  • 로그 순환 정책을 시스템 요구사항에 맞게 조정

💡 TIP: 처음에는 간단한 BAT 파일로 시작하고, 필요에 따라 기능을 추가하며 확장하세요. 복잡한 작업의 경우 PowerShell이나 Python과 같은 더 강력한 스크립팅 도구로 전환하는 것도 고려해 보세요!

로그 파일 정리 자동화는 시스템 관리의 기본적인 부분이지만, 이를 효과적으로 구현하면 시스템 안정성을 높이고 관리자의 시간을 절약할 수 있습니다. 이 글에서 제공한 예시와 팁을 활용하여 여러분의 환경에 맞는 최적의 로그 관리 솔루션을 구축하시기 바랍니다.

 

'서버관리' 검색 결과

총 3개의 글이 있습니다.

Synology NAS SSH 접속 가이드

지식 공유/시놀로지 NAS · · by · 댓글 개
안녕하세요! 저도 처음 Synology NAS 샀을 때 SSH가 뭔지도 몰랐거든요 😅 근데 이거 한 번 알아두면 진짜 유용해요. 웹 인터페이스로 안 되는 고급 설정들을 할 수 있어서, NAS를 제대로 활용하려면 꼭 알아야 하는 기능이에요.처음에는 "명령어 입력한다"는 말 듣고 엄청 겁먹었는데, 막상 해보니까 생각보다 간단하더라고요! 제가 헤맸던 부분들 다 포함해서 정리해봤으니까, 이 글 하나면 SSH 접속은 완전 정복하실 수 있을 거예요 💪📋 목차 (급한 분들은 3번부터 보세요!)SSH가 뭐고 왜 필요한가요?사전 준비사항 체크리스트Synology에서 SSH 켜기 (제일 중요!)Windows에서 SSH 접속하기Mac에서 SSH 접속하기관리자 권한 얻기 (sudo)자주 발생하는 오류 해결법SSH 보안 ..

외부 네트워크 vs 내부 네트워크, DHCP 서버까지 완벽 정리

지식 공유/IT, 인공지능 정보 · · by · 댓글 개
안녕하세요! 😊 회사에서 IT 담당하게 되면서 네트워크 관련해서 정말 많이 헤맸던 사람입니다. 처음에는 "외부 네트워크가 뭐지?", "DHCP는 또 뭐야?" 하면서 완전 멘붕이었거든요 ㅠㅠ그런데 2년 정도 직접 부딪히면서 배우다 보니 이제는 어느 정도 자신감이 생겼어요! 완전 전문가는 아니지만, 제가 겪었던 시행착오와 이해하기 쉽게 정리한 내용들 공유해볼게요. 혹시 저처럼 네트워크 때문에 머리 아프신 분들께 도움이 되면 좋겠어요 😄📋 목차 (바쁘신 분들은 3번부터!)네트워크가 뭔데? (기초 개념)외부 네트워크 vs 내부 네트워크 (핵심 차이점!)DHCP 서버란? (이게 없으면 진짜 불편해요)실전 활용 방법 (제가 실제로 쓰는 팁들)문제 해결 가이드 (자주 겪는 오류들)1. 💡 네트워크가 뭔데? (..

BAT 파일로 로그 파일 자동 정리하기

지식 공유/IT, 인공지능 정보 · · by · 댓글 개
시스템 관리자나 개발자라면 로그 파일이 시간이 지남에 따라 어떻게 쌓여가는지 잘 알고 계실 겁니다. 이러한 로그 파일을 수동으로 정리하는 것은 지루하고 시간 소모적인 작업입니다. 하지만 Windows 환경에서 간단한 BAT(배치) 파일을 활용하면 이 과정을 자동화할 수 있습니다. 이 글에서는 BAT 파일을 작성하여 로그 파일을 효율적으로 정리하고 관리하는 방법을 상세히 알아보겠습니다.💡 TIP: BAT 파일은 단 몇 줄의 코드로 반복적인 파일 관리 작업을 자동화할 수 있어 시스템 관리자의 시간을 크게 절약해줍니다! 🔍 BAT 파일이란?BAT 파일은 Windows 운영 체제에서 사용되는 배치 파일로, 일련의 명령어를 순차적으로 실행할 수 있게 해주는 스크립트 파일입니다. 확장자는 .bat 또는 .cmd..