Skip to main content

Command Palette

Search for a command to run...

Cloud-based file share and sync solution

Published
3 min readView as Markdown
Cloud-based file share and sync solution
S
I'm energetic, ambitious person who has developed a mature and responsible approach to any task that I undertake, or situation that I am presented with. I am excellent at working with others to achieve a certain objective on time and with excellence. Customer Engineer| Al/ ML |AI Infrastructure | Cloud Migration |Technical Solution| Vertex AI| Cloud Database |Cloud Networking |DevOps Engineer| Technical Blogger| Generative AI| Google Cloud Ready Facilitator 🌐Linux Linux Professional Institute Certificate Technical Writer \ Cloud Networking Cloud Computing \ Cloud Infrastructure Cloud Consultant \ Customer Engineer 🌐Virtualization - VMware, vSphere, vCenter Server 🌐Programming Skill Technical Skills Proficiency in languages like Java, Python, Scala, or JavaScript. System Administration: Experience with Linux/Unix systems, Windows Server. Networking: Understanding of network protocols, routing, VPC, Subnets, Firewalls, VPNs, Load Balancers, switching, and firewall configurations. Cloud Platforms: Experience with AWS, Azure, or Google Cloud Platform. Databases: Knowledge of SQL and NoSQL databases like MySQL, PostgreSQL, MongoDB. Scripting: Ability to write scripts for automation using Bash, PowerShell, or similar. Monitoring and Logging: Familiarity with tools like Nagios, Prometheus, Grafana, ELK Stack. Configuration Management: Experience with tools like Ansible, Puppet, Chef. DevOps: Knowledge of CI/CD pipelines, Jenkins, Docker, Kubernetes. Security: Understanding of security best practices and tools, Cloud security best practices, IAM, Security Groups, Compliance. Infrastructure as Code: Terraform, CloudFormation, Ansible Compute Services: EC2, GCE, Azure VMs. Storage Solutions: S3, GCS Customer Service Skills:- Communication: Strong verbal and written communication skills. Problem-Solving: Ability to diagnose and resolve technical issues efficiently. Interpersonal Skills: Building and maintaining relationships with clients. Training and Education: Ability to conduct training sessions for clients. Project Management: Managing customer projects and ensuring timely delivery. Knowledge/experience in configuring and supporting devices such as Cisco, Juniper, Checkpoint, etc. Knowledge Cloud Migration, Presale, Data Center relocation, Go-to-Market Strategy. Certifications: AWS Certified Solutions Architect Microsoft Certified: Azure Solutions Architect Expert Google Professional Cloud Architect Certified Kubernetes Administrator (CKA)

Overview

Implemented a cloud-based scalable and secure file share and sync solution using AWS services. The solution can be easily scaled up to run in your data center or on a public cloud, with its servers, storage etc. completely managed and controlled by your IT team in accordance with a company’s governance and security requirements.

Problem Statement

According to recent research, 40-75% of employees are using Dropbox to share files inside and outside of their businesses. Half of those Dropbox users do this even though they know it's against the rules. More than 40% of businesses have experienced the exposure of confidential information and the estimated average cost of a data breach equaled $5.5 Million in 2011.

These files, containing sensitive company and customer data, are stored in a public cloud outside of the businesses' control - possibly even outside of the country. The potential for data leakage and security breaches is enormous and companies need to stay compliant with their own policies and procedures for security and governance.

Proposed Solution

ownCloud is an open source secure file sync and share solution which can help you gain control of this situation and enable you to create and deploy an enterprise scale file solution. ownCloud can run in our data center or on a public cloud, with its servers, storage etc completely managed and controlled by your IT team and management in accordance with our company’s governance and security requirements. We have decided to launch the ownCLoud service from AWS.

High Level Deployment Architecture

Our primary goal is to create a highly secure and resilient deployment architecture. We have achieved the same by deploying all the services/resources except the app service in private subnet. Also, we have configured multiple rules in security groups and NACL to limit the access from external world. As you can see below the MySQL instance in private subnet can only be accessed via public subnet and hence external world does not have any access to it.

We have configured NAT Gateway in order to allow EC2 instances from private subnet to access the internet. Ideally, we shall temporarily allow this access until required packages are installed. As a best practice, we shall disable the external access post this activity.

Here are the primary steps that I have followed.

  • Keeping security in mind we have installed the MySQL server in EC2 instance in private subnet.

  • In order to install the MySQL server the private EC2 instance needs outbound access to the internet. This is achieved by configuring NAT in the public subnet and then followed by adding it to the default route table.

  • Only two ports are open from My SQL server from the public subnet. Those ports are SSH: 22 and MySQL: 3306

  • OwnCLoud app server is installed in an EC2 instance in the public subnet.

  • The app server has two ports exposed; SSH: 22 & HTTP: 80

  • NAT instance is configured in the public subnet.

4 views

More from this blog

C

CloudGrad

96 posts