Telegram ๋ด‡์„ ์‚ฌ์šฉํ•œ OpenVPN์˜ XNUMX๋‹จ๊ณ„ ์ธ์ฆ

์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ์—ฐ๊ฒฐ ์‹œ ํ™•์ธ ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” Telegram ๋ด‡์œผ๋กœ XNUMX๋‹จ๊ณ„ ์ธ์ฆ์„ ํ™œ์„ฑํ™”ํ•˜๊ธฐ ์œ„ํ•ด OpenVPN ์„œ๋ฒ„๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

OpenVPN์€ ๋‚ด๋ถ€ ์กฐ์ง ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์ง์›์˜ ๋ณด์•ˆ ์•ก์„ธ์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์ž˜ ์•Œ๋ ค์ง„ ๋ฌด๋ฃŒ ์˜คํ”ˆ ์†Œ์Šค VPN ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค.

VPN ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์ธ์ฆ์œผ๋กœ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ํ‚ค์™€ ์‚ฌ์šฉ์ž ๋กœ๊ทธ์ธ/๋น„๋ฐ€๋ฒˆํ˜ธ์˜ ์กฐํ•ฉ์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋™์‹œ์— ํด๋ผ์ด์–ธํŠธ์— ์ €์žฅ๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” ์ „์ฒด ์„ธํŠธ๋ฅผ ์ ์ ˆํ•œ ๋ณด์•ˆ ์ˆ˜์ค€์„ ์ œ๊ณตํ•˜์ง€ ์•Š๋Š” ๋‹จ์ผ ์š”์†Œ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ ์ปดํ“จํ„ฐ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ์–ป์€ ๊ณต๊ฒฉ์ž๋Š” VPN ์„œ๋ฒ„์—๋„ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํŠนํžˆ Windows๋ฅผ ์‹คํ–‰ํ•˜๋Š” ์ปดํ“จํ„ฐ์—์„œ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒฝ์šฐ์— ํ•ด๋‹น๋ฉ๋‹ˆ๋‹ค.

๋‘ ๋ฒˆ์งธ ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌด๋‹จ ์•ก์„ธ์Šค ์œ„ํ—˜์ด 99% ๊ฐ์†Œํ•˜๊ณ  ์‚ฌ์šฉ์ž์˜ ์—ฐ๊ฒฐ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ „ํ˜€ ๋ณต์žกํ•ด์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ง€๊ธˆ ๋ฐ”๋กœ ์˜ˆ์•ฝํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ตฌํ˜„์„ ์œ„ํ•ด์„œ๋Š” ํ•„์š”์— ๋”ฐ๋ผ ๋ฌด๋ฃŒ ๊ด€์„ธ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํƒ€์‚ฌ ์ธ์ฆ ์„œ๋ฒ„ multifactor.ru์— ์—ฐ๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์šด์˜ ์›์น™

  1. OpenVPN์€ ์ธ์ฆ์„ ์œ„ํ•ด openvpn-plugin-auth-pam ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  2. ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์„œ๋ฒ„์—์„œ ์‚ฌ์šฉ์ž์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ํ™•์ธํ•˜๊ณ  Multifactor ์„œ๋น„์Šค์˜ RADIUS ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•ด ๋‘ ๋ฒˆ์งธ ์š”์†Œ๋ฅผ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.
  3. Multifactor๋Š” Telegram ๋ด‡์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์—๊ฒŒ ์•ก์„ธ์Šค๋ฅผ ํ™•์ธํ•˜๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋ƒ…๋‹ˆ๋‹ค.
  4. ์‚ฌ์šฉ์ž๋Š” ํ…”๋ ˆ๊ทธ๋žจ ์ฑ„ํŒ…์—์„œ ์•ก์„ธ์Šค ์š”์ฒญ์„ ํ™•์ธํ•˜๊ณ  VPN์— ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

OpenVPN ์„œ๋ฒ„ ์„ค์น˜

OpenVPN ์„ค์น˜ ๋ฐ ๊ตฌ์„ฑ ๊ณผ์ •์„ ์„ค๋ช…ํ•˜๋Š” ๊ธฐ์‚ฌ๊ฐ€ ์ธํ„ฐ๋„ท์— ๋งŽ์ด ์žˆ์œผ๋ฏ€๋กœ ์ค‘๋ณต๋˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ๋„์›€์ด ํ•„์š”ํ•˜๋ฉด ๊ธฐ์‚ฌ ๋ ๋ถ€๋ถ„์— ํŠœํ† ๋ฆฌ์–ผ์— ๋Œ€ํ•œ ์—ฌ๋Ÿฌ ๋งํฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค๋‹จ๊ณ„ ์„ค์ •

