diff --git a/bin/node-http-proxy b/bin/node-http-proxy index b15d164..a0d2b89 100755 --- a/bin/node-http-proxy +++ b/bin/node-http-proxy @@ -17,6 +17,7 @@ var help = [ " --target HOST:PORT Location of the server the proxy will target", " --config OUTFILE Location of the configuration file for the proxy server", " --silent Silence the log output from the proxy server", + " --user USER User to drop privileges to once server socket is bound", " -h, --help You're staring at it" ].join('\n'); @@ -28,6 +29,7 @@ var location, config = {}, port = argv.port || 80, host = argv.host || undefined, target = argv.target; + user = argv.user; // // If we were passed a config, parse it @@ -85,6 +87,14 @@ if (host) { server.listen(port); } + +// +// Drop privileges if requested +// +if (typeof user === 'string') { + process.setuid(user); +} + // // Notify that the server is started //