Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
title: Ad blocking issues on search websites in Opera
sidebar_position: 3
---

If AdGuard Browser Extension fails to block ads on search websites in Opera, either automatically or manually, it means that the extension does not have permission to access search page results.

To grant the required permission:

![Allow access to search page results](https://cdn.adtidy.org/content/kb/ad_blocker/browser_extension/allow-access.png)

1. Click the cube icon next to the address bar → _Manage extensions..._.
2. Find AdGuard AdBlocker in the list of installed extensions and tick the box next to _Allow access to search page results_.

Once this is done, ads on search websites will be blocked as expected.
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ To disable protection, enter:
adguard-cli stop
```

This command not only stops the proxy but also stops the trafic from redirecting to it.
This command not only stops the proxy but also stops the traffic from redirecting to it.

### Check protection status

Expand All @@ -45,6 +45,14 @@ adguard-cli status

![Status/Stop protection \*border](https://cdn.adtidy.org/content/Kb/ad_blocker/linux/activation6.png)

### Restart protection

To restart the proxy server and reapply settings, enter:

```sh
adguard-cli restart
```

## Updates

### Check for updates
Expand Down Expand Up @@ -75,15 +83,23 @@ adguard-cli update -v

Use the `config` command to configure AdGuard for Linux. Subcommands:

- `show`: Show the current configuration in `proxy.yaml`
- `show [<section-name>]`: Show the current configuration in `proxy.yaml` (or a specific section)

![Current setup \*border](https://cdn.adtidy.org/content/Kb/ad_blocker/linux/activation7.png)

- `set`: Configure an option in `proxy.yaml`
- `set <key> <value>`: Configure an option in `proxy.yaml`
- `listen_ports.http_proxy`: HTTP listening port
- `proxy_mode`: Proxy mode (`manual` or `auto`)

- `get`: Get the current status of the above options
- `get <key>`: Get the current status of a setting

- `list-add <key> <value> [<value>...]`: Add one or more values to a list setting

- `list-remove <key> <value>`: Remove a value from a list setting

- `reset <key>`: Reset a setting to its default value

- `reset --all`: Reset all settings to their default values

:::note

Expand All @@ -100,21 +116,59 @@ The Automatic mode can only be used if the following requirements are met:

Use the `filters` command to configure AdGuard for Linux. Subcommands:

- `list`: List installed filters
- `list`: List installed and added filters

- `--all`: View all filters

![Filter list \*border](https://cdn.adtidy.org/content/Kb/ad_blocker/linux/filter-list.png)

- `install`: Install a filter. Enter the URL of the filter you want to install
- `add`: Add a built-in filter by ID or name

- `install`: Install a filter. Enter the URL of the filter you want to install or local file
- `--trusted`: Mark the custom filter as trusted
- `--title`: Set a custom title for the filter

- `enable`: Enable a filter. Enter the name or ID of the filter

![Enable filters \*border](https://cdn.adtidy.org/content/Kb/ad_blocker/linux/built-in-filters.png)

- `disable`: Disable a filter. Enter the name or ID of the filter

- `update`: Update filters
- `remove`: Remove an internal or custom filter by ID

- `set-trusted`: Mark a custom filter as trusted or untrusted

- `set-title`: Set a custom title for a custom filter

Filter updates are handled by `adguard-cli check-update` (the `filters update` subcommand forwards to it).

## Manage DNS filters

Use the `dns filters` command to manage DNS filter lists. Subcommands:

- `list`: List installed and added DNS filters
- `--all`: View all DNS filters
- `add`: Add a built-in DNS filter by ID or name
- `install`: Install a custom DNS filter from a URL or local file
- `--title`: Set a custom title for the filter
- `enable`: Enable a DNS filter. Enter the name or ID of the filter
- `disable`: Disable a DNS filter. Enter the name or ID of the filter
- `remove`: Remove a DNS filter by ID
- `set-title`: Set a custom title for a DNS filter

DNS filter updates are handled by `adguard-cli check-update`.

## Manage userscripts

Use the `userscripts` command to manage userscripts. Subcommands:

- `list`: Show installed userscripts
- `install`: Install a userscript from a URL
- `remove`: Remove a userscript
- `enable`: Enable a userscript
- `disable`: Disable a userscript

Userscripts are updated by `adguard-cli check-update`.

## Changing the proxy server listen address in manual proxy mode

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,30 @@ This article covers AdGuard for Windows, a multifunctional ad blocker that prote

The _Network_ module is dedicated to network filtering, and here you will find additional network-related options. Two of them are enabled by default: _Enable traffic filtering_ and _Filter HTTPS_. These are important extra precautions to better filter your web space. Most websites are now using HTTPS, and the same applies to advertising. From many websites, like youtube.com, facebook.com, and x.com, it is impossible to remove ads without HTTPS filtering. So keep the _Filter HTTPS_ feature enabled unless you have a strong reason not to.

![Network Settings \*border](https://cdn.adtidy.org/content/kb/ad_blocker/windows/network/network_settings.png)
![Network Settings \*border](https://cdn.adtidy.org/content/kb/ad_blocker/windows/network/network_settings_2.png)

In this module you can select the checkbox _Use AdGuard as an HTTP proxy_ to use AdGuard as a regular HTTP proxy which will filter all traffic passing through it. You can also enable the _Filter websites with EV certificates_ feature. Extended Validation (EV) SSL Certificates offer a stronger safety guarantee; owners of such websites have to pass a thorough and globally standardized identity verification process defined by EV guidelines. Which is the reason why some users trust websites with such certificates and prefer not to filter them.

At last, there is a section with proxy settings. There you can specify which proxy server AdGuard should use to update filters, get new versions, and so on.

### SockFilter and other network drivers

In _Network_, you can also enable traffic filtering and choose which driver to use: SockFilter, WFP, or TDI.

**WFP** (Windows Filtering Platform) is a powerful driver, but it may present stability risks, such as [occasional system crashes (BSOD)](https://github.com/AdguardTeam/AdguardForWindows/issues/5792) for some users.

The **TDI** driver is also available, but it is outdated and may cause [filtering issues in some versions of Google Chrome](https://github.com/AdguardTeam/AdguardForWindows/issues/5771). [A temporary workaround exists](https://adguard.com/kb/adguard-for-windows/solving-problems/tdi-driver-and-Chrome-142/), but it’s not a reliable long-term solution.

**SockFilter** is an _experimental_, lightweight kernel-mode network driver that works at the socket level (TCP/UDP). Instead of inspecting or modifying packets as they travel through the full Windows networking stack, a sock filter intercepts socket calls (e.g., connect, send, receive, bind) at a higher, more stable abstraction level. This makes it ideal for applications that need to monitor or control network activity without deep packet processing.

Currently, SockFilter Right is still unstable, and you may encounter bugs. When fully tested and implemented, SockFilter has the potential to bring several advantages over other drivers:

- **It operates at a higher, socket-level layer**: SockFilter works with socket operations rather than raw packets, making it less complex and more stable than WFP's low-level packet filtering.
- **No interference with other network drivers**: Because it sits above VPN, firewall, and antivirus WFP filters, it avoids filter-ordering problems and compatibility conflicts common in the WFP stack.
- **Greatly reduced risk of NETIO-related BSODs**: SockFilter doesn't run inside the NETIO packet pipeline, so it avoids the typical crash scenarios caused by WFP callouts mishandling buffers, classification results, or packet memory.

When it comes to disadvantages, SockFilter driver sees only socket-level operations and does not capture traffic generated by other kernel drivers or components that bypass the standard Winsock API. From a low-level networking perspective, this can be viewed as a limitation, since the driver cannot access raw packets or inspect non-socket traffic. However, for an ad-blocking application, this behavior is not just acceptable but optimal. All relevant traffic from browsers and user-mode applications goes through standard sockets, and that's exactly what we need to control. At the same time, ignoring low-level driver traffic removes unnecessary complexity, avoids compatibility issues, and keeps the system stable.

### AdGuard VPN

The last section is dedicated to AdGuard VPN — an ideal tool that provides security and anonymity each time you browse the Internet. You can download it by clicking the _Download_ button or go to the AdGuard VPN website by clicking the _Homepage_ button.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -389,7 +389,7 @@ The following modifiers are the most simple and frequently used. Basically, they
| Modifier \ Products | [CoreLibs apps][cl-apps] | [AdGuard for Chromium][ext-chr] | [AdGuard for Chrome MV3][ext-mv3] | [AdGuard for Firefox][ext-ff] | [AdGuard for iOS][ios-app] | [AdGuard Mini for Mac][ext-saf] | [AdGuard Content Blocker][and-cb] |
| --------------------------------------------------- |:-------------------------------------:|:--------------------------------------:|:--------------------------------------:|:--------------------------------------:|:--------------------------------------:|:--------------------------------------:|:---------------------------------:|
| [$app](#app-modifier) | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| [$denyallow](#denyallow-modifier) | ✅ | ✅ | ✅ | ✅ | | ✅ | ❌ |
| [$denyallow](#denyallow-modifier) | ✅ | ✅ | ✅ | ✅ | | ✅ | ❌ |
| [$domain](#domain-modifier) | ✅ | ✅ | ✅ [*[1]](#domain-modifier-limitations) | ✅ | ✅ [*[1]](#domain-modifier-limitations) | ✅ [*[1]](#domain-modifier-limitations) | ✅ |
| [$header](#header-modifier) | ✅ | ✅ [*[2]](#header-modifier-limitations) | ✅ [*[2]](#header-modifier-limitations) | ✅ [*[2]](#header-modifier-limitations) | ❌ | ❌ | ❌ |
| [$important](#important-modifier) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
Expand Down Expand Up @@ -579,7 +579,7 @@ In the following examples it is implied that requests are sent from `http://exam

:::caution Limitations

In [AdGuard for Chrome MV3][ext-mv3], `regexp` and `any_tld_domain` entries are not supported.
In [AdGuard for Chrome MV3][ext-mv3], `regexp` and `any_tld_domain` entries and the `$removeparam` modifier are not supported.

AdGuard for iOS and AdGuard for Safari support the `$domain` modifier but have some limitations. For more details, see the [SafariConverterLib section](#safari-converter--basic--supported-with-limitations).

Expand Down Expand Up @@ -2670,6 +2670,7 @@ With these rules, specified UTM parameters will be removed from any request save
[AdGuard for Chrome MV3][ext-mv3] has some limitations:

- Regular expressions, negation and allowlist rules are not supported.
- Generic rules are applied before specific rules, and redirection occurs only once. This may prevent subsequent or more specific redirects from applying.
- Group of similar `$removeparam` rules will be combined into one. Example:

```bash
Expand Down Expand Up @@ -2737,6 +2738,7 @@ With these rules, specified UTM parameters will be removed from any request save

1. Rules with the `$removeparam` modifier can only be used [**in trusted filters**](#trusted-filters).
1. `$removeparam` rules are compatible with [basic modifiers](#basic-rules-basic-modifiers), [content-type modifiers](#content-type-modifiers), and with the `$important` and `$app` modifiers. Rules with any other modifiers are considered invalid and will be discarded.
1. Although `$domain` is classified as a basic modifier, it's not compatible with `$removeparam` rules in the Manifest V3 extension.
1. `$removeparam` rules without [content type modifiers](#content-type-modifiers) will only match requests where the content type is `document`.

:::
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
title: Ad blocking issues on search websites in Opera
sidebar_position: 3
---

If AdGuard Browser Extension fails to block ads on search websites in Opera, either automatically or manually, it means that the extension does not have permission to access search page results.

To grant the required permission:

![Allow access to search page results](https://cdn.adtidy.org/content/kb/ad_blocker/browser_extension/allow-access.png)

1. Click the cube icon next to the address bar → _Manage extensions..._.
2. Find AdGuard AdBlocker in the list of installed extensions and tick the box next to _Allow access to search page results_.

Once this is done, ads on search websites will be blocked as expected.
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ To disable protection, enter:
adguard-cli stop
```

This command not only stops the proxy but also stops the trafic from redirecting to it.
This command not only stops the proxy but also stops the traffic from redirecting to it.

### Check protection status

Expand All @@ -45,6 +45,14 @@ adguard-cli status

![Status/Stop protection \*border](https://cdn.adtidy.org/content/Kb/ad_blocker/linux/activation6.png)

### Restart protection

To restart the proxy server and reapply settings, enter:

```sh
adguard-cli restart
```

## Updates

### Check for updates
Expand Down Expand Up @@ -75,15 +83,23 @@ adguard-cli update -v

Use the `config` command to configure AdGuard for Linux. Subcommands:

- `show`: Show the current configuration in `proxy.yaml`
- `show [<section-name>]`: Show the current configuration in `proxy.yaml` (or a specific section)

![Current setup \*border](https://cdn.adtidy.org/content/Kb/ad_blocker/linux/activation7.png)

- `set`: Configure an option in `proxy.yaml`
- `set <key> <value>`: Configure an option in `proxy.yaml`
- `listen_ports.http_proxy`: HTTP listening port
- `proxy_mode`: Proxy mode (`manual` or `auto`)

- `get`: Get the current status of the above options
- `get <key>`: Get the current status of a setting

- `list-add <key> <value> [<value>...]`: Add one or more values to a list setting

- `list-remove <key> <value>`: Remove a value from a list setting

- `reset <key>`: Reset a setting to its default value

- `reset --all`: Reset all settings to their default values

:::note

Expand All @@ -100,21 +116,59 @@ The Automatic mode can only be used if the following requirements are met:

Use the `filters` command to configure AdGuard for Linux. Subcommands:

- `list`: List installed filters
- `list`: List installed and added filters

- `--all`: View all filters

![Filter list \*border](https://cdn.adtidy.org/content/Kb/ad_blocker/linux/filter-list.png)

- `install`: Install a filter. Enter the URL of the filter you want to install
- `add`: Add a built-in filter by ID or name

- `install`: Install a filter. Enter the URL of the filter you want to install or local file
- `--trusted`: Mark the custom filter as trusted
- `--title`: Set a custom title for the filter

- `enable`: Enable a filter. Enter the name or ID of the filter

![Enable filters \*border](https://cdn.adtidy.org/content/Kb/ad_blocker/linux/built-in-filters.png)

- `disable`: Disable a filter. Enter the name or ID of the filter

- `update`: Update filters
- `remove`: Remove an internal or custom filter by ID

- `set-trusted`: Mark a custom filter as trusted or untrusted

- `set-title`: Set a custom title for a custom filter

Filter updates are handled by `adguard-cli check-update` (the `filters update` subcommand forwards to it).

## Manage DNS filters

Use the `dns filters` command to manage DNS filter lists. Subcommands:

- `list`: List installed and added DNS filters
- `--all`: View all DNS filters
- `add`: Add a built-in DNS filter by ID or name
- `install`: Install a custom DNS filter from a URL or local file
- `--title`: Set a custom title for the filter
- `enable`: Enable a DNS filter. Enter the name or ID of the filter
- `disable`: Disable a DNS filter. Enter the name or ID of the filter
- `remove`: Remove a DNS filter by ID
- `set-title`: Set a custom title for a DNS filter

DNS filter updates are handled by `adguard-cli check-update`.

## Manage userscripts

Use the `userscripts` command to manage userscripts. Subcommands:

- `list`: Show installed userscripts
- `install`: Install a userscript from a URL
- `remove`: Remove a userscript
- `enable`: Enable a userscript
- `disable`: Disable a userscript

Userscripts are updated by `adguard-cli check-update`.

## Changing the proxy server listen address in manual proxy mode

Expand Down
Loading