์ด๋™ ๋‹ค๋‹จ๊ณ„ ์ œ์–ด ์‹œ์Šคํ…œ, "๋ฆฌ์†Œ์Šค" ์„น์…˜์œผ๋กœ ์ด๋™ํ•˜์—ฌ ์ƒˆ VPN์„ ์ƒ์„ฑํ•˜์„ธ์š”.
์ผ๋‹จ ์ƒ์„ฑ๋˜๋ฉด ๋‹ค์Œ ๋‘ ๊ฐ€์ง€ ์˜ต์…˜์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. NAS ์‹๋ณ„์ž ะธ ๊ณต์œ  ๋น„๋ฐ€, ํ›„์† ๊ตฌ์„ฑ์— ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

Telegram ๋ด‡์„ ์‚ฌ์šฉํ•œ OpenVPN์˜ XNUMX๋‹จ๊ณ„ ์ธ์ฆ

"๊ทธ๋ฃน" ์„น์…˜์—์„œ "๋ชจ๋“  ์‚ฌ์šฉ์ž" ๊ทธ๋ฃน ์„ค์ •์œผ๋กœ ์ด๋™ํ•˜์—ฌ "๋ชจ๋“  ๋ฆฌ์†Œ์Šค" ํ”Œ๋ž˜๊ทธ๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ํŠน์ • ๊ทธ๋ฃน์˜ ์‚ฌ์šฉ์ž๋งŒ VPN ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ ๊ทธ๋ฃน "VPN ์‚ฌ์šฉ์ž"๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ํ…”๋ ˆ๊ทธ๋žจ์„ ์ œ์™ธํ•œ ๋ชจ๋“  ์ธ์ฆ ๋ฐฉ๋ฒ•์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ์ƒ์„ฑ๋œ VPN ๋ฆฌ์†Œ์Šค์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Œ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

Telegram ๋ด‡์„ ์‚ฌ์šฉํ•œ OpenVPN์˜ XNUMX๋‹จ๊ณ„ ์ธ์ฆ

"์‚ฌ์šฉ์ž" ์„น์…˜์—์„œ VPN์— ์•ก์„ธ์Šคํ•  ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•˜๊ณ  "VPN ์‚ฌ์šฉ์ž" ๊ทธ๋ฃน์— ์ถ”๊ฐ€ํ•œ ํ›„ ๋‘ ๋ฒˆ์งธ ์ธ์ฆ ์š”์†Œ๋ฅผ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ๋งํฌ๋ฅผ ๋ณด๋ƒ…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ๋กœ๊ทธ์ธ์€ VPN ์„œ๋ฒ„์˜ ๋กœ๊ทธ์ธ๊ณผ ์ผ์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Telegram ๋ด‡์„ ์‚ฌ์šฉํ•œ OpenVPN์˜ XNUMX๋‹จ๊ณ„ ์ธ์ฆ

OpenVPN ์„œ๋ฒ„ ์„ค์ •

ํŒŒ์ผ ์—ด๊ธฐ /etc/openvpn/server.conf PAM ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ์„ ์œ„ํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so openvpn

ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ๋””๋ ‰ํ† ๋ฆฌ์— ์œ„์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. /usr/lib/openvpn/ํ”Œ๋Ÿฌ๊ทธ์ธ/ ๋˜๋Š” /usr/lib64/openvpn/ํ”Œ๋Ÿฌ๊ทธ์ธ/ ๊ท€ํ•˜์˜ ์‹œ์Šคํ…œ์— ๋”ฐ๋ผ.

๋‹ค์Œ์œผ๋กœ pam_radius_auth ๋ชจ๋“ˆ์„ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

$ sudo yum install pam_radius

ํŽธ์ง‘ํ•  ํŒŒ์ผ์„ ์—ฝ๋‹ˆ๋‹ค. /etc/pam_radius.conf Multifactor์˜ RADIUS ์„œ๋ฒ„ ์ฃผ์†Œ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

radius.multifactor.ru   shared_secret   40

์ง€์—ญ :

  • radius.multifactor.ru โ€” ์„œ๋ฒ„ ์ฃผ์†Œ
  • shared_secret - ํ•ด๋‹น VPN ์„ค์ • ๋งค๊ฐœ๋ณ€์ˆ˜์—์„œ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.
  • 40์ดˆ - ์—ฌ์œ ๊ฐ€ ํฐ ์š”์ฒญ ๋Œ€๊ธฐ ์‹œ๊ฐ„ ์ดˆ๊ณผ

๋‚˜๋จธ์ง€ ์„œ๋ฒ„๋Š” ์‚ญ์ œํ•˜๊ฑฐ๋‚˜ ์ฃผ์„ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. (์ฒ˜์Œ์— ์„ธ๋ฏธ์ฝœ๋ก ์„ ์ž…๋ ฅํ•˜์„ธ์š”.)

๋‹ค์Œ์œผ๋กœ ์„œ๋น„์Šค ์œ ํ˜• openvpn์— ๋Œ€ํ•œ ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

$ sudo vi /etc/pam.d/openvpn

๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฑธ ์“ฐ์„ธ์š”

auth    required pam_radius_auth.so skip_passwd client_id=[NAS-IDentifier]
auth    substack     password-auth
account substack     password-auth

