mirror of
https://github.com/angristan/wireguard-install.git
synced 2024-11-24 05:56:02 +03:00
parent
1981429774
commit
0e4ef1e1e4
2
.github/main.workflow
vendored
2
.github/main.workflow
vendored
@ -5,5 +5,5 @@ workflow "ShellCheck" {
|
|||||||
|
|
||||||
action "shellcheck" {
|
action "shellcheck" {
|
||||||
uses = "actions/bin/shellcheck@master"
|
uses = "actions/bin/shellcheck@master"
|
||||||
args = "wireguard-install.sh -e SC1091"
|
args = "wireguard-install.sh -e SC1091 SC2034"
|
||||||
}
|
}
|
||||||
|
@ -38,6 +38,8 @@ fi
|
|||||||
SERVER_PUB_IPV4=$(ip addr | grep 'inet' | grep -v inet6 | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -oE '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1)
|
SERVER_PUB_IPV4=$(ip addr | grep 'inet' | grep -v inet6 | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -oE '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1)
|
||||||
read -rp "IPv4 or IPv6 public address: " -e -i "$SERVER_PUB_IPV4" SERVER_PUB_IP
|
read -rp "IPv4 or IPv6 public address: " -e -i "$SERVER_PUB_IPV4" SERVER_PUB_IP
|
||||||
|
|
||||||
|
read -rp "Did you enter an IPv6 address? (y/n) " -e -i n SERVER_PUB_IPV6_USED
|
||||||
|
|
||||||
# Detect public interface and pre-fill for the user
|
# Detect public interface and pre-fill for the user
|
||||||
SERVER_PUB_NIC="$(ip -4 route ls | grep default | grep -Po '(?<=dev )(\S+)' | head -1)"
|
SERVER_PUB_NIC="$(ip -4 route ls | grep default | grep -Po '(?<=dev )(\S+)' | head -1)"
|
||||||
read -rp "Public interface: " -e -i "$SERVER_PUB_NIC" SERVER_PUB_NIC
|
read -rp "Public interface: " -e -i "$SERVER_PUB_NIC" SERVER_PUB_NIC
|
||||||
@ -67,6 +69,12 @@ read -rp "First DNS resolver to use for the client: " -e -i "$CLIENT_DNS_1" CLIE
|
|||||||
CLIENT_DNS_2="176.103.130.131"
|
CLIENT_DNS_2="176.103.130.131"
|
||||||
read -rp "Second DNS resolver to use for the client: " -e -i "$CLIENT_DNS_2" CLIENT_DNS_2
|
read -rp "Second DNS resolver to use for the client: " -e -i "$CLIENT_DNS_2" CLIENT_DNS_2
|
||||||
|
|
||||||
|
if [[ $SERVER_PUB_IPV6_USED = 'y' ]]; then
|
||||||
|
ENDPOINT="[$SERVER_PUB_IP]:$SERVER_PORT"
|
||||||
|
else
|
||||||
|
ENDPOINT="$SERVER_PUB_IP:$SERVER_PORT"
|
||||||
|
fi
|
||||||
|
|
||||||
# Install WireGuard tools and module
|
# Install WireGuard tools and module
|
||||||
if [[ "$OS" = 'ubuntu' ]]; then
|
if [[ "$OS" = 'ubuntu' ]]; then
|
||||||
add-apt-repository ppa:wireguard/wireguard
|
add-apt-repository ppa:wireguard/wireguard
|
||||||
@ -121,7 +129,7 @@ DNS = $CLIENT_DNS_1,$CLIENT_DNS_2" > "$HOME/$SERVER_WG_NIC-client.conf"
|
|||||||
# Add the server as a peer to the client
|
# Add the server as a peer to the client
|
||||||
echo "[Peer]
|
echo "[Peer]
|
||||||
PublicKey = $SERVER_PUB_KEY
|
PublicKey = $SERVER_PUB_KEY
|
||||||
Endpoint = $SERVER_PUB_IP:$SERVER_PORT
|
Endpoint = $ENDPOINT
|
||||||
AllowedIPs = 0.0.0.0/0,::/0" >> "$HOME/$SERVER_WG_NIC-client.conf"
|
AllowedIPs = 0.0.0.0/0,::/0" >> "$HOME/$SERVER_WG_NIC-client.conf"
|
||||||
|
|
||||||
chmod 600 -R /etc/wireguard/
|
chmod 600 -R /etc/wireguard/
|
||||||
|
Loading…
Reference in New Issue
Block a user