Proxy auto-config

How to Setup a Free VPN


Mac Fix notification icon not working. Taher Elgamal , chief scientist at Netscape Communications from to , has been described as the "father of SSL". Allow showing insecure content when web-security option is false. TLS typically relies on a set of trusted third-party certificate authorities to establish the authenticity of certificates. Use of network notaries from a multitude of perspectives makes it possible for a target to detect an attack even if a certificate appears to be completely valid. Conferences Capital Go - Washington, D.

Documentation


After you've set up the custom domain, use the -hostname argument to start the TLS tunnel on your own domain.

It's possible that the service you're trying to expose may not have the capability to terminate TLS connections. The ngrok client can do this for you so that you can encrypt your traffic end-to-end but not have to worry about whether the local service has TLS support. Specify both the -crt and -key command line options to specify the filesystem paths to your TLS certificate and key and the ngrok client will take care of terminating TLS connections for you.

These clients will not work properly with ngrok's TLS tunnels. Fortunately, nearly all modern browsers use SNI. Some modern software libraries do not though. Microsoft Internet Explorer 6. X Java Python 2. This is commonly used to expose SSH, game servers, databases and more.

Starting a TCP tunnel is easy. Normally, the remote address and port is assigned randomly each time you start a TCP tunnel. For production services and convenience you often want a stable, guaranteed remote address. To do this, first, log in to your ngrok. Then use the -remote-addr option when invoking ngrok to bind a tunnel on your reserved TCP address.

Make sure the -region you specify matches the region in which you reserved your address. All wildcard domains, even those that are subdomains of ngrok. When using -hostname or -subdomain , specify a leading asterisk to bind a wildcard domain.

The use of wildcard domains creates ambiguities in some aspects of the ngrok. The following rules are used to resolve these situations and are important to understand if you are using wildcard domains. Instead of specifying a port number, just specify a network address and port instead. The location of the datacenter within a given region may change without notice e. If you do not explicitly pick a region, your tunnel will be hosted in the default region, the United States.

Picking the region closest to you is as easy as specifying setting the -region command line flag or setting the region property in your configuration file. For example, to start a tunnel in the Europe region:. Reserved domains and reserved addresses are allocated for a specific region the US region by default.

When you reserve a domain or address, you must select a target region. You may not bind a domain or address reserved in another region other than the one it was allocated for. Attempting to do so will yield an error and prevent your tunnel session from initializing.

An ngrok client may only be connected a single region. This may change in the future, but at the moment a single ngrok client can not host tunnels in multiple regions simultaneously. Run multiple ngrok clients if you need to do this. A domain cannot be reserved for multiple regions simultaneously.

It is not possible to geo-balance DNS to the same tunnel name in multiple regions. Use region-specific subdomains or TLDs if you need to do this eu. You may whitelist access to tunnel endpoints on your account. The whitelist is enforced by the ngrok. It is applied globally to all of your tunnel endpoints. Any incoming connection to any of your tunnel endpoints is checked to guarantee that the source IP address of the connection matches at least one entry in your whitelist.

If a connection does not match the whitelist it is terminated immediately and never forwarded to an ngrok client. You can manage the IP whitelist on the auth tab of your ngrok dashboard. Changes to the IP Whitelist can take up to 30 seconds to take effect. Sometimes, you may wish to whitelist an entire range of IPs. For example, to allow all IP addresses from Sometimes your configuration for ngrok is too complex to be expressed in command line options.

You may pass a path to an explicit configuration file with the -config option. This is recommended for all production deployments. You may pass the -config option more than once. If you do, the first configuration is parsed and each successive configuration is merged on top of it. This allows you to have per-project ngrok configuration files with tunnel definitions but a master configuration file in your home directory with your authtoken and other global settings.

The configuration file is optional; no error is emitted if that path does not exist. For major operating systems, if your username is example the default configuration would likely be found at the following paths:. The most common use of the configuration file is to define tunnel configurations.

