SoftEtherAdmin เป็น UI บนเว็บสำหรับเซิร์ฟเวอร์ SoftEther VPN ขณะนี้รองรับเฉพาะการดำเนินการอ่านเท่านั้น และชุดคุณลักษณะยังไม่สมบูรณ์! การออกแบบ UI เป็นธีม Light Bootstarp Dashboard โดยคนน่ารักที่ Creative Tim
ขั้นแรก คุณต้องโคลน/ดาวน์โหลดไฟล์:
# 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
ก่อนที่คุณจะสามารถใช้ pm2 บน windows ได้ มีบางสิ่งที่ต้องทำ:
โฟลเดอร์ pm2
C:NodeApps_pm2
ตัวแปรสภาพแวดล้อม PM2_HOME
PM2_HOME
ด้วยค่า C:NodeApps_pm2
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
ตอบคำถามการตั้งค่าดังนี้:
ขอขอบคุณ Walter Accantelli มากสำหรับคำแนะนำ Windows: 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:\...\...
!) หมายเหตุ: หากคุณได้โคลน repo ขอแนะนำให้มีการกำหนดค่าในไฟล์ config/local.json
ด้วยวิธีนี้ เมื่อดึง repo เวอร์ชันใหม่ การกำหนดค่าของคุณจะไม่ถูกเขียนทับ!
ข้อมูลที่เกี่ยวข้องกับไฟล์กำหนดค่าเพิ่มเติมสามารถพบได้ที่นี่: 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
หากมีข้อผิดพลาดขณะเริ่มแอปหรือใช้งาน แอปจะพิมพ์ออกมาที่นี่
ใช้แอปพลิเคชัน vpncmd
ที่แจกจ่ายพร้อมกับตัวติดตั้ง SoftEther VPN Server นี่คือสองตัวอย่าง:
อันนี้ทำงานบนกล่อง 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
ยินดีต้อนรับคำขอดึงเสมอ! -