SoftEtherAdmin은 SoftEther VPN 서버를 위한 웹 기반 UI입니다. 현재는 읽기 작업만 지원하며 기능 세트가 완전하지 않습니다! UI 디자인은 Creative Tim의 멋진 사람들이 만든 Light Bootstarp Dashboard 테마입니다.
먼저 파일을 복제/다운로드해야 합니다.
# GIT clone (Note: git should be installed on your system!)
cd /srv
sudo git clone https://github.com/notisrac/SoftEtherAdmin.git
# # OR ##
# Download (Note: unzip should be installed on your system!)
wget -O SoftEtherAdmin.zip https://github.com/notisrac/SoftEtherAdmin/archive/master.zip
sudo unzip SoftEtherAdmin.zip -d /srv/SoftEtherAdmin
애플리케이션을 실행하기 전에 npm 패키지를 복원해야 합니다!
cd /srv/SoftEtherAdmin
sudo npm install
애플리케이션을 설정하려면 구성 섹션의 지침을 따르세요. 다음과 같은 구성이 있어야 합니다.
{
"serverPort" : 8000 ,
"softEther" : {
"address" : " localhost " ,
"port" : 5555 ,
"vpncmdPath" : " /usr/local/vpnserver/vpncmd " ,
"password" : " supersecretpassword1 "
}
}
이 단계에서는 애플리케이션이 실행 가능해야 합니다.
node app.js
다른 셸을 열고 다음을 수행합니다.
wget http://localhost:8000/
node.js 앱을 관리하는 데 권장되는 방법은 pm2
사용하는 것입니다.
# first, you need to install pm2 globally
npm install pm2 -g
# enter the dir wher SoftEtherAdmin is installed
cd /srv/SoftEtherAdmin
# Register the app with pm2
pm2 start app.js --name " softetheradmin "
pm2 섹션의 추가 정보
웹 서버를 통해 앱을 제공하려면 웹 서버를 애플리케이션 포트를 가리키는 역방향 프록시로 구성하기만 하면 됩니다. nginx 예 :
server {
listen 80;
listen [::]:80;
server_name SoftEtherAdmin;
location / {
proxy_pass http://localhost:8000; # <- this is where out app is listening
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
https://github.com/notisrac/SoftEtherAdmin/archive/master.zip 파일을 다운로드한 다음 폴더에 추출합니다. 우리는 다음을 사용할 것입니다:
C:NodeApps
cd C: N odeApps S oftEtherAdmin
npm install
애플리케이션을 설정하려면 구성 섹션의 지침을 따르세요. 다음과 같은 구성이 있어야 합니다.
{
"serverPort" : 8000 ,
"softEther" : {
"address" : " localhost " ,
"port" : 5555 ,
"vpncmdPath" : " C: \ Program Files \ SoftEther \ vpncmd.exe " ,
"password" : " supersecretpassword1 "
}
}
이 단계에서는 애플리케이션이 실행 가능해야 합니다.
node app.js
브라우저를 열고 http://localhost:8000/
으로 이동합니다.
node.js 앱을 관리하는 데 권장되는 방법은 pm2
사용하는 것입니다.
# first, you need to install pm2 globally
npm install pm2 -g
Windows에서 pm2를 사용하려면 먼저 수행해야 할 몇 가지 작업이 있습니다.
pm2 폴더
C:NodeApps_pm2
PM2_HOME 환경 변수
C:NodeApps_pm2
값을 사용하여 새 시스템 수준 환경 변수 PM2_HOME
생성합니다.echo %PM2_HOME%
pm2에 앱 등록
# enter the dir wher SoftEtherAdmin is installed
cd /srv/SoftEtherAdmin
# Register the app with pm2
pm2 start app.js --name " softetheradmin "
# If everything went fine, save the config
pm2 save
pm2에서 서비스 만들기
pm2-windows-service의 도움으로 이 작업을 수행하겠습니다.
# # Make sure, you do this in an ADMINISTRATOR cmd ##
# install
npm install -g pm2-windows-service
# Create the service
pm2-service-install -n PM2
다음과 같이 설정 질문에 대답하십시오.
Windows 지침에 대해 Walter Accantelli에게 큰 감사를 드립니다: https://blog.cloudboost.io/nodejs-pm2-startup-on-windows-db0906328d75
pm2 섹션의 추가 정보
앱 구성은 config
노드 모듈(https://www.npmjs.com/package/config)에 의해 처리됩니다. 기본적으로 config/default.json
파일을 수정해야 합니다.
{
"serverPort" : 8000 ,
"softEther" : {
"address" : " localhost " ,
"port" : 5555 ,
"vpncmdPath" : " /usr/local/vpnserver/vpncmd " ,
"password" : " supersecretpassword1 "
}
}
어디:
localhost
사용하세요.c:\...\...
!) 참고: 저장소를 복제한 경우 config/local.json
파일에 구성을 두는 것이 좋습니다. 이렇게 하면 저장소의 새 버전을 가져올 때 구성을 덮어쓰지 않습니다!
더 많은 구성 파일 관련 정보는 여기에서 찾을 수 있습니다: https://github.com/lorenwest/node-config/wiki/Configuration-Files
pm2는 node.js의 프로세스 관리자입니다. 앱을 모니터링하고 서버 시작 시 실행할 수 있습니다.
설치하다:
npm install pm2 -g
pm2에 앱 등록
pm2 start app.js --name " softetheradmin "
앱의 현재 상태를 확인하세요
pm2 show softetheradmin
pm2에서 관리하는 모든 앱 나열
pm2 list
pm2 stop softetheradmin
중지하고 pm2 restart softetheradmin
시작할 수도 있습니다.
cd /srv/softetheradmin
node app.js
그러면 Server listening on port: <PORT>
됩니다. 여기서 <PORT>
는 serverPort
구성 설정의 값입니다. 앱을 시작하거나 실행하는 중에 오류가 발생하면 여기에 인쇄됩니다.
SoftEther VPN 서버 설치 프로그램과 함께 배포되는 vpncmd
애플리케이션을 사용합니다. 다음은 두 가지 예입니다.
이것은 Linux 상자에서 실행되며 허브 목록을 검색합니다.
/usr/local/vpnserver/vpncmd < SERVER > : < PORT > /SERVER /PASSWORD: < PASSWORD > /CSV /CMD HubList
이것은 Windows 시스템에서 실행되며 선택한 허브의 scripts/vpncmd_hubinfofull.txt
파일에 있는 모든 명령을 실행합니다.
" c:Program FilesSoftEther VPN Client Managervpncmd_x64.exe " < SERVER > : < PORT > /SERVER /PASSWORD: < PASSWORD > /CSV /ADMINHUB: < HUBNAME > /IN: " scripts/vpncmd_hubinfofull.txt "
pm2 monit
Pull Request는 언제나 환영입니다! :)