Defining tunnel configurations is useful because you may then start pre-configured tunnels by name from your command line without remembering all of the right arguments every time. Go wrapper over FreeTDS.

Search and Analytic Databases. Date and Time Libraries for working with dates and times. Things like Easter, Pentecost, Thanksgiving NullTime - Nullable time. Distributed Systems Packages that help with building Distributed Systems.

Email Libraries that implement email creation and sending. Gomail - Gomail is a very simple and powerful package to send emails. SendGrid - SendGrid's Go library for sending email. Embeddable Scripting Languages Embedding other languages inside your go code. Files Libraries for handling files and file systems. Financial Packages for accounting and finance. Forms Libraries for working with forms. Values into Go value s and Encodes Go value s into url. Dual Array and Full map support.

Game Development Awesome game development libraries. Azul3D - 3D game engine written in Go. Ebiten - dead simple 2D game library in Go. It follows the Entity-Component-System paradigm. Pixel - Hand-crafted 2D game library in Go. Generation and Generics Tools to enhance the language with features like generics via code generation. Geographic Geographic tools and servers geocache - In-memory cache that is suitable for geolocation based applications.

S2 geometry - S2 geometry library in Go. Tile38 - Geolocation DB with spatial index and realtime geofencing. Go Compilers Tools for compiling Go to other languages. Goroutines Tools for managing and working with Goroutines. GoSlaves - Simple and Asynchronous Goroutine pool library. MacOS, Windows in progress. Control the mouse, keyboard and other. Hardware Libraries, tools, and tutorials for interacting with hardware.

Images Libraries for manipulating images. Logging Libraries for generating and working with log files. Can send filtered log messages to various targets e. It is very useful for cron jobs. Machine Learning Libraries for Machine Learning. CloudForest - Fast, flexible, multi-threaded ensembles of decision trees for machine learning in pure Go. Written in pure Go. Define computational graphs in Go, load and execute models trained in Python.

Varis - Golang Neural Network. Messaging Libraries that implement messaging systems. EventBus - The lightweight event bus with async compatibility. Gollum - A n: NATS Go Client - Lightweight and high performance publish-subscribe and distributed queueing messaging system - this is the Go library. Uniqush-Push - Redis backed unified push service for server-side notifications to mobile devices. Also available for version 3 and version 2. Miscellaneous These libraries were placed here because none of the other categories seemed to fit.

Supported both creation and parsing of UUIDs. VarHandler - Generate boilerplate http input and ouput handling. Natural Language Processing Libraries for working with human languages. Mystem - russian morphology analyzer. Guaranteed compatibility with version Guaranteed compatibility with version 2.

Provides word stem extraction functionality Snowball native. Includes English and German stemmers. Supports 84 languages and 24 scripts writing systems e. Networking Libraries for working with various layers of the network. Allows to specify a set query-per-second load and record latency histograms and other useful stats and graph them.

Can be useful for fast redirection to predefined domain with zero memory allocation and fast response. Marlow - Generated ORM from project structs for compile time safety assurances. Generate a featureful and blazing-fast ORM tailored to your database schema. Zoom - Blazing-fast datastore and querying engine built on Redis. Package Management Libraries for package and dependency management.

Inspired by tools like Maven, Bundler, and Pip. Go vendor tool that works with the standard vendor file. VenGO - create and manage exportable isolated go virtual environments. Resource Embedding esc - Embeds files into Go programs and provides http. FileSystem interfaces to them. Science and Data Analysis Libraries for scientific computing and data analyzing. Supports many graphs types.

Package mat64 provides basic linear algebra operations for float64 matrices. Security Libraries that are used to help make your application more secure. BadActor - In-memory, application-driven jailer built in the spirit of fail2ban.

Serialization Libraries and tools for binary serialization. Fider - Fider is an open platform to collect and organize customer feedback. Template Engines Libraries and tools for templating and lexing. Add statusLine property to webRequest. Add backgroundThrottling option to webPreferences of BrowserWindow. Add resourceType parameter to did-get-response-details event of WebContents.

