VPN(가상 사설망, Virtual Private Network)은 공용 네트워크를 통해 안전한 연결을 제공하는 기술입니다. 기업과 개인 사용자는 VPN을 사용하여 네트워크 보안을 강화하고 원격 액세스를 안전하게 유지할 수 있습니다. 리눅스 환경에서 VPN을 설정하는 방법을 자세히 설명하겠습니다.
Ubuntu 및 Debian 기반 시스템에서 OpenVPN을 설치하려면 다음 명령어를 실행합니다.
sudo apt update
sudo apt install openvpn easy-rsa
CentOS 및 RHEL 기반 시스템에서는 다음 명령어를 사용합니다.
sudo yum install -y epel-release
sudo yum install -y openvpn easy-rsa
VPN의 보안을 위해 자체 인증 기관(CA)을 설정하고 인증서를 생성해야 합니다.
make-cadir ~/openvpn-ca
cd ~/openvpn-ca
source vars
./clean-all
./build-ca
./build-key-server server
./build-dh
위 과정에서 서버 키와 CA 인증서를 생성합니다.
기본 설정 파일을 복사한 후 수정합니다.
sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
sudo gzip -d /etc/openvpn/server.conf.gz
/etc/openvpn/server.conf
파일을 수정하여 VPN 설정을 최적화합니다.
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
cipher AES-256-CBC
auth SHA256
dh dh2048.pem
keepalive 10 120
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
log-append /var/log/openvpn.log
verb 3
VPN이 정상적으로 동작하려면 방화벽과 IP 포워딩을 활성화해야 합니다.
sudo ufw allow 1194/udp
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
위 설정 후, 방화벽 규칙을 영구적으로 저장합니다.
sudo netfilter-persistent save
sudo netfilter-persistent reload
sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server
클라이언트가 VPN에 접속하려면 클라이언트 인증서를 생성해야 합니다.
cd ~/openvpn-ca
source vars
./build-key client1
클라이언트 설정 파일(client.ovpn
)을 다음과 같이 구성합니다.
client
dev tun
proto udp
remote your-server-ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
auth SHA256
cipher AES-256-CBC
verb 3
클라이언트에 ca.crt
, client1.crt
, client1.key
파일을 복사한 후 openvpn --config client.ovpn
명령어로 접속할 수 있습니다.
VPN 속도를 향상시키기 위해 MTU 값을 조정합니다.
mssfix 1400
tun-mtu 1500
멀티코어 CPU를 활용하여 VPN 성능을 향상시킬 수 있습니다.
sndbuf 393216
rcvbuf 393216
push "sndbuf 393216"
push "rcvbuf 393216"
로그 파일이 커지는 것을 방지하기 위해 로그 회전을 설정합니다.
log-append /var/log/openvpn.log
status /var/log/openvpn-status.log
verb 3
리눅스에서 OpenVPN을 설정하여 보안성과 성능을 강화하는 방법을 알아보았습니다. 기본적인 설정뿐만 아니라 성능 최적화 방법까지 적용하면 더욱 안정적이고 빠른 VPN 서비스를 제공할 수 있습니다. 보안 강화를 위해 정기적으로 인증서를 갱신하고 방화벽 설정을 점검하는 것이 중요합니다.
감사합니다.
안녕하세요. 하얀 도화지 남편입니다. 오늘은 윈도우에서 게임 최적화 설정하는 방법에 대해서 알아보려고합니다. 1. 윈도우 최적화…
안녕하세요. 흰도화지 남편입니다. 오늘은 윈도우 블루스크린 오류 해결법에 대해서 공부해 보도록 하겠습니다. 블루스크린 오류란? 블루스크린…
안녕하세요. 흰도화지 남편입니다. 오늘은 SSD와HDD의 차이점과 더블어 Windows 11 최적화 하는 방법에 대해 공부해 보도록…
안녕하세요. 하얀 도화지 남편입니다. 오늘은 윈도우에서 자주 사용하는 명령어 20가지 및 활용 방법에 대해 공부해보도록…