"description":"A robust and versatile proxy package designed to handle high workloads, offering features like SSL redirection, port proxying, WebSocket support, and customizable routing and authentication.",
description:'A robust and versatile proxy package designed to handle high workloads, offering features like SSL redirection, port proxying, WebSocket support, and customizable routing and authentication.'
returnrejectIncomingConnection('rejected',`Connection rejected: No matching domain config for ${serverName} from ${remoteIP}`);
}
// If a matching domain config exists, check its allowedIPs.
if(domainConfig){
if(!isAllowed(remoteIP,domainConfig.allowedIPs)){
returnrejectIncomingConnection('rejected',`Connection rejected: IP ${remoteIP} not allowed for domain ${serverName}`);
returnrejectIncomingConnection('rejected',`Connection rejected: IP ${remoteIP} not allowed for domain ${Array.isArray(domainConfig.domain)?domainConfig.domain.join(', '):domainConfig.domain}`);
}
}elseif(this.settings.defaultAllowedIPs){
// Only check default allowed IPs if no domain config matched.
console.log(`Connection from ${remoteIP} rejected: IP not allowed for domain ${forcedDomain.domain} on port ${localPort}.`);
if(!isAllowed(remoteIP,forcedDomain.allowedIPs)){
console.log(`Connection from ${remoteIP} rejected: IP not allowed for domain ${Array.isArray(forcedDomain.domain)?forcedDomain.domain.join(', '):forcedDomain.domain} on port ${localPort}.`);
socket.end();
return;
}
console.log(`Port-based connection from ${remoteIP} on port ${localPort} matched domain ${forcedDomain.domain}.`);
console.log(`Port-based connection from ${remoteIP} on port ${localPort} matched domain ${Array.isArray(forcedDomain.domain)?forcedDomain.domain.join(', '):forcedDomain.domain}.`);
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.