Fix breakpoints not working after reloading in the devtools view. Fix idle GC not working in the main process. Fix the race condition between did-fail-load and did-finish-load events. Fix wrong default transparent background for frameless window. Fix SSL certificate information not showing in the Security tab of devtools.

Windows Fix printing not working. Fix crash when closing a window in its blur event handler. OS X Fix template image not working as tray icon on some machines. Fix backgroundColor of BrowserWindow not displaying correctly. Linux Do not wait for xdg-open to exit when calling shell. Fix notifications not showing on Ubuntu Fix wrongly using Node v6. Fix crash when creating Buffer with large size.

Upgrade to Node v5. Remove the white flash when loading pages. The default app is now packaged as asar archive. Disable node integration in child windows opened with window.

Fix crash when sending IPC messages. Fix wrong disposition parameter of new-window event for certain types of background types. Fix exception when calling remote method while not storing its remote object. Fix backgroundColor option of BrowserWindow not working.

Fix occasional exception when using remote module. Fix devtools workspace not working. Fix exception when accelerator is undefined when calling Menu. Fix crash when showing notifications while notifications are disabled. Add activeMatchOrdinal property in the result object of found-in-page event. Fix notifications not showing. Fix the main process hanging on exit. OS X Fix libffmpeg. Windows Fix unable to start on Windows 7.

Windows Fix crash when showing notifications while notifications are disabled. Add show and hide events to BrowserWindow. Do not block when calling document.

Fix visibilitychange event not working. Fix passing certificate to select-client-certificate event's callback. Fix PrintScreen not working as accelerator. Fix unable to read image when there is.. Linux Fix resizable option not working. Windows Make fullscreenable option work. OS X Add platform-theme-changed event to app module. Add callback parameter for webContents. Fix media devices having empty labels. Fix the methods of remote objects being unwritable and unconfigurable.

Cache the remote objects returned by remote module. Fix ES6 classes not working with remote module. Fix remote objects of renderer processes being wrongly freed when page is reloaded. Fix crash in protocol module for certain kind of URLs. Linux Fix crash when freetype 2. Fix the application menu bar disappearing after hiding and showing the window. Link with ffmpeg dynamically. Provide prebuilt binaries of ffmpeg which do not include proprietary codecs.

Improve error message when there is invalid parameter passed to Electron API. Add cursor-changed event to WebContents. Add readRtf and writeRtf methods to clipboard module. Fix crash when calling methods of downloadItem in will-download handler when event. Fix crash when calling WebContents. Fix the exit event of process object not reliable in renderer process. Windows Fix methods of autoUpdater not accessible in remote module. OS X Add app. Fix icon not working in dialog.

Linux Don't drop capabilities in renderer process. Fix the occasional Object has been destroyed exception in the main process. Windows Fix crash on exit. Restarts renderer process for server redirect. Add scroll-touch-begin and scroll-touch-end events to BrowserWindow. Add uploadData to details of session. Support alpha channel in backgroundColor option of BrowserWindow. Windows Fix using autoUpdater throws exception.

Fix possible crash when closing asar archive. Fix crash when switching between submenus of window menubar. Add support for the silent property of Notification. Add movable option for BrowserWindow. Make the backgroundColor option of BrowserWindow work. Add defaultId option for dialog. Add insertText and executeJavaScript methods to webFrame module. Fix wrong aspect ratio in Netflix videos. Fix source code highlighting not working in devtools. Linux Fix --touch-devices command line switch not working.

Add support for Widevine CDM plugin. Add blinkFeatures option to webPreferences. Remove overlayScrollbars , sharedWorker , pageVisibility options from webPreferences.

