GeoBlock for SSH and projects

Country-based access control for SSH and separately for each web project, using the GeoLite database, cache and an explicit Apply action in the panel.

  1. What GeoBlock does

    GeoBlock in uAdmin has two areas: global SSH access protection and web project protection. The panel downloads GeoLite data, builds a local country cache and applies rules according to the selected policy. For web projects, rules are separate per project, so one project can allow only EU traffic while another remains globally open.

  2. Requirements

    Install GeoIP/GeoLite support through the panel and check cache status. SSH protection requires nftables. For web projects, the panel applies configuration at project/web-server level, according to the domain and selected countries.

    Tip

    For SSH GeoBlock, do not test strict rules on your only active SSH connection without an alternative way back into the server.

  3. Global SSH GeoBlock

    In the GeoBlock module select countries and mode for SSH, generate or refresh the cache, then click Apply. The panel clearly separates data preparation from actual firewall rule application.

  4. Per-project GeoBlock

    Each project can have its own GeoBlock rules. Open the project, choose GeoBlock settings for that project, select countries and apply the rules. The change applies only to that project and does not affect other domains on the server.

  5. Verification and rollback

    After applying, check status in the panel and test the project from the expected country or trusted network. For SSH rules keep the existing SSH session open until you verify a new login. If something is wrong, use Flush/Disable or the recovery/SSH console.

    sudo nft list table inet uadmin
    sudo /usr/local/uadmin/bin/geoblock-apply-ssh.sh --help