์ฒซ ๋ฒˆ์งธ ์ค„์€ PAM ๋ชจ๋“ˆ pam_radius_auth๋ฅผ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค:

  • Skip_passwd - RADIUS Multifactor ์„œ๋ฒ„๋กœ์˜ ์‚ฌ์šฉ์ž ๋น„๋ฐ€๋ฒˆํ˜ธ ์ „์†ก์„ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค(์•Œ ํ•„์š”๊ฐ€ ์—†์Œ).
  • client_id โ€” [NAS-Identifier]๋ฅผ VPN ๋ฆฌ์†Œ์Šค ์„ค์ •์˜ ํ•ด๋‹น ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.
    ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋‹ค์Œ์— ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์— ๋Œ€ํ•œ ๋ฌธ์„œ.

๋‘ ๋ฒˆ์งธ ๋ฐ ์„ธ ๋ฒˆ์งธ ์ค„์—๋Š” ๋‘ ๋ฒˆ์งธ ์ธ์ฆ ์š”์†Œ์™€ ํ•จ๊ป˜ ์„œ๋ฒ„์˜ ๋กœ๊ทธ์ธ, ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ฐ ์‚ฌ์šฉ์ž ๊ถŒํ•œ์— ๋Œ€ํ•œ ์‹œ์Šคํ…œ ํ™•์ธ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

OpenVPN ๋‹ค์‹œ ์‹œ์ž‘

$ sudo systemctl restart openvpn@server

ํด๋ผ์ด์–ธํŠธ ์„ค์ •

ํด๋ผ์ด์–ธํŠธ ๊ตฌ์„ฑ ํŒŒ์ผ์— ์‚ฌ์šฉ์ž ๋กœ๊ทธ์ธ ๋ฐ ๋น„๋ฐ€๋ฒˆํ˜ธ์— ๋Œ€ํ•œ ์š”์ฒญ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.

auth-user-pass

ะŸั€ะพะฒะตั€ะบะฐ

OpenVPN ํด๋ผ์ด์–ธํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•œ ํ›„ ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”. ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡์€ ๋‘ ๊ฐœ์˜ ๋ฒ„ํŠผ์ด ์žˆ๋Š” ์•ก์„ธ์Šค ์š”์ฒญ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค.

Telegram ๋ด‡์„ ์‚ฌ์šฉํ•œ OpenVPN์˜ XNUMX๋‹จ๊ณ„ ์ธ์ฆ

ํ•˜๋‚˜์˜ ๋ฒ„ํŠผ์€ ์•ก์„ธ์Šค๋ฅผ ํ—ˆ์šฉํ•˜๊ณ  ๋‘ ๋ฒˆ์งธ ๋ฒ„ํŠผ์€ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค.

์ด์ œ ํด๋ผ์ด์–ธํŠธ์— ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋‘ ๋ฒˆ์งธ ์š”์†Œ๋Š” ๋ฌด๋‹จ ์•ก์„ธ์Šค๋กœ๋ถ€ํ„ฐ OpenVPN ์„œ๋ฒ„๋ฅผ ์•ˆ์ •์ ์œผ๋กœ ๋ณดํ˜ธํ•ฉ๋‹ˆ๋‹ค.

๋ญ”๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ

๋ˆ„๋ฝ๋œ ํ•ญ๋ชฉ์ด ์—†๋Š”์ง€ ์ˆœ์ฐจ์ ์œผ๋กœ ํ™•์ธํ•˜์„ธ์š”.

  • ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์„ค์ •๋œ OpenVPN์„ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋ฒ„์— ์‚ฌ์šฉ์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค
  • ์„œ๋ฒ„๋Š” UDP ํฌํŠธ 1812๋ฅผ ํ†ตํ•ด radius.multifactor.ru ์ฃผ์†Œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • NAS ์‹๋ณ„์ž ๋ฐ ๊ณต์œ  ๋น„๋ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ง€์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋™์ผํ•œ ๋กœ๊ทธ์ธ์„ ๊ฐ€์ง„ ์‚ฌ์šฉ์ž๊ฐ€ Multifactor ์‹œ์Šคํ…œ์—์„œ ์ƒ์„ฑ๋˜์—ˆ์œผ๋ฉฐ VPN ์‚ฌ์šฉ์ž ๊ทธ๋ฃน์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ๋ถ€์—ฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๊ฐ€ ํ…”๋ ˆ๊ทธ๋žจ์„ ํ†ตํ•ด ์ธ์ฆ ๋ฐฉ๋ฒ•์„ ๊ตฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด์ „์— OpenVPN์„ ์„ค์ •ํ•œ ์ ์ด ์—†๋‹ค๋ฉด ๋‹ค์Œ ๋‚ด์šฉ์„ ์ฝ์–ด๋ณด์„ธ์š”. ํ™•์žฅ ๊ธฐ์‚ฌ.

์ง€์นจ์€ CentOS 7์˜ ์˜ˆ์ œ๋กœ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€