mirror of
https://github.com/SoftEtherVPN/SoftEtherVPN.git
synced 2025-07-10 17:54:58 +03:00
Compare commits
33 Commits
5.02.5187
...
36326b08cf
Author | SHA1 | Date | |
---|---|---|---|
36326b08cf | |||
48042cfbc1 | |||
a7a7eef82b | |||
a4c3713f4b | |||
abc516757e | |||
3fee01e1cf | |||
b3dfdc2ad0 | |||
8d06ac3348 | |||
9d1c3306e0 | |||
7729966c50 | |||
591cf0e9b9 | |||
39996ab0a2 | |||
f525b4d660 | |||
a081fdd5c8 | |||
10a2806f12 | |||
2628ac1884 | |||
972256c578 | |||
e2e8193495 | |||
71b6aa7a8c | |||
8be6d756b8 | |||
a6c5f0d135 | |||
c2487c6b2e | |||
817214da1f | |||
015f93f7b7 | |||
cdd3bddcc6 | |||
0a1f0913d9 | |||
18cbd4627a | |||
e475d70c0b | |||
e94240d9a0 | |||
023eb3465d | |||
27d233a522 | |||
128fefc63e | |||
3a25c6bf73 |
@ -11,12 +11,12 @@ FreeBSD_task:
|
|||||||
SSL:
|
SSL:
|
||||||
matrix:
|
matrix:
|
||||||
freebsd_instance:
|
freebsd_instance:
|
||||||
image_family: freebsd-14-0
|
image_family: freebsd-14-2
|
||||||
prepare_script:
|
prepare_script:
|
||||||
- pkg install -y pkgconf cmake git libsodium $SSL
|
- pkg install -y pkgconf cmake git libsodium cpu_features $SSL
|
||||||
- git submodule update --init --recursive
|
- git submodule update --init --recursive
|
||||||
configure_script:
|
configure_script:
|
||||||
- ./configure
|
- CMAKE_FLAGS="-DUSE_SYSTEM_CPU_FEATURES=1" CFLAGS="-I/usr/local/include/cpu_features" ./configure
|
||||||
build_script:
|
build_script:
|
||||||
- make -j $(sysctl -n hw.ncpu || echo 4) -C build
|
- make -j $(sysctl -n hw.ncpu || echo 4) -C build
|
||||||
test_script:
|
test_script:
|
||||||
|
98
.github/workflows/docker-aio.yml
vendored
Normal file
98
.github/workflows/docker-aio.yml
vendored
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
name: docker-aio
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- 'master'
|
||||||
|
tags:
|
||||||
|
- '*'
|
||||||
|
pull_request:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
docker:
|
||||||
|
name: docker-aio
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
if: ${{ github.repository_owner == 'SoftEtherVPN' }}
|
||||||
|
steps:
|
||||||
|
-
|
||||||
|
name: Docker meta vpnserver
|
||||||
|
id: metavpnserver
|
||||||
|
uses: docker/metadata-action@v5
|
||||||
|
with:
|
||||||
|
images: ${{ github.repository_owner }}/vpnserver
|
||||||
|
tags: |
|
||||||
|
type=raw,value=latest,enable={{is_default_branch}}
|
||||||
|
type=ref,event=pr
|
||||||
|
type=semver,pattern={{version}}
|
||||||
|
type=semver,pattern={{major}}.{{minor}}
|
||||||
|
-
|
||||||
|
name: Docker meta vpnclient
|
||||||
|
id: metavpnclient
|
||||||
|
uses: docker/metadata-action@v5
|
||||||
|
with:
|
||||||
|
images: ${{ github.repository_owner }}/vpnclient
|
||||||
|
tags: |
|
||||||
|
type=raw,value=latest,enable={{is_default_branch}}
|
||||||
|
type=ref,event=pr
|
||||||
|
type=semver,pattern={{version}}
|
||||||
|
type=semver,pattern={{major}}.{{minor}}
|
||||||
|
-
|
||||||
|
name: Docker meta vpnbridge
|
||||||
|
id: metavpnbridge
|
||||||
|
uses: docker/metadata-action@v5
|
||||||
|
with:
|
||||||
|
images: ${{ github.repository_owner }}/vpnbridge
|
||||||
|
tags: |
|
||||||
|
type=raw,value=latest,enable={{is_default_branch}}
|
||||||
|
type=ref,event=pr
|
||||||
|
type=semver,pattern={{version}}
|
||||||
|
type=semver,pattern={{major}}.{{minor}}
|
||||||
|
-
|
||||||
|
name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v3
|
||||||
|
with:
|
||||||
|
image: tonistiigi/binfmt:qemu-v9.2.0
|
||||||
|
#
|
||||||
|
# TODO: unpin qemu version after default is updated
|
||||||
|
#
|
||||||
|
-
|
||||||
|
name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
-
|
||||||
|
name: Login to DockerHub
|
||||||
|
if: ${{ github.event_name != 'pull_request' }}
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
|
-
|
||||||
|
name: Build and push vpnserver
|
||||||
|
uses: docker/build-push-action@v6
|
||||||
|
with:
|
||||||
|
file: ./Dockerfile
|
||||||
|
target: vpnserver
|
||||||
|
push: ${{ github.event_name != 'pull_request' }}
|
||||||
|
platforms: linux/amd64,linux/arm64
|
||||||
|
tags: ${{ steps.metavpnserver.outputs.tags }}
|
||||||
|
labels: ${{ steps.metavpnserver.outputs.labels }}
|
||||||
|
-
|
||||||
|
name: Build and push vpnclient
|
||||||
|
uses: docker/build-push-action@v6
|
||||||
|
with:
|
||||||
|
file: ./Dockerfile
|
||||||
|
target: vpnclient
|
||||||
|
push: ${{ github.event_name != 'pull_request' }}
|
||||||
|
platforms: linux/amd64,linux/arm64
|
||||||
|
tags: ${{ steps.metavpnclient.outputs.tags }}
|
||||||
|
labels: ${{ steps.metavpnclient.outputs.labels }}
|
||||||
|
-
|
||||||
|
name: Build and push vpnbridge
|
||||||
|
uses: docker/build-push-action@v6
|
||||||
|
with:
|
||||||
|
file: ./Dockerfile
|
||||||
|
target: vpnbridge
|
||||||
|
push: ${{ github.event_name != 'pull_request' }}
|
||||||
|
platforms: linux/amd64,linux/arm64
|
||||||
|
tags: ${{ steps.metavpnbridge.outputs.tags }}
|
||||||
|
labels: ${{ steps.metavpnbridge.outputs.labels }}
|
7
.github/workflows/linux.yml
vendored
7
.github/workflows/linux.yml
vendored
@ -26,6 +26,13 @@ jobs:
|
|||||||
cd build
|
cd build
|
||||||
cpack -C Release -G DEB
|
cpack -C Release -G DEB
|
||||||
|
|
||||||
|
- name: Upload DEB packages as artifacts
|
||||||
|
if: github.ref == 'refs/heads/master'
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: deb-packages
|
||||||
|
path: build/*.deb
|
||||||
|
|
||||||
- name: Test
|
- name: Test
|
||||||
run: |
|
run: |
|
||||||
.ci/appveyor-deb-install-test.sh
|
.ci/appveyor-deb-install-test.sh
|
||||||
|
2
.github/workflows/macos.yml
vendored
2
.github/workflows/macos.yml
vendored
@ -7,7 +7,7 @@ jobs:
|
|||||||
build_and_test:
|
build_and_test:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
os: [macos-14, macos-13, macos-12]
|
os: [macos-15, macos-14, macos-13]
|
||||||
name: ${{ matrix.os }}
|
name: ${{ matrix.os }}
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
|
104
ContainerREADME.md
Normal file
104
ContainerREADME.md
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
# SoftetherVPN Container images
|
||||||
|
|
||||||
|
This container is designed to be as small as possible and host a SoftEther VPN Server, Bridge or Client.
|
||||||
|
It´s based on Alpine so resulting Image is kept as small as 15MB!
|
||||||
|
|
||||||
|
## Not working
|
||||||
|
|
||||||
|
* bridging to a physical Ethernet adapter
|
||||||
|
|
||||||
|
## working
|
||||||
|
|
||||||
|
* OpenVPN
|
||||||
|
* L2tp
|
||||||
|
* SSL
|
||||||
|
* SecureNAT
|
||||||
|
* Wireguard (not with the "stable" tag)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Available Tags
|
||||||
|
|
||||||
|
|
||||||
|
|Image|Description|
|
||||||
|
|---|---|
|
||||||
|
|softethervpn/vpnserver:stable|Latest stable release from https://github.com/SoftEtherVPN/SoftEtherVPN_Stable|
|
||||||
|
|softethervpn/vpnserver:v4.39-9772-beta|Tagged build|
|
||||||
|
|softethervpn/vpnserver:latest|Latest commits from https://github.com/SoftEtherVPN/SoftEtherVPN|
|
||||||
|
|
||||||
|
|
||||||
|
You should always specify your wanted version like `softethervpn/vpnserver:5.02.5180`
|
||||||
|
|
||||||
|
## Usage docker run
|
||||||
|
|
||||||
|
This will keep your config and Logfiles in the docker volume `softetherdata`
|
||||||
|
|
||||||
|
`docker run -d --rm --name softether-vpn-server -v softetherdata:/var/lib/softether -v softetherlogs:/var/log/softether -p 443:443/tcp -p 992:992/tcp -p 1194:1194/udp -p 5555:5555/tcp -p 500:500/udp -p 4500:4500/udp -p 1701:1701/udp --cap-add NET_ADMIN softethervpn/vpnserver:stable`
|
||||||
|
|
||||||
|
## Port requirements
|
||||||
|
|
||||||
|
As there are different operating modes for SoftetherVPN there is a variety of ports that might or might not be needed.
|
||||||
|
For operation with Softether Clients at least 443, 992 or 5555 is needed.
|
||||||
|
See https://www.softether.org/4-docs/1-manual/1/1.6 for reference on the Softether ports.
|
||||||
|
Others are commented out in the docker-compose example.
|
||||||
|
|
||||||
|
## Usage docker-compose
|
||||||
|
|
||||||
|
The same command can be achieved by docker-compose, the docker compose file is in the repository.
|
||||||
|
You can specify the respective docker-compose.yaml like so:
|
||||||
|
|
||||||
|
`docker-compose -f docker-compose.vpnclient.yaml up -d`
|
||||||
|
|
||||||
|
By default the docker-compose.yaml is used:
|
||||||
|
|
||||||
|
```
|
||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
softether:
|
||||||
|
image: softethervpn/vpnserver:latest
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
#- 53:53 #DNS tunneling
|
||||||
|
- 443:443 #Management and HTTPS tunneling
|
||||||
|
#- 992:992 #HTTPS tunneling
|
||||||
|
#- 1194:1194/udp #OpenVPN
|
||||||
|
#- 5555:5555 #HTTPS tunneling
|
||||||
|
#- 500:500/udp #IPsec/L2TP
|
||||||
|
#- 4500:4500/udp #IPsec/L2TP
|
||||||
|
#- 1701:1701/udp #IPsec/L2TP
|
||||||
|
volumes:
|
||||||
|
- "/etc/localtime:/etc/localtime:ro"
|
||||||
|
- "/etc/timezone:/etc/timezone:ro"
|
||||||
|
- "./softether_data:/var/lib/softether"
|
||||||
|
- "./softether_log:/var/log/softether"
|
||||||
|
# - "./adminip.txt:/var/lib/softether/adminip.txt:ro"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Use vpncmd
|
||||||
|
|
||||||
|
With newer releases vpncmd is directly in the container so you can use it to configure vpn. You can can run it once the container is running :
|
||||||
|
|
||||||
|
`docker exec -it softether-vpn-server vpncmd localhost`
|
||||||
|
example to configure a vpnclient
|
||||||
|
|
||||||
|
```
|
||||||
|
docker exec -it softether-vpn-server vpncmd localhost /client
|
||||||
|
|
||||||
|
VPN Client> AccountSet homevpn /SERVER:192.168.1.1:443 /HUB:VPN
|
||||||
|
VPN Client> AccountPasswordSet homevpn /PASSWORD:verysecurepassword /TYPE:standard
|
||||||
|
VPN Client> AccountConnect homevpn
|
||||||
|
|
||||||
|
#Automatically connect once container starts
|
||||||
|
VPN Client> AccountStartupSet homevpn
|
||||||
|
|
||||||
|
#Checking State
|
||||||
|
VPN Client> AccountStatusGet homevpn
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
## Building
|
||||||
|
|
||||||
|
` docker build --target vpnclient -t softethevpn:latest .`
|
51
Dockerfile
Normal file
51
Dockerfile
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
FROM alpine AS builder
|
||||||
|
RUN mkdir /usr/local/src && apk add binutils --no-cache\
|
||||||
|
linux-headers \
|
||||||
|
build-base \
|
||||||
|
readline-dev \
|
||||||
|
openssl-dev \
|
||||||
|
ncurses-dev \
|
||||||
|
git \
|
||||||
|
cmake \
|
||||||
|
zlib-dev \
|
||||||
|
libsodium-dev \
|
||||||
|
gnu-libiconv
|
||||||
|
|
||||||
|
ENV LD_PRELOAD=/usr/lib/preloadable_libiconv.so
|
||||||
|
ADD ./ /usr/local/src/SoftEtherVPN/
|
||||||
|
WORKDIR /usr/local/src
|
||||||
|
ENV USE_MUSL=YES
|
||||||
|
ENV CMAKE_FLAGS="-DSE_PIDDIR=/run/softether -DSE_LOGDIR=/var/log/softether -DSE_DBDIR=/var/lib/softether"
|
||||||
|
RUN cd SoftEtherVPN &&\
|
||||||
|
./configure &&\
|
||||||
|
make -j $(getconf _NPROCESSORS_ONLN) -C build
|
||||||
|
|
||||||
|
FROM alpine AS base
|
||||||
|
RUN apk add --no-cache readline \
|
||||||
|
openssl \
|
||||||
|
libsodium \
|
||||||
|
gnu-libiconv \
|
||||||
|
iptables
|
||||||
|
ENV LD_PRELOAD=/usr/lib/preloadable_libiconv.so
|
||||||
|
WORKDIR /usr/local/bin
|
||||||
|
VOLUME /var/log/softether
|
||||||
|
VOLUME /var/lib/softether
|
||||||
|
VOLUME /run/softether
|
||||||
|
COPY --from=builder /usr/local/src/SoftEtherVPN/build/vpncmd /usr/local/src/SoftEtherVPN/build/hamcore.se2 ./
|
||||||
|
COPY --from=builder /usr/local/src/SoftEtherVPN/build/libcedar.so /usr/local/src/SoftEtherVPN/build/libmayaqua.so /usr/local/lib/
|
||||||
|
|
||||||
|
|
||||||
|
FROM base AS vpnserver
|
||||||
|
COPY --from=builder /usr/local/src/SoftEtherVPN/build/vpnserver ./
|
||||||
|
EXPOSE 443/tcp 992/tcp 1194/tcp 1194/udp 5555/tcp 500/udp 4500/udp
|
||||||
|
CMD ["/usr/local/bin/vpnserver", "execsvc"]
|
||||||
|
|
||||||
|
|
||||||
|
FROM base AS vpnclient
|
||||||
|
COPY --from=builder /usr/local/src/SoftEtherVPN/build/vpnclient ./
|
||||||
|
CMD ["/usr/local/bin/vpnclient", "execsvc"]
|
||||||
|
|
||||||
|
|
||||||
|
FROM base AS vpnbridge
|
||||||
|
COPY --from=builder /usr/local/src/SoftEtherVPN/build/vpnbridge ./
|
||||||
|
CMD ["/usr/local/bin/vpnbridge", "execsvc"]
|
@ -211,6 +211,10 @@ Also SoftEther VPN [Stable Edition](https://www.freshports.org/security/softethe
|
|||||||
Those can be found under https://www.softether-download.com/
|
Those can be found under https://www.softether-download.com/
|
||||||
There you can also find SoftEtherVPN source code in zip and tar formats.
|
There you can also find SoftEtherVPN source code in zip and tar formats.
|
||||||
|
|
||||||
|
## Docker Container Image
|
||||||
|
|
||||||
|
Please look at the [ContainerREADME.md](ContainerREADME.md)
|
||||||
|
|
||||||
## Build from Source code
|
## Build from Source code
|
||||||
|
|
||||||
see [BUILD_UNIX](src/BUILD_UNIX.md) or [BUILD_WINDOWS](src/BUILD_WINDOWS.md)
|
see [BUILD_UNIX](src/BUILD_UNIX.md) or [BUILD_WINDOWS](src/BUILD_WINDOWS.md)
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OutputType>Exe</OutputType>
|
<OutputType>Exe</OutputType>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net8.0</TargetFramework>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||||
|
16
docker-compose.vpnclient.yaml
Normal file
16
docker-compose.vpnclient.yaml
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
softether:
|
||||||
|
image: softethervpn/vpnclient:latest
|
||||||
|
devices:
|
||||||
|
- /dev/net/tun:/dev/net/tun
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- "/etc/localtime:/etc/localtime:ro"
|
||||||
|
- "/etc/timezone:/etc/timezone:ro"
|
||||||
|
- "./softether_data:/var/lib/softether"
|
||||||
|
- "./softether_log:/var/log/softether"
|
||||||
|
# - "./adminip.txt:/var/lib/softether/adminip.txt:ro"
|
23
docker-compose.yaml
Normal file
23
docker-compose.yaml
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
softether:
|
||||||
|
image: softethervpn/vpnserver:latest
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
#- 53:53 #DNS tunneling
|
||||||
|
- 443:443 #Management and HTTPS tunneling
|
||||||
|
- 992:992 #HTTPS tunneling
|
||||||
|
#- 1194:1194/udp #OpenVPN
|
||||||
|
#- 5555:5555 #HTTPS tunneling
|
||||||
|
#- 500:500/udp #IPsec/L2TP
|
||||||
|
#- 4500:4500/udp #IPsec/L2TP
|
||||||
|
#- 1701:1701/udp #IPsec/L2TP
|
||||||
|
volumes:
|
||||||
|
- "/etc/localtime:/etc/localtime:ro"
|
||||||
|
- "/etc/timezone:/etc/timezone:ro"
|
||||||
|
- "./softether_data:/var/lib/softether"
|
||||||
|
- "./softether_log:/var/log/softether"
|
||||||
|
# - "./adminip.txt:/var/lib/softether/adminip.txt:ro"
|
@ -127,6 +127,9 @@ if(UNIX)
|
|||||||
if(SE_PIDDIR)
|
if(SE_PIDDIR)
|
||||||
add_definitions(-DSE_PIDDIR="${SE_PIDDIR}")
|
add_definitions(-DSE_PIDDIR="${SE_PIDDIR}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Use system libraries instead of bundled
|
||||||
|
set(USE_SYSTEM_CPU_FEATURES false CACHE BOOL "Use system cpu_features")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Cedar communication module
|
# Cedar communication module
|
||||||
|
2
src/Mayaqua/3rdparty/cpu_features
vendored
2
src/Mayaqua/3rdparty/cpu_features
vendored
Submodule src/Mayaqua/3rdparty/cpu_features updated: 26133d3b62...ba4bffa86c
2
src/Mayaqua/3rdparty/liboqs
vendored
2
src/Mayaqua/3rdparty/liboqs
vendored
Submodule src/Mayaqua/3rdparty/liboqs updated: 51ddd33cc0...f4b96220e4
2
src/Mayaqua/3rdparty/oqs-provider
vendored
2
src/Mayaqua/3rdparty/oqs-provider
vendored
Submodule src/Mayaqua/3rdparty/oqs-provider updated: 8f37521d5e...ec1e8431f9
@ -109,8 +109,21 @@ if(UNIX)
|
|||||||
$<$<BOOL:${LIB_RT}>:${LIB_RT}>
|
$<$<BOOL:${LIB_RT}>:${LIB_RT}>
|
||||||
)
|
)
|
||||||
|
|
||||||
if (CMAKE_SYSTEM_PROCESSOR MATCHES "^(armv7l|aarch64|s390x)$" OR NOT HAVE_SYS_AUXV OR SKIP_CPU_FEATURES)
|
if (NOT HAVE_SYS_AUXV OR SKIP_CPU_FEATURES)
|
||||||
add_definitions(-DSKIP_CPU_FEATURES)
|
add_definitions(-DSKIP_CPU_FEATURES)
|
||||||
|
elseif(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD" AND NOT CMAKE_SYSTEM_PROCESSOR MATCHES "^(amd64|i386)")
|
||||||
|
message("cpu_features is not available on FreeBSD/${CMAKE_SYSTEM_PROCESSOR}")
|
||||||
|
add_definitions(-DSKIP_CPU_FEATURES)
|
||||||
|
elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" AND NOT CMAKE_SYSTEM_NAME MATCHES "^(arm64|x86_64)")
|
||||||
|
# macOS runs only on Intel or ARM architecrues, should not reach here
|
||||||
|
add_definitions(-DSKIP_CPU_FEATURES)
|
||||||
|
elseif(${CMAKE_SYSTEM_NAME} STREQUAL "SunOS" OR ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
|
||||||
|
message("cpu_features is not available on ${CMAKE_SYSTEM_NAME}")
|
||||||
|
add_definitions(-DSKIP_CPU_FEATURES)
|
||||||
|
elseif(USE_SYSTEM_CPU_FEATURES)
|
||||||
|
CHECK_INCLUDE_FILE(cpu_features_macros.h HAVE_CPU_FEATURES)
|
||||||
|
message("-- Using system's cpu_features")
|
||||||
|
target_link_libraries(mayaqua PRIVATE cpu_features)
|
||||||
else()
|
else()
|
||||||
add_subdirectory(3rdparty/cpu_features)
|
add_subdirectory(3rdparty/cpu_features)
|
||||||
set_property(TARGET cpu_features PROPERTY POSITION_INDEPENDENT_CODE ON)
|
set_property(TARGET cpu_features PROPERTY POSITION_INDEPENDENT_CODE ON)
|
||||||
|
@ -4259,7 +4259,7 @@ UINT MsService(char *name, SERVICE_FUNCTION *start, SERVICE_FUNCTION *stop, UINT
|
|||||||
|
|
||||||
if ((mode == SVC_MODE_INSTALL || mode == SVC_MODE_UNINSTALL || mode == SVC_MODE_START ||
|
if ((mode == SVC_MODE_INSTALL || mode == SVC_MODE_UNINSTALL || mode == SVC_MODE_START ||
|
||||||
mode == SVC_MODE_STOP || mode == SVC_MODE_SERVICE) &&
|
mode == SVC_MODE_STOP || mode == SVC_MODE_SERVICE) &&
|
||||||
(ms->IsNt == false))
|
(IsNt() == false))
|
||||||
{
|
{
|
||||||
// Tried to use the command for the NT in non-WindowsNT system
|
// Tried to use the command for the NT in non-WindowsNT system
|
||||||
MsgBox(NULL, MB_ICONSTOP, _UU("SVC_NT_ONLY"));
|
MsgBox(NULL, MB_ICONSTOP, _UU("SVC_NT_ONLY"));
|
||||||
|
@ -170,7 +170,6 @@ typedef struct MS
|
|||||||
{
|
{
|
||||||
HINSTANCE hInst;
|
HINSTANCE hInst;
|
||||||
HINSTANCE hKernel32;
|
HINSTANCE hKernel32;
|
||||||
bool IsNt;
|
|
||||||
bool IsAdmin;
|
bool IsAdmin;
|
||||||
HANDLE hCurrentProcess;
|
HANDLE hCurrentProcess;
|
||||||
UINT CurrentProcessId;
|
UINT CurrentProcessId;
|
||||||
|
@ -60,7 +60,7 @@ struct DYN_VALUE
|
|||||||
#define DEFAULT_CIPHER_LIST "ECDHE+AESGCM:ECDHE+CHACHA20:DHE+AESGCM:DHE+CHACHA20:ECDHE+AES256:DHE+AES256:RSA+AES"
|
#define DEFAULT_CIPHER_LIST "ECDHE+AESGCM:ECDHE+CHACHA20:DHE+AESGCM:DHE+CHACHA20:ECDHE+AES256:DHE+AES256:RSA+AES"
|
||||||
|
|
||||||
#if OPENSSL_VERSION_NUMBER >= 0x30000000L
|
#if OPENSSL_VERSION_NUMBER >= 0x30000000L
|
||||||
#define PQ_GROUP_LIST "p521_kyber1024:x25519_kyber768:P-521:X25519:P-256"
|
#define PQ_GROUP_LIST "X25519MLKEM768:p521_kyber1024:x25519_kyber768:P-521:X25519:P-256"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// SSL logging function
|
// SSL logging function
|
||||||
|
0
src/Mayaqua/Unix.c
Executable file → Normal file
0
src/Mayaqua/Unix.c
Executable file → Normal file
@ -6,7 +6,9 @@
|
|||||||
// VPN Command Line Management Utility
|
// VPN Command Line Management Utility
|
||||||
|
|
||||||
#include "Cedar/Cedar.h"
|
#include "Cedar/Cedar.h"
|
||||||
|
#ifdef OS_WIN32
|
||||||
|
#include "Cedar/CMInner.h"
|
||||||
|
#endif
|
||||||
#include "Cedar/Command.h"
|
#include "Cedar/Command.h"
|
||||||
|
|
||||||
#include "Mayaqua/Internat.h"
|
#include "Mayaqua/Internat.h"
|
||||||
@ -39,6 +41,10 @@ int main(int argc, char *argv[])
|
|||||||
#endif
|
#endif
|
||||||
InitCedar();
|
InitCedar();
|
||||||
|
|
||||||
|
#ifdef OS_WIN32
|
||||||
|
CmExecUiHelperMain();
|
||||||
|
#endif
|
||||||
|
|
||||||
s = GetCommandLineUniStr();
|
s = GetCommandLineUniStr();
|
||||||
|
|
||||||
if (s == NULL)
|
if (s == NULL)
|
||||||
|
@ -4,11 +4,8 @@ After=network.target auditd.service
|
|||||||
ConditionPathExists=!@DIR@/softether/vpnbridge/do_not_run
|
ConditionPathExists=!@DIR@/softether/vpnbridge/do_not_run
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=forking
|
Type=exec
|
||||||
EnvironmentFile=-@DIR@/softether/vpnbridge
|
ExecStart=@DIR@/softether/vpnbridge/vpnbridge execsvc
|
||||||
ExecStart=@DIR@/softether/vpnbridge/vpnbridge start
|
|
||||||
ExecStop=@DIR@/softether/vpnbridge/vpnbridge stop
|
|
||||||
KillMode=process
|
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
|
||||||
# Hardening
|
# Hardening
|
||||||
|
@ -4,11 +4,8 @@ After=network.target auditd.service
|
|||||||
ConditionPathExists=!@DIR@/softether/vpnclient/do_not_run
|
ConditionPathExists=!@DIR@/softether/vpnclient/do_not_run
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=forking
|
Type=exec
|
||||||
EnvironmentFile=-@DIR@/softether/vpnclient
|
ExecStart=@DIR@/softether/vpnclient/vpnclient execsvc
|
||||||
ExecStart=@DIR@/softether/vpnclient/vpnclient start
|
|
||||||
ExecStop=@DIR@/softether/vpnclient/vpnclient stop
|
|
||||||
KillMode=process
|
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
|
||||||
# Hardening
|
# Hardening
|
||||||
|
@ -4,12 +4,9 @@ After=network.target auditd.service
|
|||||||
ConditionPathExists=!@DIR@/softether/vpnserver/do_not_run
|
ConditionPathExists=!@DIR@/softether/vpnserver/do_not_run
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=forking
|
Type=exec
|
||||||
TasksMax=infinity
|
TasksMax=infinity
|
||||||
EnvironmentFile=-@DIR@/softether/vpnserver
|
ExecStart=@DIR@/softether/vpnserver/vpnserver execsvc
|
||||||
ExecStart=@DIR@/softether/vpnserver/vpnserver start
|
|
||||||
ExecStop=@DIR@/softether/vpnserver/vpnserver stop
|
|
||||||
KillMode=process
|
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
|
||||||
# Hardening
|
# Hardening
|
||||||
|
Reference in New Issue
Block a user