Environments
Environments in NetFoundry Frontdoor represent secure runtime contexts where your Frontdoor Agent operates to expose your backend services. Each Environment establishes a trusted connection between your local infrastructure and NetFoundry's global network, enabling you to create Shares that make your services accessible through the internet without opening firewall ports.
What is an Environment?
An Environment is a secure, isolated runtime context created when you deploy and run a NetFoundry Frontdoor Agent on your infrastructure. The Environment serves as the foundation for all your service sharing activities, providing the secure tunnel and identity management necessary to connect your backend services with NetFoundry's global network.
Each Environment maintains a unique identifier (zId) that provides cryptographic identity and is created automatically when you install and bootstrap the Frontdoor Agent on your systems. Environments establish secure, encrypted tunnels without requiring inbound firewall ports and support deployment across various operating systems and environments. They serve as the essential resource foundation required for creating Shares that expose your services publicly.
Illustration of what an Environment looks like
graph TB
A[Your Infrastructure] --> B[Frontdoor Agent]
B --> C[NetFoundry Infrastructure]
C --> D[Internet Users]
subgraph "Environment"
subgraph "Your Network"
A
B
end
C
end
Security and Best Practices
Environment Security
Unique Identity Each Environment receives a cryptographically secure identity that cannot be spoofed or replicated.
Encrypted Communication All traffic between your Environment and NetFoundry's network is encrypted end-to-end.
Zero-Trust Architecture Environments operate on zero-trust principles - no implicit trust is granted based on network location.
Deployment Best Practices
Strategic Placement Deploy Frontdoor Agents (and create Environments) close to your backend services to minimize latency.
Descriptive Naming Use clear, descriptive names for your Environments to make management easier:
production-web-server
development-api-gateway
staging-database-proxy
Resource Planning Consider the resource requirements of your backend services when planning Environment deployment.
Monitoring Regularly review Environment metrics to understand usage patterns and performance.
Environment Lifecycle Management
Regular Review Periodically review your Environments to identify unused or outdated instances.
Proper Cleanup Delete Environments that are no longer needed to maintain security and reduce complexity.
Documentation Maintain documentation about what services each Environment supports and its purpose.
Integration with Other Components
Relationship with Shares
Environments serve as the foundation for Shares, with every Share requiring association with a specific Environment to function properly. Shares route traffic through their associated Environment to reach backend services, and when an Environment is deleted, all its Shares immediately become inaccessible.
Connection to Agents
The Frontdoor Agent creates and manages the Environment by automatically creating an Environment during installation while maintaining the secure connection that keeps the Environment operational. Agent configuration directly affects Environment behavior and capabilities, and although stopping an Agent does not delete the Environment, it renders the Environment inaccessible until the Agent is restarted.
Frontend Integration
Environments work with Frontends through Shares to create a complete connectivity path from the public internet to your private services. Frontends receive public traffic and route it to Shares, while Shares use Environments to deliver that traffic securely to your backend services.
Common Use Cases
Production Service Exposure
Create an Environment in your production infrastructure to expose critical services including web applications, APIs, customer-facing services, and partner integration endpoints securely and efficiently.
Development and Testing
Use Environments to share development resources such as internal testing environments, staging systems for validation, and demo environments that provide stakeholders with easy access to development progress.
Multi-Location Deployment
Deploy multiple Environments across different geographic locations to establish regional service presence, support disaster recovery scenarios, and distribute load effectively across geographic regions for optimal performance.
Troubleshooting
Environment Connection Issues
Agent Connectivity If an Environment appears offline, check that the Frontdoor Agent is running and has network access.
Network Configuration Verify that your network allows outbound connections to NetFoundry's infrastructure.
Resource Availability Ensure the system hosting the Agent has sufficient resources and is healthy.
Share Creation Problems
Environment Verification Confirm the target Environment exists and is active before creating Shares.
Next Steps
- Learn how to create Shares using your Environments
- Explore Frontends to understand how traffic reaches your Environments
- Review the Environment API for programmatic management
- Set up monitoring and Health Checks for your Environment-based services