์๋
ํ์ธ์. ์ด ๊ธ์ ๊ณต์์ Mikrotik ๊ธฐ๊ธฐ๊ฐ ๋ง์ ๋ถ๋ค, ๊ฐ ๊ธฐ๊ธฐ๋ณ๋ก ๋ฐ๋ก ์ฐ๊ฒฐํ์ง ์๋๋ก ์ต๋ํ ํต์ผ์ฑ์ ๋๋ฆฌ๊ณ ์ถ์ ๋ถ๋ค์ ์ํ ๊ธ์
๋๋ค. ์ด ๊ธฐ์ฌ์์๋ ์ํ๊น๊ฒ๋ ์ธ์ ์์ธ์ผ๋ก ์ธํด ์ ํฌ ์กฐ๊ฑด์ ๋๋ฌํ์ง ๋ชปํ ํ๋ก์ ํธ์ ๋ํด ์ค๋ช
ํฉ๋๋ค. ์์ปจ๋ 200๊ฐ ์ด์์ ๋ผ์ฐํฐ, ๋น ๋ฅธ ์ค์ ๋ฐ ์ง์ ๊ต์ก, ์ง์ญ๋ณ ํตํฉ, ๋คํธ์ํฌ ๋ฐ ํน์ ํธ์คํธ ํํฐ๋ง, ๋ชจ๋ ์ฅ์น์ ์ฝ๊ฒ ๊ท์น์ ์ถ๊ฐํ๋ ๊ธฐ๋ฅ, ๋ก๊น
๋ฐ ์ก์ธ์ค ์ ์ด.
์๋์์ ์ค๋ช
ํ๋ ๋ด์ฉ์ ๊ธฐ์ฑํ์ธ ์ฒ ํ์ง ์์ง๋ง ๋คํธ์ํฌ ๊ณํ ๋ฐ ์ค๋ฅ ์ต์ํ์ ๋์์ด ๋์์ผ๋ฉด ํฉ๋๋ค. ์๋ง๋ ์ผ๋ถ ์์ ๊ณผ ๊ฒฐ์ ์ด ๊ทํ์๊ฒ ์ ํํ์ง ์์ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์๊ฒฌ์ ์์ฑํ์ญ์์ค. ์ด ๊ฒฝ์ฐ ๋นํ์ ์ผ๋ฐ์ ์ธ ๋ผ์ง ์ ๊ธํต์์์ ๊ฒฝํ์ด ๋ ๊ฒ์
๋๋ค. ๋ฐ๋ผ์ ๋
์ ์ฌ๋ฌ๋ถ, ๋๊ธ์ ์ดํด๋ณด์ญ์์ค. ์๋ง๋ ์ ์๊ฐ ์ฌ๊ฐํ ์ค์๋ฅผ ์ ์ง๋ ์ ๊ฒ์
๋๋ค. ์ปค๋ฎค๋ํฐ๊ฐ ๋์์ด ๋ ๊ฒ์
๋๋ค.
๋ผ์ฐํฐ์ ์๋ 200-300์ด๋ฉฐ ์ธํฐ๋ท ์ฐ๊ฒฐ ํ์ง์ด ๋ค๋ฅธ ์ฌ๋ฌ ๋์์ ํฉ์ด์ ธ ์์ต๋๋ค. ๋ชจ๋ ๊ฒ์ ์๋ฆ๋ต๊ฒ ๋ง๋ค๊ณ ๋ชจ๋ ๊ฒ์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ์ ๊ทผ ๊ฐ๋ฅํ ๋ฐฉ์์ผ๋ก ๋ก์ปฌ ๊ด๋ฆฌ์์๊ฒ ์ค๋ช ํด์ผ ํฉ๋๋ค.
๊ทธ๋ ๋ค๋ฉด ๋ชจ๋ ํ๋ก์ ํธ๋ ์ด๋์์ ์์๋ฉ๋๊น? ๋ฌผ๋ก , TK.
- ๊ณ ๊ฐ ์๊ตฌ ์ฌํญ, ๋คํธ์ํฌ ์ธ๋ถํ(์ฅ์น ์์ ๋ฐ๋ผ ์ง์ ์์ 3~20๊ฐ ๋คํธ์ํฌ)์ ๋ฐ๋ผ ๋ชจ๋ ์ง์ ์ ๋ํ ๋คํธ์ํฌ ๊ณํ ๊ตฌ์ฑ.
- ๊ฐ ์ง์ ์์ ์ฅ์น๋ฅผ ์ค์ ํฉ๋๋ค. ๋ค์ํ ์์ ์กฐ๊ฑด์์ ๊ณต๊ธ์์ ์ค์ ๋์ญํญ์ ํ์ธํฉ๋๋ค.
- ์ฅ์น ๋ณดํธ ๊ตฌ์ฑ, ํ์ดํธ๋ฆฌ์คํธ ์ ์ด, ์ผ์ ๊ธฐ๊ฐ ๋์ ์๋ ๋ธ๋๋ฆฌ์คํธ๋ก ๊ณต๊ฒฉ ์๋ ํ์ง, ์ ์ด ์ก์ธ์ค ๋ฐ ์๋น์ค ๊ฑฐ๋ถ๋ฅผ ๊ฐ๋ก์ฑ๋ ๋ฐ ์ฌ์ฉ๋๋ ๋ค์ํ ๊ธฐ์ ์ ์๋จ์ ์ฌ์ฉ ์ต์ํ.
- ๊ณ ๊ฐ ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ๋คํธ์ํฌ ํํฐ๋ง์ ์ฌ์ฉํ์ฌ ๋ณด์ VPN ์ฐ๊ฒฐ์ ๊ตฌ์ฑํฉ๋๋ค. ๊ฐ ์ง์ ์์ ์ผํฐ๋ก ์ต์ 3๊ฐ์ VPN ์ฐ๊ฒฐ.
- ํฌ์ธํธ 1, 2๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ๋ด๊ฒฐํจ์ฑ VPN์ ๊ตฌ์ถํ๋ ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์ ์ ํํ์ญ์์ค. ์ฌ๋ฐ๋ฅธ ๊ทผ๊ฑฐ๊ฐ ์๋ ๋์ ๋ผ์ฐํ ๊ธฐ์ ์ ๊ณ์ฝ์๊ฐ ์ ํํ ์ ์์ต๋๋ค.
- ๊ณ ๊ฐ์ด ์ฌ์ฉํ๋ ํ๋กํ ์ฝ, ํฌํธ, ํธ์คํธ ๋ฐ ๊ธฐํ ํน์ ์๋น์ค๋ณ๋ก ํธ๋ํฝ ์ฐ์ ์์๋ฅผ ๊ตฌ์ฑํฉ๋๋ค. (VOIP, ์ค์ํ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ํธ์คํธ)
- ๊ธฐ์ ์ง์ ์ง์์ ๋์์ ์ํด ๋ผ์ฐํฐ ์ด๋ฒคํธ์ ๋ชจ๋ํฐ๋ง ๋ฐ ๋ก๊น ๊ตฌ์ฑ.
์ฐ๋ฆฌ๊ฐ ์๊ณ ์๋ฏ์ด ์ด๋ค ๊ฒฝ์ฐ์๋ TOR๊ฐ ์๊ตฌ ์ฌํญ์์ ์ปดํ์ผ๋ฉ๋๋ค. ๋๋ ์ฃผ์ ๋ฌธ์ ๋ฅผ ๋ฃ๊ณ ๋์ ์ด๋ฌํ ์๊ตฌ ์ฌํญ์ ์ค์ค๋ก ๊ณต์ํํ์ต๋๋ค. ๊ทธ๋ ๋ค๋ฅธ ์ฌ๋์ด ์ด๋ฌํ ์ฌํญ์ ์ดํํ ๊ฐ๋ฅ์ฑ์ ์ธ์ ํ์ต๋๋ค.
์ด๋ฌํ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋ ๋ฐ ์ฌ์ฉํ ๋๊ตฌ๋ ๋ฌด์์ ๋๊น?
- ELK ์คํ(์ผ๋ง ํ, logstash ๋์ fluentd๊ฐ ์ฌ์ฉ๋๋ค๋ ๊ฒ์ด ์ดํด๋์์ต๋๋ค).
- ๊ฐ๋ฅํ. ์์ฌ์ด ๊ด๋ฆฌ ๋ฐ ์ก์ธ์ค ๊ณต์ ๋ฅผ ์ํด AWX๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ๊น๋ฉ. ์ฌ๊ธฐ์ ์ค๋ช ํ ํ์๊ฐ ์์ต๋๋ค. ๊ตฌ์ฑ์ ๋ฒ์ ์ ์ด๊ฐ ์๋ ๊ฒฝ์ฐ.
- ํ์์ ธ. ๊ตฌ์ฑ์ ์ด๊ธฐ ์์ฑ์ ์ํ ๊ฐ๋จํ ์คํฌ๋ฆฝํธ๊ฐ ์์ต๋๋ค.
- ๋ฌธ์ ๋ฐ ์ค๋ช ์ ์์ฑ์ ์ํ Doku wiki. ์ด ๊ฒฝ์ฐ habr.com์ ์ฌ์ฉํฉ๋๋ค.
- ๋ชจ๋ํฐ๋ง์ zabbix๋ฅผ ํตํด ์ด๋ฃจ์ด์ง๋๋ค. ์ผ๋ฐ์ ์ธ ์ดํด๋ฅผ ์ํ ์ฐ๊ฒฐ ๋ค์ด์ด๊ทธ๋จ๋ ์์ต๋๋ค.
EFK ์ค์ ์ง์
์ฒซ ๋ฒ์งธ ํญ๋ชฉ์์๋ ์งํ๊ฐ ๊ตฌ์ถ๋ ์ด๋ฐ์ฌ๋ก๊ธฐ๋ง ์ค๋ช
ํ๊ฒ ์ต๋๋ค. ๋ง์ด์๋ค
mikrotik์ ์คํํ๋ ์ฅ์น์์ ๋ก๊ทธ๋ฅผ ์ค์ ํ๊ณ ์์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ํ๋ฅญํ ๊ธฐ์ฌ์
๋๋ค.
๋ช ๊ฐ์ง ์ฌํญ์ ๋ํด ์ค๋ช ํ๊ฒ ์ต๋๋ค.
1. ๊ณํ์ ๋ฐ๋ฅด๋ฉด ๋ค๋ฅธ ์ฅ์์ ๋ค๋ฅธ ํฌํธ์์ ๋ก๊ทธ๋ฅผ ์์ ํ๋ ๊ฒ์ ๊ณ ๋ คํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ์ด๋ฅผ ์ํด ๋ก๊ทธ ์ง๊ณ๊ธฐ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๋ํ ์ก์ธ์ค๋ฅผ ๊ณต์ ํ ์ ์๋ ๊ธฐ๋ฅ์ ๊ฐ์ถ ๋ชจ๋ ๋ผ์ฐํฐ์ฉ ๋ฒ์ฉ ๊ทธ๋ํฝ์ ๋ง๋ค๊ณ ์ ํฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋ค์๊ณผ ๊ฐ์ด ์ธ๋ฑ์ค๋ฅผ ์์ฑํฉ๋๋ค.
๋ค์์ fluentd๋ฅผ ์ฌ์ฉํ ๊ตฌ์ฑ์
๋๋ค. ์๋ผ์คํฑ์์น
logstash_format ์ฐธ
index_name mikrotiklogs.north
logstash_prefix mikrotiklogs.north
flush_interval 10์ด
ํธ์คํธ
ํฌํธ 9200
๋ฐ๋ผ์ mikrotiklogs.west, mikrotiklogs.south, mikrotiklogs.east ๊ณํ์ ๋ฐ๋ผ ๋ผ์ฐํฐ์ ์ธ๊ทธ๋จผํธ๋ฅผ ๊ฒฐํฉํ ์ ์์ต๋๋ค. ์ ๊ทธ๋ ๊ฒ ์ด๋ ต๊ฒ ๋ง๋๋์? ์ฐ๋ฆฌ๋ 200๊ฐ ์ด์์ ์ฅ์น๋ฅผ ๊ฐ๊ฒ ๋ ๊ฒ์์ ์๊ณ ์์ต๋๋ค. ๋ชจ๋ ๊ฒ์ ๋ฐ๋ฅด์ง ๋ง์ญ์์ค. Elasticsearch ๋ฒ์ 6.8๋ถํฐ ๋ผ์ด์ผ์ค ๊ตฌ๋งค ์์ด ๋ณด์ ์ค์ ์ ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก ๊ธฐ์ ์ง์ ์ง์ ๋๋ ๋ก์ปฌ ์์คํ
๊ด๋ฆฌ์ ๊ฐ์ ๋ณด๊ธฐ ๊ถํ์ ๋ฐฐํฌํ ์ ์์ต๋๋ค.
ํ
์ด๋ธ, ๊ทธ๋ํ-์ฌ๊ธฐ์ ๋์ํ๋ฉด๋ฉ๋๋ค-๋์ผํ ๊ฒ์ ์ฌ์ฉํ๊ฑฐ๋ ๋ชจ๋ ์ฌ๋์ด ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํฉ๋๋ค.
2. ๋ก๊ทธ์ธํ์ฌ. ๋ฐฉํ๋ฒฝ ๊ท์น์์ ๋ก๊ทธ์ธ์ ํ์ฑํํ๋ฉด ๊ณต๋ฐฑ ์์ด ์ด๋ฆ์ ๋ง๋ญ๋๋ค. fluentd์ ๊ฐ๋จํ ๊ตฌ์ฑ์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ํํฐ๋งํ๊ณ ํธ๋ฆฌํ ํจ๋์ ๋ง๋ค ์ ์์์ ์ ์ ์์ต๋๋ค. ์๋ ์ฌ์ง์ ์ ํ ๋ผ์ฐํฐ์ ๋๋ค.
3. ์ ์ ๊ณต๊ฐ๊ณผ ํต๋๋ฌด์ ๋ฐ๋ผ. ํ๊ท ์ ์ผ๋ก ์๊ฐ๋น 1000๊ฐ์ ๋ฉ์์ง๊ฐ ์๋ ๊ฒฝ์ฐ ๋ก๊ทธ๋ ํ๋ฃจ์ 2-3MB๋ฅผ ์ฐจ์งํ๋ฉฐ ์ด๋ ๊ทธ๋ค์ง ๋ง์ง ์์ต๋๋ค. ์๋ผ์คํฑ์์น ๋ฒ์ 7.5.
๊ฐ๋ฅ.AWX
๋คํ์ค๋ฝ๊ฒ๋ ๋ผ์ฐํฐ๋ฅผ ์ํ ๊ธฐ์ฑํ ๋ชจ๋์ด ์์ต๋๋ค.
AWX์ ๋ํด ์ง์ ํ๋๋ฐ ์๋ ๋ช
๋ น์ด๋ ๊ฐ์ฅ ์์ํ ํํ์ ansible์ ๋ํ ๊ฒ์ผ ๋ฟ์
๋๋ค.
์์งํ ๋งํด์ ๊ทธ ์ ์ ssh๋ฅผ ์ฌ์ฉํ๋ ๋ค๋ฅธ ๊ฐ์ด๋๋ฅผ ์ดํด๋ณด์๋๋ฐ ๋ชจ๋ ์๋ต ์๊ฐ๊ณผ ๋ค๋ฅธ ๋ง์ ๋ฌธ์ ์ ๋ํด ๋ค๋ฅธ ๋ฌธ์ ๊ฐ ์์์ต๋๋ค. ๋ฐ๋ณตํฉ๋๋ค. ์ ํฌ์ ๋๋ฌํ์ง ๋ชปํ์ต๋๋ค ๏, ์ด ์ ๋ณด๋ฅผ ๋ผ์ฐํฐ 20๋๋ฅผ ๋์ง ์๋ ์คํ์ผ๋ก ๋ฐ์๋ค์ ๋๋ค.
์ธ์ฆ์ ๋๋ ๊ณ์ ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค. ๊ฒฐ์ ํ๋ ๊ฒ์ ๋น์ ์๊ฒ ๋ฌ๋ ค ์์ต๋๋ค. ์ ๋ ์ธ์ฆ์์ ๋๋ค. ๊ถ๋ฆฌ์ ๋ํ ๋ช ๊ฐ์ง ๋ฏธ๋ฌํ ์ . ๋๋ ์ฐ๊ธฐ ๊ถํ์ ๋ถ์ฌํฉ๋๋ค. ์ต์ํ "์ค์ ์ฌ์ค์ "์ ์๋ํ์ง ์์ต๋๋ค.
์ธ์ฆ์ ์์ฑ, ๋ณต์ฌ ๋ฐ ๊ฐ์ ธ์ค๊ธฐ์ ๋ฌธ์ ๊ฐ ์์ด์ผ ํฉ๋๋ค.
๊ฐ๋จํ ๋ช
๋ น ๋ชฉ๋กPC์์
ssh-keygen -t RSA, ์ง๋ฌธ์ ๋ตํ๊ณ ํค๋ฅผ ์ ์ฅํฉ๋๋ค.
mikrotik์ ๋ณต์ฌ:
์ฌ์ฉ์ ssh-keys import public-key-file=id_mtx.pub user=ansible
๋จผ์ ๊ณ์ ์ ๋ง๋ค๊ณ ๊ถํ์ ํ ๋นํด์ผ ํฉ๋๋ค.
์ธ์ฆ์์์ ์ฐ๊ฒฐ ํ์ธ
ssh -p 49475 -i /ํค/mtx [์ด๋ฉ์ผ ๋ณดํธ]
vi /etc/ansible/hosts ์ฐ๊ธฐ
MT01 ansible_network_os=routeros ansible_ssh_port=49475 ansible_ssh_user= ๊ฐ๋ฅ
MT02 ansible_network_os=routeros ansible_ssh_port=49475 ansible_ssh_user= ๊ฐ๋ฅ
MT03 ansible_network_os=routeros ansible_ssh_port=49475 ansible_ssh_user= ๊ฐ๋ฅ
MT04 ansible_network_os=routeros ansible_ssh_port=49475 ansible_ssh_user= ๊ฐ๋ฅ
ํ๋ ์ด๋ถ์ ์: ์ด๋ฆ: add_work_sites
ํธ์คํธ:testmt
์๋ฆฌ์ผ: 1
์ฐ๊ฒฐ:network_cli
์๊ฒฉ_์ฌ์ฉ์: mikrotik.west
์์ง_์ฌ์ค: ์
์์
:
์ด๋ฆ: Work_sites ์ถ๊ฐ
routeros_๋ช
๋ น:
๋ช
๋ น :
- /ip ๋ฐฉํ๋ฒฝ ์ฃผ์ ๋ชฉ๋ก ์ฃผ์ ์ถ๊ฐ=gov.ru list=work_sites comment=Ticket665436_Ochen_nado
- /ip ๋ฐฉํ๋ฒฝ ์ฃผ์ ๋ชฉ๋ก ์ถ๊ฐ ์ฃผ์=habr.com list=work_sites comment=for_habr
์์ ๊ตฌ์ฑ์์ ๋ณผ ์ ์๋ฏ์ด ์์ ์ ํ๋ ์ด๋ถ์ ์ปดํ์ผํ๋ ๊ฒ์ ๊ฐ๋จํ ๋ฌธ์ ์ ๋๋ค. cli mikrotik์ ์ถฉ๋ถํ ๋ง์คํฐํ๋ ๊ฒ์ผ๋ก ์ถฉ๋ถํฉ๋๋ค. ๋ชจ๋ ๋ผ์ฐํฐ์์ ํน์ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ์ฃผ์ ๋ชฉ๋ก์ ์ ๊ฑฐํด์ผ ํ๋ ์ํฉ์ ์์ํด ๋ณด์ญ์์ค. ๊ทธ๋ฐ ๋ค์:
์ฐพ๊ธฐ ๋ฐ ์ ๊ฑฐ/ip ๋ฐฉํ๋ฒฝ ์ฃผ์ ๋ชฉ๋ก ์ ๊ฑฐ [list="gov.ru" ์์น ์ฐพ๊ธฐ]
์ผ๋ถ๋ฌ ์ฌ๊ธฐ์ ์ ์ฒด ๋ฐฉํ๋ฒฝ ๋ชฉ๋ก์ ํฌํจํ์ง ์์์ต๋๋ค. ๊ฐ ํ๋ก์ ํธ๋ง๋ค ๊ฐ๋ณ์ ์ ๋๋ค. ํ์ง๋ง ํ ๊ฐ์ง ํ์คํ ๋งํ ์ ์๋ ๊ฒ์ ์ฃผ์ ๋ชฉ๋ก๋ง ์ฌ์ฉํ๋ค๋ ๊ฒ์ ๋๋ค.
GITLAB์ ๋ฐ๋ฅด๋ฉด ๋ชจ๋ ๊ฒ์ด ๋ช ํํฉ๋๋ค. ๋๋ ์ด ์๊ฐ์ ์ฐ์ฐํ์ง ์์ ๊ฒ์ด๋ค. ๊ฐ๋ณ ์์ , ํ ํ๋ฆฟ, ์ฒ๋ฆฌ๊ธฐ ์ธก๋ฉด์์ ๋ชจ๋ ๊ฒ์ด ์๋ฆ๋ต์ต๋๋ค.
ํ์ ์
3๊ฐ์ ํ์ผ์ด ์์ ๊ฒ์ ๋๋ค. ์ ํ์์์ธ๊ฐ? ๊ตฌ์ฑ ์์ฑ ๋๊ตฌ๋ ๋ ํธํ ์ฌ๋์ด ์ ํํ ์ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ ๋ชจ๋ ์ฌ๋์ด ์์ ์ PC์ ์ฐฝ์ ๊ฐ์ง๊ณ ์์ผ๋ฏ๋ก powershell์ด โโ๋ ํธ๋ฆฌํ ์ด์ ๋ bash์์ ์ํํ๋ ๊ฒ์ ๋๋ค. ๋๊ฐ ๋ ํธํด์.
์คํฌ๋ฆฝํธ ์์ฒด(๊ฐ๋จํ๊ณ ์ดํดํ๊ธฐ ์ฌ์):[cmdletBinding()] ๋งค๊ฐ๋ณ์(
[๋งค๊ฐ๋ณ์(ํ์=$true)] [๋ฌธ์์ด]$EXTERNALIPADDRESS,
[๋งค๊ฐ๋ณ์(ํ์=$true)] [๋ฌธ์์ด]$EXTERNALIPROUTE,
[Parameter(Mandatory=$true)] [string]$BWorknets,
[Parameter(Mandatory=$true)] [string]$CWorknets,
[Parameter(Mandatory=$true)] [string]$BVoipNets,
[Parameter(Mandatory=$true)] [string]$CVoipNets,
[Parameter(Mandatory=$true)] [string]$CClientss,
[Parameter(Mandatory=$true)] [string]$BVPNWORKs,
[Parameter(Mandatory=$true)] [string]$CVPNWORKs,
[Parameter(Mandatory=$true)] [๋ฌธ์์ด]$BVPNCLIENTS,
[Parameter(Mandatory=$true)] [string]$cVPNCLIENTS,
[๋งค๊ฐ๋ณ์(ํ์=$true)] [๋ฌธ์์ด]$NAMEROUTER,
[Parameter(Mandatory=$true)] [string]$ServerCertificates,
[๋งค๊ฐ๋ณ์(ํ์=$true)] [๋ฌธ์์ด]$infile,
[๋งค๊ฐ๋ณ์(ํ์=$true)] [๋ฌธ์์ด]$outfile
)
์ฝํ
์ธ ๊ฐ์ ธ์ค๊ธฐ $infile | Foreach-๊ฐ์ฒด {$_.Replace("EXTERNIP", $EXTERNALIPADDRESS)} |
Foreach-๊ฐ์ฒด {$_.Replace("EXTROUTE", $EXTERNALIPROUTE)} |
Foreach-๊ฐ์ฒด {$_.Replace("BWorknet", $BWorknets)} |
Foreach-๊ฐ์ฒด {$_.Replace("CWorknet", $CWorknets)} |
Foreach-Object {$_.Replace("BVoipNet", $BVoipNets)} |
Foreach-๊ฐ์ฒด {$_.Replace("CVoipNet", $CVoipNets)} |
Foreach-๊ฐ์ฒด {$_.Replace("CClients", $CClientss)} |
Foreach-๊ฐ์ฒด {$_.Replace("BVPNWORK", $BVPNWORKs)} |
Foreach-๊ฐ์ฒด {$_.Replace("CVPNWORK", $CVPNWORKs)} |
Foreach-๊ฐ์ฒด {$_.Replace("BVPNCLIENTS", $BVPNCLIENTSs)} |
Foreach-๊ฐ์ฒด {$_.Replace("CVPNCLIENTS", $cVPNCLIENTSs)} |
Foreach-๊ฐ์ฒด {$_.Replace("MYNAMERROUTER", $NAMEROUTER)} |
Foreach-Object {$_.Replace("ServerCertificate", $ServerCertificates)} | ์ค์ ๋ด์ฉ $outfile
๋ชจ๋ ๊ท์น์ ์ค๋ช ํ ์๋ ์์ต๋๋ค. ๊ทธ๊ฒ์ ์์์ง ์์ ๊ฒ์ ๋๋ค. ๋ชจ๋ฒ ์ฌ๋ก์ ๋ฐ๋ผ ๊ท์น์ ์ง์ ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด ๋ค์์ ๋ด๊ฐ ์๋ดํ ๋งํฌ ๋ชฉ๋ก์
๋๋ค.
๋ณ์ ๊ท์น:๋ค์ ๋คํธ์ํฌ๋ฅผ ์๋ก ๋ค์์ต๋๋ค.
192.168.0.0/24 ์์
๋คํธ์ํฌ
172.22.4.0/24 VoIP ๋คํธ์ํฌ
LAN ์ก์ธ์ค๊ฐ ์๋ ํด๋ผ์ด์ธํธ๋ฅผ ์ํ 10.0.0.0/24 ๋คํธ์ํฌ
๋๊ท๋ชจ ์ง์ฌ๋ฅผ ์ํ 192.168.255.0/24 VPN ๋คํธ์ํฌ
์๊ท๋ชจ์ฉ 172.19.255.0/24 VPN ๋คํธ์ํฌ
๋คํธ์ํฌ ์ฃผ์๋ ๊ฐ๊ฐ ABCD์ธ 4๊ฐ์ 192.168.0.0์ง์๋ก ๊ตฌ์ฑ๋๋ฉฐ ๊ต์ฒด๋ ๋์ผํ ์์น์ ๋ฐ๋ผ ์๋ํฉ๋๋ค. ์์ํ ๋ B๋ฅผ ์์ฒญํ๋ฉด ๋คํธ์ํฌ 24/0์ ๋ํด ์ซ์ 0์ ์
๋ ฅํ๊ณ C = XNUMX์ ๋ํด ์ซ์ XNUMX์ ์
๋ ฅํด์ผ ํฉ๋๋ค. .
$EXTERNALIPADDRESS - ์ ๊ณต์๋ก๋ถํฐ ํ ๋น๋ ์ฃผ์.
$EXTERNALIPROUTE - ๋คํธ์ํฌ 0.0.0.0/0์ ๋ํ ๊ธฐ๋ณธ ๊ฒฝ๋ก
$BWorknets - ์์
๋คํธ์ํฌ, ์ด ์์์๋ 168๊ฐ๊ฐ ์์ต๋๋ค.
$CWorknets - ์์
๋คํธ์ํฌ, ์ด ์์์๋ 0์
๋๋ค.
$BVoipNets - ์ฌ๊ธฐ ์์ ์ VOIP ๋คํธ์ํฌ 22
$CVoipNets - ์ฌ๊ธฐ ์์ ์ VOIP ๋คํธ์ํฌ 4
$CClientss - ํด๋ผ์ด์ธํธ์ฉ ๋คํธ์ํฌ - ์ธํฐ๋ท์๋ง ์ก์ธ์ค(์ฌ๊ธฐ์๋ 0)
$BVPNWORKs - ๋๊ท๋ชจ ๋ธ๋์น์ฉ VPN ๋คํธ์ํฌ(์์ 20)
$CVPNWORKs - ๋๊ท๋ชจ ๋ธ๋์น๋ฅผ ์ํ VPN ๋คํธ์ํฌ(์ด ์์์๋ 255)
$BVPNCLIENTS - ์๊ท๋ชจ ์ง์ ์ ์ํ VPN ๋คํธ์ํฌ, 19๋ฅผ ์๋ฏธ
$CVPNCLIENTS - ์๊ท๋ชจ ์ง์ ์ฉ VPN ๋คํธ์ํฌ, 255๋ฅผ ์๋ฏธ
$NAMEROUTER - ๋ผ์ฐํฐ ์ด๋ฆ
$ServerCertificate - ๋จผ์ ๊ฐ์ ธ์ค๋ ์ธ์ฆ์์ ์ด๋ฆ
$infile - ๊ตฌ์ฑ์ ์ฝ์ ํ์ผ์ ๊ฒฝ๋ก๋ฅผ ์ง์ ํฉ๋๋ค(์: D:config.txt(๋ฐ์ดํ์ ๊ณต๋ฐฑ์ด ์๋ ๋ ๋์ ์์ด ๊ฒฝ๋ก)).
$outfile - ์ ์ฅํ ๊ฒฝ๋ก ์ง์ (์: D:MT-test.txt)
๋ช ๋ฐฑํ ์ด์ ๋ก ์์ ์ ์ฃผ์๋ฅผ ์๋์ ์ผ๋ก ๋ณ๊ฒฝํ์ต๋๋ค.
๊ณต๊ฒฉ ๋ฐ ๋น์ ์์ ์ธ ๋์ ๊ฐ์ง์ ๋ํ ์์ ์ ๋์ณค์ต๋๋ค. ์ด๋ ๋ณ๋์ ๊ธฐ์ฌ๊ฐ ํ์ํฉ๋๋ค. ๊ทธ๋ฌ๋์ด ๋ฒ์ฃผ์์๋ Zabbix์ ๋ชจ๋ํฐ๋ง ๋ฐ์ดํฐ ๊ฐ + elasticsearch์ ์ปฌ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ์ ์๋ค๋ ์ ์ ์ง์ ํ ๊ฐ์น๊ฐ ์์ต๋๋ค.
์ง์คํด์ผ ํ ์ :
- ๋คํธ์ํฌ ๊ณํ. ์ฝ์ ์ ์๋ ํ์์ผ๋ก ์์ฑํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์์ ์ด๋ฉด ์ถฉ๋ถํฉ๋๋ค. ์ํ๊น๊ฒ๋ "์๋ก์ด ๋ถ๊ธฐ๊ฐ ๋ํ๋ฌ์ต๋๋ค. ์ฌ๊ธฐ /24๊ฐ ์์ต๋๋ค."๋ผ๋ ์์น์ ๋ฐ๋ผ ๋คํธ์ํฌ๊ฐ ์ปดํ์ผ๋๋ ๊ฒ์ ์์ฃผ ๋ด ๋๋ค. ์ฃผ์ด์ง ์์น์์ ์์๋๋ ์ฅ์น ์์ ์ถ๊ฐ ์ฑ์ฅ ์ฌ๋ถ๋ฅผ ์๋ ์ฌ๋์ ์๋ฌด๋ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์์ ์์ ์ด ์ด๋ ธ๋๋ฐ ์ฒ์์๋ ์ฅ์น๊ฐ 10์ ๋์ง ์์ ๊ฒ์ด๋ผ๋ ๊ฒ์ด ๋ถ๋ช ํ๋ฐ ์ / 24๋ฅผ ํ ๋นํฉ๋๊น? ๋ฐ๋๋ก ๋๊ท๋ชจ ์ง์ ์ ๊ฒฝ์ฐ / 24๋ฅผ ํ ๋นํ๊ณ 500 ๊ฐ์ ์ฅ์น๊ฐ ์์ต๋๋ค. ๋คํธ์ํฌ๋ฅผ ์ถ๊ฐํ๊ธฐ ๋งํ๋ฉด๋์ง๋ง ์ฆ์ ๋ชจ๋ ๊ฒ์ ์๊ฐํ๊ณ ์ถ์ต๋๋ค.
- ํํฐ๋ง ๊ท์น. ํ๋ก์ ํธ์์ ๋คํธ์ํฌ ๋ถ๋ฆฌ ๋ฐ ์ต๋ ๋ถํ ์ด ์๋ค๊ณ ๊ฐ์ ํ๋ ๊ฒฝ์ฐ. ๋ชจ๋ฒ ์ฌ๋ก๋ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋ณ๊ฒฝ๋ฉ๋๋ค. ์ด์ ์๋ PC ๋คํธ์ํฌ์ ํ๋ฆฐํฐ ๋คํธ์ํฌ๋ฅผ ๊ณต์ ํ์ง๋ง ์ด์ ๋ ์ด๋ฌํ ๋คํธ์ํฌ๋ฅผ ๊ณต์ ํ์ง ์๋ ๊ฒ์ด ์ผ๋ฐ์ ์ ๋๋ค. ์์์ ์ฌ์ฉํ๊ณ ํ์ํ์ง ์์ ๋ง์ ์๋ธ๋ท์ ์์ฑํ์ง ์๊ณ ๋ชจ๋ ์ฅ์น๋ฅผ ํ๋์ ๋คํธ์ํฌ๋ก ๊ฒฐํฉํ์ง ์๋ ๊ฒ์ด ์ข์ต๋๋ค.
- ๋ชจ๋ ๋ผ์ฐํฐ์ "๊ณจ๋ " ์ค์ . ์ ๊ฒ๋ค. ๊ณํ์ด ์๋ค๋ฉด. ๋ชจ๋ ๊ฒ์ ์ฆ์ ์์ธกํ๊ณ ๋ชจ๋ ์ค์ ์ด ๋์ผํ์ง ํ์ธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ฃผ์ ๋ชฉ๋ก๊ณผ IP ์ฃผ์๋ง ๋ค๋ฆ ๋๋ค. ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด ๋๋ฒ๊น ์๊ฐ์ด ์ค์ด๋ญ๋๋ค.
- ์กฐ์ง์ ์ธก๋ฉด์ ๊ธฐ์ ์ ์ธก๋ฉด๋ณด๋ค ๋ ์ค์ํ์ง ์์ต๋๋ค. ์ข ์ข ๊ฒ์ผ๋ฅธ ์ง์์ ๊ธฐ์ฑ ๊ตฌ์ฑ ๋ฐ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ด๋ฌํ ๊ถ์ฅ ์ฌํญ์ "์๋"์ผ๋ก ๋ฐ๋ฅด๊ธฐ ๋๋ฌธ์ ๊ถ๊ทน์ ์ผ๋ก ์ฒ์๋ถํฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค.
๋์ ๋ผ์ฐํ . ์กฐ๋์ด ์๋ OSPF๊ฐ ์ฌ์ฉ๋์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด๊ฒ์ ํ ์คํธ ๋ฒค์น์ ๋๋ค. ์ ํฌ ์กฐ๊ฑด์์ ๊ทธ๋ฐ ๊ฒ๋ค์ ์ค์ ํ๋ ๊ฒ์ด ๋ ํฅ๋ฏธ ๋กญ์ต๋๋ค.
๋ผ์ฐํฐ ๊ตฌ์ฑ์ ๊ฒ์ํ์ง ์์ ๊ฒ์ ๋ํด ์๋ฌด๋ ํ๋ฅผ ๋ด์ง ์์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ๋๋ ๋งํฌ๊ฐ ์ถฉ๋ถํ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๊ณ ๋ชจ๋ ๊ฒ์ด ์๊ตฌ ์ฌํญ์ ๋ฌ๋ ค ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฌผ๋ก ํ ์คํธ, ๋ ๋ง์ ํ ์คํธ๊ฐ ํ์ํฉ๋๋ค.
์ํด์๋ ๋ชจ๋๊ฐ ์์ ์ ํ๋ก์ ํธ๋ฅผ ์คํํ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ์ก์ธ์ค ๊ถํ์ด ๋ถ์ฌ๋ ์ ์์ต๋๋ค!!!
์ถ์ฒ : habr.com