Localize the default string resources in HTML elements. Allow using fetch for URLs registered as privilege. Fix memory leak in remote module. Fix distorted image when calling capturePage with no rect. Fix crash when using protocol. OS X Fix drop-files not firing when dragging from the dock. Fix crash when calling dialog. Fix crash when creating Window menu with no submenu items.

Fix unable to hide fullscreen button on EL Capitan. Windows Fix recursive loop when calling mkdirp inside an asar archive. Fix the window menu bar not behaving correctly. Fix bad typing performance.

Fix form redirect not working. Fix in page navigations in sub-frames causing full page refresh. Fix crash when using webRequest API. OS X Remove the notification from notification center when is clicked or cancelled. Fix app menu not showing after calling app. Fix fullscreen mode for BrowserWindow with hidden-inset of titleBarStyle.

Linux Load libnotify dynamically instead of linking with the library. Fix pressing Alt not toggling window menu bar. Fix showing notification when icon is inside asar archive or the icon's URL is not file: Add A5 to webContents.

Don't pump message loop when sending synchronous message in renderer process. Fix crash in V8 when doing garbage collection. Fix crash when garbage collecting Buffer s. Fix crash when passing empty path to app. Fix crash when changing page's location while using service worker. Fix x and y options not working in BrowserWindow. Upgrade to Node 5. Add uploadDate property for request object in protocol module. Don't touch the argument when calling Menu. Don't emit will-quit event when calling process.

Fix wrong appData and userData dir values. Fix the exit event of process object not including exit code. Fix wrong origin string in window. Remove the automatically appended Enter Full Screen menu item. Add menu parameter for Tray. Allow toggling asar support in Node's built-in modules with process. Disable CORS for custom protocols. Fix crash when calling loadURL in the did-fail-load event. Fix crash when closing window in the page-title-updated event.

Fix recursive call when using downloadItem. Fix crash caused by race condition on exit when using protocol module. Windows Fix crash on exit when there are heavy Node tasks. Add --proxy-bypass-list command line switch. Fix crash when handling HTTP responses without content in protocol module. Fix a few places using deprecated API inside Electron. Fix callbacks passed to dialog module with remote module not working. Fix wrong deprecation wrappers of BrowserWindow. OS X Fix crash when closing a window in fullscreen state.

Add session module for full multi-session support. Add support for some special keys in webContents. Add certificate-error event to webContents and app. Windows Fix crash when sending notifications with images. Fix showing notifications on Windows 8 when app name is not the same with app user model ID. Support showing the window as desktop.

Fix the size of Tray icon not updated when the image is changed. Show warnings for deprecated APIs, can be turned off with process.

Add electron module which includes all public APIs. The ipc module is deprecated, should use ipcRenderer in renderer process, and ipcMain in main process. The ipcRenderer module adds an event object when emitting events, to match the style of ipcMain module. Remove the - in BrowserWindow 's option names.

Add documents , downloads , music , pictures , videos keys to app. Fix memory leak of webContents. OS X Add drag-enter , drag-leave , drag-end and drop events to Tray module. Fix images not showing in notifications on OS X Quit the application gracefully when process. Fix showing context menu for pepper plugin. Fix possible crashes when exiting. Fix buffer overflow when setting long tooltip for tray icon.

Fix crash when starting crash reporter on some machines. Fix crash when calling process. Add login event for app and WebContents. Add extraHeaders option for WebContents. Fix crash when the callback passed to native APIs threw exception. Fix exception when calling shell. Links with OS X Add support for --cipher-suite-blacklist command line switch.

Add background-color option for BrowserWindow. Enable setting PAC url in session. Fix the locations of external files saved by WebContents. Fix debugger stopped at wrong place in main process when --debug-brk is specified. OS X Improve how draggable regions are handled. Windows Make auto-updater module work together with Squirrel.

Remove subpixel-font-scaling option of BrowserWindow. Windows Fix exception when writing to console in the main process.

