Du könntest auch einen SSH-Tunnel aufbauen.
Ich habe mal ein NodeJS-Script geschrieben mit dem du das machen kannst..
Ich gehe mal ein Beispiel durch, wie es gehen würde wenn du einen SA:MP-Server nach außen auf machen wollen würdest. Dafür gehen wir von folgenden Gegebenheiten aus:
1. Du hast einen vServer mit der IP 123.123.123.123, an diesem einen SSH-Zugang mit dem Namen "user" und dem Passwort "pass" und dazu noch den 7777-Port offen.
2. Du hast einen PC auf dem der SA:MP-Server laufen soll auf dem NodeJS installiert ist.
An dem PC würdest du einen neuen Ordner wie z.B. "samp-ssh-tunnel" erstellen und da du nodejs hast, kannst du per Terminal im Ordner "npm install reverse-tunnel-ssh --save" ausführen.
Danach legst du dort folgendes Script in eine "app.js" Datei an:
const tunnel = require('reverse-tunnel-ssh');
tunnel({
host: '123.123.123.123', // IP des (V)-Servers
username: 'user', // Username des SSH-Nutzers
password: 'pass', // Passwort des SSH-Nutzers
dstHost: '0.0.0.0',
dstPort: '7777', // Port nach außen (123.123.123.123:7777 würde jetzt aufzurufen sein)
srcHost: '127.0.0.1', // Adresse im Netzwerk (wenn das Programm auf dem PC ausgeführt wird wo der Port offen sein soll dann 127.0.0.1 sonst halt die lokale IP des Gerätes)
srcPort: '7777', // Der interne Port der auf soll (kann der gleiche sein wie am server)
keepaliveInterval: 10000,
keepaliveCountMax: 9
}, function(error, clientConnection){
console.log(error);
console.log(clientConnection);
});
Alles anzeigen
Mittels "node app.js" kannst du das nun starten. Der Server ist nun unter 123.123.123.123:7777 erreichbar.