Skip to content

Disabling SSL Decryption breaks HTTP #409

@nixtar

Description

@nixtar

Hello,

I'm looking to use this in a Home Lab scenario where I'd like to have it just act as a forward proxy but be able to implement my own host based filtering.

In the doco here I can see an example to disable global ssl using fluxzySetting.AddAlterationRules(new Rule(new SkipSslTunnelingAction(), AnyFilter.Default));.

This works but appears to break http.

Code:

var fluxzySetting = FluxzySetting
    .CreateDefault(IPAddress.Loopback, 8888)
    .SetAutoInstallCertificate(false);

fluxzySetting.AddAlterationRules(new Rule(new SkipSslTunnelingAction(), AnyFilter.Default));

await using var proxy = new Proxy(fluxzySetting);

proxy.Writer.ExchangeUpdated += (_, args) =>
{
    Console.WriteLine($"#{args.ExchangeInfo.Id:0000} {args.UpdateType}: " +
                      $"{args.ExchangeInfo.Method} {args.ExchangeInfo.FullUrl}");
};

proxy.Writer.ConnectionUpdated += (_, args) =>
{
    Console.WriteLine($"#{args.Connection.Id:0000} New connection: " +
                      $"{args.Connection.Authority.HostName} {args.Connection.Authority.Port}");
};

_ = proxy.Run();

Console.WriteLine("Press any key to exit");
Console.ReadKey();

Powershell to test:

Invoke-WebRequest -Uri "https://www.google.com" -Proxy "http://127.0.0.1:8888"

^This works as expected and the following is printed to the console:
#0001 BeforeRequestHeader: CONNECT http://www.google.comwww.google.com:443

Invoke-WebRequest -Uri "http://www.google.com" -Proxy "http://127.0.0.1:8888"

^This does not work, the following is printed but nothing is ever returned to the client and it eventually times out.
#0002 BeforeRequestHeader: GET http://www.google.com/

Without the SkipSslTunnelingAction http works fine but https obviously requires the SSL cert.

Is there a way to disable SSL Inspection while also allowing http to work?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions