nextcloud / nextcloud/android

Support for nextcloud smart proxies for local LAN / remote IP address transitions

Open
#8,586 0 comments 0 reactions 0 assignees View on GitHub
connectivity enhancement feature: authentication needs review
Dominant language
Kotlin
Stars
5.6k
Forks
2k
Avg merge
2d 18h
Merged PRs (30d)
92

Description

### Is your feature request related to a problem? Please describe.
Background:
I have developed a Nextcloud based solution for home / SMB users that enables a Nextcloud server to be deployed on premises in a local network. The resulting solution consists of a locally deployed Nextcloud Server with a private IP address and an HTTP proxy with a public IP that point back to the locally deployed Nextcloud server. I assume that this type of solution is pretty common in the Enterprise space.

I have also developed a smart redirect feature that redirects users to the local Nextcloud server from the public URL to the local URL transparently if they are on the local network. So if the user is on the local network, Nextcloud will run at LAN speeds and if they are remote Nextcloud will run at WAN speeds. No configuration is required for this this functionality.

I have also fixed my copy of the Nextcloud server which is based on 21.0.0 to enable sharing of files when someone uses the local Nextcloud URL that comes from the smart redirect feature. See nextcloud/server#27240 for details. This feature uses the php "url" return value from the OCS Get_Share_Info API to it already works with the Nextcloud client.

The issue:
The Nextcloud client will not allow the Nextcloud authentication process to proceed if the provided Nextcloud URL issues a redirect.
Because of this I cannot use Nextcloud URL associated with my smart redirect feature with the Nextcloud client.

### Describe the solution you'd like
Allow the the URL provided to the Nextcloud client to perform a redirect at the beginning of the authentication phase.

### Describe alternatives you've considered
I keep hearing that the "solution" to this problem is to deploy a local DNS server that resolves the public domain name to a local IP address. I assume this type of solution is the accepted approach for medium / large enterprises that control a local DNS server. Unfortunately, I am working with SMB / home users that have no idea how to deploy or configure a local DNS server. This class of users does not typically have configuration access to the router which is configured as their local DNS server. Bottom line is this type of solution does not fly for the class of users I am working with.

### Additional context
Add any other context or screenshots about the feature request here.

**NOTE:** Be super sure to remove sensitive data like passwords, note that everybody can look here! You can use the Issue Template application to prefill some of the required information: https://apps.nextcloud.com/apps/issuetemplate

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.