XNUMX์ ๋ง์ WireGuard VPN ํฐ๋ ๊ฐ๋ฐ์๋ ์ ์ํ์ต๋๋ค. ํจ์น ์ธํธ, ์ด๋ VPN ํฐ๋๋ง ์ํํธ์จ์ด๋ฅผ Linux ์ปค๋์ ์ผ๋ถ๋ก ๋ง๋ญ๋๋ค. ๊ทธ๋ฌ๋ "์์ด๋์ด"์ ์ ํํ ๊ตฌํ ๋ ์ง๋ ์์ง ์๋ ค์ง์ง ์์์ต๋๋ค. ์ปท ์๋์์ ์ด ๋๊ตฌ์ ๋ํด ๋ ์์ธํ ์ค๋ช
ํ๊ฒ ์ต๋๋ค.
/ ์ฌ์ง ์ฌ๊ท์ด ํ๋ฐ์ฝ CC
ํ๋ก์ ํธ์ ๋ํด ๊ฐ๋จํ
WireGuard๋ Edge Security์ CEO์ธ Jason A. Donenfeld๊ฐ ๋ง๋ ์ฐจ์ธ๋ VPN ํฐ๋์
๋๋ค. ์ด ํ๋ก์ ํธ๋ ๋ค์๊ณผ ๊ฐ์ด ๊ฐ๋ฐ๋์์ต๋๋ค. ์ฝ๊ฒ ํ OpenVPN ๋ฐ IPsec์ ๋ํ ๋น ๋ฅธ ๋์์
๋๋ค. ์ ํ์ ์ฒซ ๋ฒ์งธ ๋ฒ์ ์๋ 4์ค์ ์ฝ๋๋ง ํฌํจ๋์ด ์์์ต๋๋ค. ๋น๊ต๋ฅผ ์ํด OpenVPN์๋ ์ฝ 120๋ง ํ์ ์ด ์๊ณ IPSec์๋ 420๋ง ํ์ ์ด ์์ต๋๋ค.
์ ~์ ๋ฐ๋ฅด๋ฉด ๊ฐ๋ฐ์๋ WireGuard๋ฅผ ์ฝ๊ฒ ๊ตฌ์ฑํ๊ณ ํ๋กํ ์ฝ ๋ณด์์ ๋ฌ์ฑํ ์ ์์ต๋๋ค. ๊ฒ์ฆ๋ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ํตํด. ๋คํธ์ํฌ๋ฅผ ๋ณ๊ฒฝํ ๋: Wi-Fi, LTE ๋๋ ์ด๋๋ท์ ๋งค๋ฒ VPN ์๋ฒ์ ๋ค์ ์ฐ๊ฒฐํด์ผ ํฉ๋๋ค. WireGuard ์๋ฒ๋ ์ฌ์ฉ์๊ฐ ์ IP ์ฃผ์๋ฅผ ๋ฐ์ ๊ฒฝ์ฐ์๋ ์ฐ๊ฒฐ์ ์ข
๋ฃํ์ง ์์ต๋๋ค.
WireGuard๊ฐ ์๋ Linux ์ปค๋์ฉ์ผ๋ก ์ค๊ณ๋์๋ค๋ ์ฌ์ค์๋ ๋ถ๊ตฌํ๊ณ ๊ฐ๋ฐ์๋ ๋ณด์ดํ Android ๊ธฐ๊ธฐ์ฉ ๋๊ตฌ์ ํด๋์ฉ ๋ฒ์ ์ ๋ํด ์ค๋ช
ํฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์
์ ์์ง ์์ ํ ๊ฐ๋ฐ๋์ง ์์์ง๋ง ์ง๊ธ ์ฌ์ฉํด ๋ณผ ์ ์์ต๋๋ค. ์ด๋ฅผ ์ํด์๋ ๋น์ ์ด ํ์ํฉ๋๋ค ํ
์คํฐ ์ค ํ ๋ช
์ด ๋๋ค.
์ผ๋ฐ์ ์ผ๋ก WireGuard๋ ๊ฝค ์ ๋ช
ํ๋ฉฐ ์ฌ์ง์ด ๊ตฌํ Mullvad ๋ฐ AzireVPN๊ณผ ๊ฐ์ ์ฌ๋ฌ VPN ์ ๊ณต์
์ฒด. ์จ๋ผ์ธ์ ๊ฒ์๋จ ๋ค์ ์ค์ ๊ฐ์ด๋ ์ด ๊ฒฐ์ . ์๋ฅผ ๋ค์ด, ๊ฐ์ด๋๊ฐ ์์ด์, ์ฌ์ฉ์๊ฐ ๋ง๋ ๊ฐ์ด๋๊ฐ ์์ผ๋ฉฐ, ํ๋ก์ ํธ ์์ฑ์๊ฐ ์ค๋นํ.
๊ธฐ์ ์
ะ ๊ณต์ ๋ฌธ์ (p. 18) WireGuard์ ์ฒ๋ฆฌ๋์ OpenVPN์ ์ฒ๋ฆฌ๋๋ณด๋ค 1011๋ฐฐ ๋ ๋์ต๋๋ค(๊ฐ๊ฐ 258Mbit/s ๋ 881Mbit/s). WireGuard๋ ๋ํ Linux IPsec์ฉ ํ์ค ์๋ฃจ์
๋ณด๋ค ์์ ์์ต๋๋ค. ์ด๋ XNUMXMbit/s๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ํ ์ค์ ์ ์ฉ์ด์ฑ์์๋ ์ด๋ฅผ ๋ฅ๊ฐํฉ๋๋ค.
ํค๊ฐ ๊ตํ๋๊ณ (VPN ์ฐ๊ฒฐ์ SSH์ ๋งค์ฐ ์ ์ฌํ๊ฒ ์ด๊ธฐํ๋จ) ์ฐ๊ฒฐ์ด ์ค์ ๋ ํ WireGuard๋ ๋ค๋ฅธ ๋ชจ๋ ์์
์ ์์ฒด์ ์ผ๋ก ์ฒ๋ฆฌํฉ๋๋ค. ๋ผ์ฐํ
, ์ํ ์ ์ด ๋ฑ์ ๋ํด ๊ฑฑ์ ํ ํ์๊ฐ ์์ต๋๋ค. ์ถ๊ฐ ๊ตฌ์ฑ ๋
ธ๋ ฅ์ ๋จ์ง ๋์นญ ์ํธํ๋ฅผ ์ฌ์ฉํ๋ ค๋ ๊ฒฝ์ฐ ํ์ํฉ๋๋ค.
/ ์ฌ์ง ์ค๋์ค ํธ์ด๋น์๋ฅด๊ทธ CC
์ค์นํ๋ ค๋ฉด 4.1 ์ด์ ์ Linux ์ปค๋์ด ํฌํจ๋ ๋ฐฐํฌํ์ด ํ์ํฉ๋๋ค. ์ฃผ์ Linux ๋ฐฐํฌํ์ ์ ์ฅ์์์ ์ฐพ์ ์ ์์ต๋๋ค.
$ sudo add-apt-repository ppa:hda-me/wireguard
$ sudo apt update
$ sudo apt install wireguard-dkms wireguard-tools
xakep.ru ํธ์ง์๋ ์์ค ํ
์คํธ์์ ์์ฒด ์กฐ๋ฆฝ๋ ์ฝ๋ค๊ณ ์ง์ ํ์ต๋๋ค. ์ธํฐํ์ด์ค๋ฅผ ์ด๊ณ ๊ณต๊ฐ ๋ฐ ๊ฐ์ธ ํค๋ฅผ ์์ฑํ๋ ๊ฒ์ผ๋ก ์ถฉ๋ถํฉ๋๋ค.
$ sudo ip link add dev wg0 type wireguard
$ wg genkey | tee privatekey | wg pubkey > publickey
์์ด์ด ๊ฐ๋ ์ฌ์ฉํ์ง ์๋๋ค ์ํธํํ ๊ณต๊ธ์์ ์์
ํ๊ธฐ ์ํ ์ธํฐํ์ด์ค ์ํธ ํํ. ๋์ ์คํธ๋ฆผ ์ํธ๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. ChaCha20, ์ํธํ ๋ชจ์กฐ ์ฝ์
Poly1305 ๋ฐ ๋
์ ์ํธํ ํด์ ๊ธฐ๋ฅ.
๋น๋ฐ ํค๋ ๋ค์์ ์ฌ์ฉํ์ฌ ์์ฑ๋ฉ๋๋ค. Diffie-Hellman ํ๋กํ ์ฝ ํ์ ๊ณก์ ์ ๊ธฐ๋ฐ์ผ๋ก ์ปค๋ธ 25519. ํด์ฑํ ๋ ๋ค์์ ์ฌ์ฉํฉ๋๋ค. ํด์ ํจ์ ๋ธ๋ ์ดํฌ 2 ะธ ์ญํด์. ํ์์คํฌํ ํ์์ผ๋ก ์ธํด TAI64N ํ๋กํ ์ฝ์ ํ์์คํฌํ ๊ฐ์ด ๋ ์์ ํจํท์ ํ๊ธฐํฉ๋๋ค. DoS ๋ฐฉ์ง- ะธ ์ฌ์ ๊ณต๊ฒฉ.
์ด ๊ฒฝ์ฐ WireGuard๋ ioctl ํจ์๋ฅผ ์ฌ์ฉํ์ฌ I/O๋ฅผ ์ ์ดํฉ๋๋ค(์ด์ ์ ์ฌ์ฉ๋จ). ๋ท ๋งํฌ), ์ฝ๋๊ฐ ๋์ฑ ๊น๋ํ๊ณ ๋จ์ํด์ง๋๋ค. ์ด๋ฅผ ์ดํด๋ณด๋ฉด ํ์ธํ ์ ์์ต๋๋ค. ๊ตฌ์ฑ ์ฝ๋.
๊ฐ๋ฐ์ ๊ณํ
ํ์ฌ WireGuard๋ ํธ๋ฆฌ ์ธ๋ถ ์ปค๋ ๋ชจ๋์
๋๋ค. ํ์ง๋ง ํ๋ก์ ํธ์ ์ ์๋ Jason Donenfeld์
๋๋ค. ะณะพะฒะพัะธั, Linux ์ปค๋์์ ์์ ํ ๊ตฌํ์ ํ ๋๊ฐ ์์ต๋๋ค. ๋ค๋ฅธ ์๋ฃจ์
๋ณด๋ค ๋ ๊ฐ๋จํ๊ณ ์์ ์ ์ด๊ธฐ ๋๋ฌธ์
๋๋ค. ์ด์ ๋ํด ์ ์ด์จ ะฟะพะดะดะตัะถะธะฒะฐะตั Linus Torvalds ์์ ๋ WireGuard ์ฝ๋๋ฅผ "์์ ์ํ"์ด๋ผ๊ณ ๋ถ๋ ์ต๋๋ค.
๊ทธ๋ฌ๋ WireGuard๊ฐ ์ปค๋์ ๋์
๋ ์ ํํ ๋ ์ง์ ๋ํด ๋งํ๋ ์ฌ๋์ ์๋ฌด๋ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฑฐ์ ~ ์๋๋ค ์ด๋ 4.18์ Linux ์ปค๋ 4.19 ๋ฆด๋ฆฌ์ค์์ ๋ฐ์ํฉ๋๋ค. ๊ทธ๋ฌ๋ ๊ฐ๊น์ด ๋ฏธ๋์ ๋ฒ์ 5.0 ๋๋ XNUMX์์ ์ด๋ฌํ ์ผ์ด ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค.
WireGuard๊ฐ ์ปค๋์ ์ถ๊ฐ๋๋ฉด ๊ฐ๋ฐ์๋ ~ ์ถ๋ค. Android ์ฅ์น์ฉ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ง๋ฌด๋ฆฌํ๊ณ iOS์ฉ ์ ํ๋ฆฌ์ผ์ด์
์์ฑ์ ์์ํ์ธ์. ๋ํ Go ๋ฐ Rust์์ ๊ตฌํ์ ์๋ฃํ๊ณ ์ด๋ฅผ macOS, Windows ๋ฐ BSD๋ก ํฌํ
ํ ๊ณํ๋ ์์ต๋๋ค. ๋ํ ๋ณด๋ค "์ด๊ตญ์ ์ธ ์์คํ
"์ ์ํด WireGuard๋ฅผ ๊ตฌํํ ๊ณํ์
๋๋ค. DPDK, FPGA, ๊ทธ๋ฆฌ๊ณ ๋ค๋ฅธ ๋ง์ ํฅ๋ฏธ๋ก์ด ๊ฒ๋ค. ๋ชจ๋ ๋ชฉ๋ก์ ๋์ ์์ต๋๋ค. ํ ์ผ ๋ชฉ๋ก ํ๋ก์ ํธ์ ์ ์.
์ถ์ : ๋น์ฌ ๋ธ๋ก๊ทธ์ ๋ช ๊ฐ์ง ์ถ๊ฐ ๊ธฐ์ฌ:
์ฐ๋ฆฌ ํ๋์ ์ฃผ์ ๋ฐฉํฅ์ ํด๋ผ์ฐ๋ ์๋น์ค ์ ๊ณต์
๋๋ค.
๊ฐ์ ์ธํ๋ผ(IaaS) | PCI DSS ํธ์คํ
| ํด๋ผ์ฐ๋ FZ-152 | SAP ํธ์คํ
| ๊ฐ์ ์คํ ๋ฆฌ์ง | ํด๋ผ์ฐ๋์ ๋ฐ์ดํฐ ์ํธํ | ํด๋ผ์ฐ๋ ์คํ ๋ฆฌ์ง
์ถ์ฒ : habr.com