샌드박스 VPN 서버로 설정
벚꽃 VPS 계약설치 우분투 20.04
이 일대는 포치포치와 GUI로만 해서 생략합니다.
최소한
10022
로 설정하고 글을 미리 쓴다OpenVPN 설치
귀찮아서 루트 사용자로 쉽게 했어요.
# apt-get update
# apt-get install openvpn libssl-dev openssl easy-rsa
인증 키 생성
초기 설정
# cd /etc/openvpn/easy-rsa
# ./easyrsa init-pki
# vim vars
KeyValue
EASYRSA_REQ_COUNTRY
국가.설정
JP
EASYRSA_REQ_PROVINCE도도부 현
EASYRSA_REQ_CITY
시내
EASYRSA_REQ_ORG
회사명개인이라면 적당히.
EASYRSA_REQ_EMAIL
전자 우편 주소
EASYRSA_REQ_OU
부서 이름?개인이라면 적당히.
EASYRSA_CA_EXPIRE
CA 인증서의 기간좀 길게 기르는 게 좋을 것 같아요.3650일에 설정된 기사도 있다.
EASYRSA_CERT_EXPIRE
증서 기한.이것도 길러.
설정
CA 인증서 작성
# cd /etc/openvpn/easy-rsa
# ./easyrsa build-ca
# cp pki/ca.crt /etc/openvpn
암호문이 들리기 때문에 1Password 등을 사용하여 적당한 암호문을 생성하고 사용한다.서버 인증서 만들기
# cd /etc/openvpn/easy-rsa
# ./easyrsa build-server-full server nopass
# cp pki/issued/server.crt /etc/openvpn
# cp pki/private/server.key /etc/openvpn
CA 인증서의 암호가 들리므로DH 매개변수 생성
# cd /etc/openvpn/easy-rsa
# ./easyrsa gen-dh
# cp pki/dh.pem /etc/openvpn
클라이언트 인증서 생성
# cd /etc/openvpn/easy-rsa
# ./easyrsa gen-crl
# cp pki/crl.pem /etc/openvpn
# chmod o+r /etc/openvpn/crl.pem
CA 인증서의 암호가 들리므로OpenVPN 설정
설정
# vim /etc/openvpn/server.conf
dhcp-option DNS
하면 이름을 해결할 수 없기 때문에 여기서 논평합니다./etc/openvpn/server.conf
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
crl-verify crl.pem
server 10.8.0.0 255.255.255.0
topology subnet
ifconfig-pool-persist /var/log/openvpn/ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "route 10.8.0.0 255.255.255.0"
# いろんな記事でDNS設定しろと書いてあるけどさくらVPSのDNS設定しても動かなかったので指定はしない
# push "dhcp-option DNS 133.242.0.3"
# push "dhcp-option DNS 133.242.0.4"
client-to-client
keepalive 10 120
cipher AES-256-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
log-append /var/log/openvpn/openvpn.log
verb 3
explicit-exit-notify 1
방화벽 구성
ufw 구성
# ufw default deny
# ufw allow 1194/udp
# ufw allow 10022 # 自分で設定したsshのポート
# ufw status
# ufw enable
전달 설정
# vim /etc/default/ufw
/etc/default/ufw- DEFAULT_FORWARD_POLICY="DROP"
+ DEFAULT_FORWARD_POLICY="ACCEPT"
# vim /etc/ufw/sysctl.conf
/etc/ufw/sysctl.conf- # net.ipv4.ip_forward=1
+ net.ipv4.ip_forward=1
IP 마스카라 설정
# ip -4 route ls | grep default | grep -Po '(?<=dev )(\S+)' | head -1
/etc/ufw/before.rules
의 수정 # vim /etc/ufw/before.rules
맨 위에 nat
의 설정을 삽입합니다.ens3
방금 정한nic의 이름을 입력하세요/etc/ufw/before.rules
+ *nat
+ :POSTROUTING ACCEPT [0:0]
+ -A POSTROUTING -s 10.8.0.0/24 -o ens3 -j MASQUERADE
+ COMMIT
# Don't delete these required lines, otherwise there will be errors
*filter
# ufw reload
마지막으로 벚꽃 VPS의 제어판에 그룹 필터 설정을 닫습니다OpenVPN 서버 시작
# service openvpn@server start
# service openvpn@server status
● [email protected] - OpenVPN connection to server
Loaded: loaded (/lib/systemd/system/[email protected]; enabled; vendor preset: enabled)
Active: active (running) since Wed 2021-12-29 17:56:51 JST; 45min ago
Docs: man:openvpn(8)
https://community.openvpn.net/openvpn/wiki/Openvpn24ManPage
https://community.openvpn.net/openvpn/wiki/HOWTO
Main PID: 601 (openvpn)
Status: "Initialization Sequence Completed"
Tasks: 1 (limit: 468)
Memory: 4.9M
CGroup: /system.slice/system-openvpn.slice/[email protected]
└─601 /usr/sbin/openvpn --daemon ovpn-server --status /run/openvpn/server.status 10 --cd /etc/openvpn --script-security 2 --config /etc/openvpn/server.conf --writepid /run/openvpn/server.pid
Dec 29 17:56:51 XXX systemd[1]: Starting OpenVPN connection to server...
Dec 29 17:56:51 XXX systemd[1]: Started OpenVPN connection to server.
active (running)
로 바뀌면 OK.자동 시작으로 설정# systemctl enable openvpn@server
고객을 위한 프로필 만들기
개인 키 생성
# cd /etc/openvpn/easy-rsa
# ./easyrsa build-client-full username
username
부분을 적당히 교체합니다.테스트 사용자로 설정할 때 미리 쓰기# cd /etc/openvpn/easy-rsa
# cp /etc/openvpn/ca.crt ~ubuntu
# cp pki/issued/testuser.crt ~ubuntu
# cp pki/private/testuser.key ~ubuntu
# chown ubuntu:ubuntu ~ubuntu/ca.crt
# chown ubuntu:ubuntu ~ubuntu/testuser.crt
# chown ubuntu:ubuntu ~ubuntu/testuser.key
OpenVPN Connect용 설정 파일 만들기
여기에는
ubuntu
사용자가 수행합니다.$ vim vpn.ovpn
client
dev tun
proto udp
tun-mtu 1350
# `192.0.2.0` の部分はこのサーバのグローバルIPアドレスを指定する
remote 192.0.2.0 1194
resolv-retry infinite
nobind
persist-key
persist-tun
# ca.crtの中身を貼り付ける
# grep -A 30 'BEGIN CERTIFICATE' ca.crt
# で抽出できる
<ca>
...
</ca>
# testuser.crtの中身を貼り付ける
# grep -A 30 'BEGIN CERTIFICATE' testuser.crt
# で抽出できる
<cert>
...
</cert>
# testuser.keyの中身を貼り付ける
<key>
...
</key>
comp-lzo
verb 3
OpenVPN Connect를 로컬로 가져오는 경우 안전하게 VPN으로 이동해야 합니다.원활하지 않을 때
vpn.ovpn
에 로그가 있으므로 오류 메시지가 표시되고 로그가 깨집니다.
Reference
이 문제에 관하여(샌드박스 VPN 서버로 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/taka0125/articles/36ad26c1cb427b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)