Fix crash-reporter might block for a second when starting. Fix crash-reporter not working on x64 Windows when crash came from V8. Remove storage limitation of WebSQL. Fix sending special keys with webContents. Fix uncaught exception when releasing a remote object in browser process. Fix various problems arounds minimum and maximum sizes of BrowserWindow.

Fix postMessage not working for windows opened by window. Fix --ppapi-flash-path failed to recognize path with unicode characters. Fix headers' value being converted to lower case in did-get-response-details event. Windows Don't add prefix for console.

Fix BrowserWindow 's size changed after restored from minimized state. OS X Fix frameless window has wrong initial size when it is not resizable. Fix text-to-speech not working on OS X Linux Fix calling BrowserWindow. Disable Chromium's logging by default unless --enable-logging is specified.

Don't add paths outside the app to Node module search paths in packaged app. Fix crash when closing window while having keyboard focus. Fix pressing Alt not showing auto-hide menubar. Fix various problems with high-DPI displays. Fix tooltips cropped by the window. Add support for preload modules --require in the default app. Move devtools-opened , devtools-closed , devtools-focused events from BrowserWindow to WebContents.

Requests with unhandled protocols like mailto: Fix network throttling in devtools not working. Fix source map not loading for JavaScript in devtools. Fix the regression of window. Windows Fix extension not added to filename in file dialogs when custom filter is specified. Linux Improve how we detect whether Unity is running. OS X Fix the auto updater not cleaning old downloaded files. Add options parameter for new-window event. Inherit parent window's options in child windows opened by window.

Pass a DownloadItem object in the will-download event, allowing users to subscribe to download updates. Fix length of Buffer becoming 0 when there are lots of Buffer created. Fix crash when there is external ArrayBuffer created with pointers to addresses outside the heap. Windows Fix leak of fd s when reading files in asar archives. Fix tray icon not showing sometimes.

Add more information of the request in did-get-redirect-request event. Fix exception when reading an invalid file inside asar archive. Fix activate-with-no-open-windows emitted at wrong time. Fix mimeType not working in registerStringProtocol and its families. Fix crash when calling vm.

Fix occasional crash when closing devtools. Fix crash when opening a new window after closing a window. Add browser-window-created event for app module. Fix process and global objects not available in preload script after the first tick of message loop when node integration is off. Fix devtools-opened event emitted before devToolsWebContents gets created.

Fix memory leak when calling node:: Add activate event for app module. Fix devtools-focused event not working. Fix a regression in v0. Add validatedUrl parameter for did-fail-load event of WebContents. Fix compatibility with old BrowserWindow options.

Fix session not getting persisted on exit. Add partition attribute for web-preferences option of BrowserWindow. The preload , zoom-factor , node-integration options of BrowserWindow have been moved to web-preferences option. Fix using Buffer created with external native C buffer. Fix exception when accessing process. Add will-download event for Session. Add role attribute for MenuItem. Fix wrong source and origin for window.

Fix node integration not working after POST request. Fix referrer not sent for navigations. Return undefined in DOM's alert function.

Improve memory usage when using remote module. Fix memory leak when emitting events. Fix --debug and --debug-brk not working. Fix geolocation not working.

Windows Fix message box not having close button. OS X Fix bad rendering performance. Fix context menu of Tray not showing sometimes. Notice for Windows users: The ffmpeg library is now statically linked to the binary. Most native modules are broken because of io. There are breaking changes in protocol module that require users to rewrite code that uses the protocol module. Users no longer need to ship the ffmpeg library along with the app.

Mac Fix bad rendering performance. Fix printBackground option of BrowserWindow. Fix tray icon not showing. Fix socket and named pipe server not working in main process. Fix building native modules with npm shipped with io. Windows Don't emit right-clicked event when there is menu attached in Tray. OS X Don't emit clicked event when there is menu attached in Tray. Redraw Tray icon when menu is closed. Add userGuesture parameter for WebContents.

Support passing Promise objects in remote module. Fix memory leak when creating NativeImage. Fix the closed property of windows opened by window.