Cloud Computing Asm2 Tran Xuan Tu 2
Cloud Computing Asm2 Tran Xuan Tu 2
Cloud Computing Asm2 Tran Xuan Tu 2
INFORMATION TECHNOLOGY
HIGHER NATIONAL DIPLOMA IN COMPUTING
FINAL REPORT OF ASSIGNMENT 2
UNIT: CLOUD COMPUTING
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences
of plagiarism. I understand that making a false declaration is a form of malpractice.
Student’s signature:
Tu
Grading grid
P5 P6 P7 P8 M3 M4 D2 D3
TABLE OF CONTENT
INTRODUCTION ............................................................................................... 1
1.2.2 Install WordPress on Ubuntu 18.04 LTS with Nginx, MariaDB and PHP-
FPM [1] 22
1.3 Discuss the issues and constraints one can face during the development
process 64
2.1 Analyze the most common problems which arise in a Cloud Computing
platform [2] 67
2.3 Assess the most common security issues in cloud environments ............. 69
2.4 Discuss how to overcome these security issues when building a secure cloud
platform 74
CONCLUSION................................................................................................. 78
REFERENCES ................................................................................................ 79
iii
Table 11 Configure the WordPress site configuration file on the server ................ 27
vi
vii
INTRODUCTION
TuDoi Company is a Vietnamese company that sells shoes in many provinces across
Vietnam. In Vietnam, shoes are quite a popular fashion item. TuDoi company aims to
provide high quality shoe products, meet the needs of customers, at low prices. From the
designs in Assignment 1 and the architectural and functional designs, sum it all up to
implement this Assignment 2. In this report, I will give some e-commerce website
development processes based on the original design. This report consists of two main
chapters as follows:
In chapter 1 the tasks are: Develop Cloud Computing solutions using service provider
open source frameworks and tools. Specifically as follows: I will have to configure the cloud
computing platform routing first, for my company using the AWS platform. Then I go through
the techniques to configure them, and download and install wordpress on the cloud service
provider's operating system. Then I proceeded to implement the e-commerce website
system. First, I'll import the right theme with full store-related functionality, load plugins that
assist me in building, controlling, and maintaining the site. Then proceed to design the
interface with full functionality as the design required in Assignment 1. Includes basic
functions, add products, add product categories, add users, add articles, add feedback
recovery, ... for administrators. And functions such as viewing, purchasing, checking cart,
payment, ... for customers. Next use plugins to fight hackers, spam, hackers or to backup
and analyze the store's data so that management can easily analyze the data. In addition, I
also give some of the difficulties I encountered when building an e-commerce website
system and how to overcome them.
In chapter 2 the tasks are: Analyze technical challenges for cloud applications and
assess their risks. First, I outline common problems that often arise in the cloud computing
system, including many risks and impacts to our company. From those risks, we take
measures to reduce or eliminate risks for the company to develop more stably. Then, given
the common security issues in the cloud environment, evaluate each issue, outline the
limitations of each of these. Then discuss and how to overcome these security issues when
building a secure cloud platform.
After surveying the market, customers and referring to several e-commerce websites
on the internet, we have found several methods and techniques to develop our company's
website. To meet the practical needs of building an e-commerce website specifically, my
company is a website selling shoes. This website will be deployed on cloud computing, via
wordpress, easy to manage and design interface and easy functions. We use the IAAS de-
ployment model provided by AWS (EC2), and public cloud to deploy this website. We will
proceed to configure functions and services on EC2, download and install wordpress on
Ubuntu operating system provided by EC2, configure netword, repository, security,... to
complete the initial step. Leading the way in website building.
The requirement is to build a website that sells shoes with a beautiful interface and
full functions suitable for customers. As for the look and feel of my website, we use the
FlatSome theme to build the interface, we use techniques to come up with the most beautiful
and user-friendly interface possible. In terms of functions, we divide them into admin func-
tions and customer functions. For customers, we will provide functions such as: Customers
only want to see the store's products without requiring login, if they want to buy goods, cus-
tomers must register for an account and log in, add to cart function to help customers select
items and add to cart, checkout function to fill out basic order information, check order and
payment method, comment and suggest each store product ,... For admin there are func-
tions, edit interface, add products, add categories, manage users, manage products, man-
age comments, statistics and evaluate the store's sales,...
The design part of the functional system that I mentioned in Assignment 1 includes
the functions I gave in the requirements section. I will not mention it in this section anymore.
We first deploy the cloud computing system first, namely choose EC2, configure re-
lated issues, use Ubuntu as server for website, then install wordpress on ubuntu, use SSH
to connect with ubuntu and deploy the site on it. Next, log in to the dashboard and proceed
to build the website, add and activate the theme, edit the parts of the website, install the
appropriate plugins for the website such as: Duplicator to backup data, antispam bee to fight
spam, sucuri or wordfence for security, woocommerce for sales and product management,
... then build the pages according to the design. Once the interface was up and running, w e
started adding properties, categories, and products to the site.
Finally, we perform tests on the functionality of the website, come up with the right
test cases and test log to check how the website works.
Step 1: Open Google and find the following link " https://aws.amazon.com/en/ " to
enter the AWS interface in the browser.
A registration interface will appear, asking the user to enter the fields and steps re-
quired by AWS to complete the user account registration.
When customers sign up for Amazon Web Services (AWS), they automatically reg-
ister an AWS account for all services in AWS, including Amazon EC2. Customers only pay
for the services they use.
After successfully registering an AWS account, log in to the AWS system to use the
services they provide.
Move your mouse to the AWS Services tab in the upper left corner. Here, you will see
all AWS services categorized by region. Compute, Storage, Database, etc. To create an
EC2 instance, we must select Computer EC2, as shown in the next step.
An EC2 instance is a virtual server in Amazon Web Services terminology. EC2 stands
for Elastic Computing Cloud. This is a web service where AWS subscribers can request and
configure computing servers in the AWS cloud.
Open all services and click EC2 under Computing Services. The EC2 console will be
launched. This is the EC2 console. Here you will get all the key information about the AWS
EC2 resources that are running.
In the upper right corner of the EC2 console, select the AWS region where you want
to provision the EC2 server. Because our company is in Vietnam, we choose the region
closest to Vietnam. Here we choose Singapore AWS to provide 10 regions around the world.
After selecting the desired region, return to the EC2 console. Click the "Start
Instance" button in the "Create Instance" section.
You will be asked to choose the AMI of your choice. When you launch an EC2
instance from your preferred AMI, the instance will automatically launch with the required
operating system. Here we choose Ubuntu 18.04 AMI.
In this step, we need to select the Instance type according to our needs. For business
needs, we will choose the instance type: t2.micro, which is a server with 1vCPU and 1GB
memory provided by AWS. Then click "Config Instance Details" for more configuration.
Automatic Public IP Assignment: Leave this feature off for now and we will assign
this case a static IP called EIP (Elastic IP) later.
In the next step, leave the IAM role option 'None' intact. We will cover the topic of
IAM's role in detail in IAM services.
Shutdown Behavior: When you accidentally shut down your Instance, you definitely
don't want it to be deleted but stopped.
Click 'Add Storage' to add the data volume to your Insstance in the next step.
In the add storage step, you will see that the instance has been automatically provi-
sioned with an 8GB SSD root drive. (The maximum capacity available for general use is 16
GB). We can adjust the size of the capacity, add new capacity, change the type of capacity,
etc. AWS provides 3 types of EBS capacity: magnetic, general-purpose SSD, and preset
IOPS. You can select the capacity type according to the IOP requirements of the application.
In the next step of configuring the security group, you can restrict the traffic on the
instance ports. This is an additional firewall mechanism provided by AWS in addition to the
firewall of the operating system used. Define open IP ports as follows:
In this step will review all selected options and parameters and continue to launch
Instance.
Step 10: Create a key pair (a set of public-private keys) to login to the instance.
AWS stores the private key in the instance, and you need to download the public key.
Make sure you download the key and make sure it is safe and secure; if you lose it, you
can’t download it again.
Once you've finished downloading and saving the key, launch your Instance.
Click the "instance" option in the left pane, you can see the status of the instance is
"pending" in a short time. When the instance is up and running, you can see that its status
is "Running". Note that the instance received a private IP from the AWS bucket.
Step 13: Create a static IP (Elastic IP – EIP) and connect to the instance
EIP is a public static IP provided by AWS. It stands for Elastic IP. Normally, when you
create an instance, it automatically obtains the public IP from the AWS bucket. If you stop/re-
start your instance, this public IP will change-this is automatic. In order for your application
to have a static IP, you can connect via the public network from there, you can use EIP.
1. On the left pane of the EC2 Console, you can access 'Elastic IPs' as shown below.
2. Allocate a new Elastic IP address.
From the Lubuntu desktop, we can access to the Ubuntu instance via SSH, using
Terminal. The steps and commands are shown below.
3. Gives the user read permission of the key file, and removes all other permission.
cd Downloads/
1.compute.amazonaws.com
1.2.2 Install WordPress on Ubuntu 18.04 LTS with Nginx, MariaDB and PHP-FPM [1]
First, install NGINX HTTP Server, WordPress CMS requires web server and NGINX
HTTP server is the most popular open source web server today (Richard Zayzay, 2018).
Always update the Ubuntu server before installing the package... To update Ubuntu,
run the following command.
sudo apt update && sudo apt dist-upgrade && sudo apt autoremove
After updating Ubuntu, run the following command to install Nginx HTTP Web Server.
After installing Nginx, you can use the following commands to stop, start and enable the
Nginx service that is always started when the server starts.
The MariaDB database server is now rapidly surpassing MySQL in the Linux and
open source communities. MariaDB is the default database server, and WordPress requires
a database server. Run the following command to install MariaDB. After installation, the
following commands can be used to stop, start, and enable the MariaDB service so that it
always starts when the server starts. Then run the following command to protect the Mari-
aDB server and generate a new root password.
sudo mysql_secure_installation
- Enter current password for root (enter for none): Just press Enter
Now, run the following command to install PHP-FPM and related PHP modules on
the new server. After installing PHP, run the following command to open the PHP-FPM de-
fault configuration file.
sudo apt install php-fpm php-common php-mbstring php-xmlrpc php-soap php-gd phpxml
php-intl php-mysql php-cli php-ldap php-zip php-curl
Then scroll down the lines in the file and change the next lines below and save again.
Or press Ctrl + W to find the corresponding lines as below, edit and save.
- post_max_size = 100M
- memory_limit = 256M
- max_execution_time = 360
- upload_max_filesize = 100M
- date.timezone = Asia/Ho_Chi_Minh
At this point, all the necessary WordPress servers and software packages have been
installed. The new server is now ready to host WordPress. On the new server, create an
empty WordPress database. WordPress will use this empty database to store its content.
Run the following command to log in to the database server. When prompted for a password,
enter the root password you created above.
- Login to the database server. When prompted for a password, enter the root pass-
word created above (123qwe!@#).
FLUSH PRIVILEGES;
EXIT;
Next, run the following command to download the latest WordPress version. Then
run the following command to set the correct permissions for the WordPress root directory.
Next, run the following command to create the WordPress wp-config.php file. Run the
following command to open the WordPress configuration file.
sudo mv /var/www/html/wordpress/wp-config-sample.php
/var/www/html/wordpress/wp-config.php
Enter the bold text below that we created for the database and save.
// ** MySQL settings - You can get this info from your web host ** //
define('DB_NAME', TuDoi_database');
define('DB_USER', 'user');
define('DB_PASSWORD', 'user123!@#');
define('DB_HOST', 'localhost');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
Configure the WordPress site configuration file on the server. Run the following com-
mand to create a new profile called WordPress.
Copy and paste the content below into the file and save it.
server {
listen 80;
listen [::]:80;
root /var/www/html/wordpress;
client_max_body_size 100M;
location / {
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
After configuring the above VirtualHost, enable it by running the following command.
Run the following command to reload the Nginx web server and install PHP-FPM.
For my company website I use Flatsome and Flatsome child themes, currently this is
a popular theme for commercial websites. I download these theme files and unzip, then
upload this theme in the dashboard to activate and use them as a theme for the web site.
Set up basic website editing such as menu, header, footer, style, widget, ... of the
theme using drag and drop, to edit them to your liking.
There are many properties you want to use, drag them into the pre-divided cells to
display on the web page and then press "published" to be saved.
To customize the footer for the website, we have to go to the widget and drag the
blocks in to fit the website. Divide the footer into corresponding columns, depending on the
company. Then press "Published" so that all actions are saved on the website. For me,
dividing the footer into 3 columns I do the following:
In this section, we customize the menu to display on our website. You can create
many different menus then click "Published" to save.
One of the main reasons why WordPress has become so popular in recent years is
because of the extensive support of WordPress plugins. However, because there are so
many options, choosing a good plugin for WordPress can be tiring.
Antispam Bee
- Randomly arrange the order of some items in the comment box to deceive spam
software.
WooCommerce
Figure 41 WooCommerce
WooCommerce is a great plugin that can help you sell online. It is also a free and
paid plugin designed to integrate with WordPress. WooCommerce is a popular and widely
used e-commerce plugin in the world today. It can help you manage your store easily and
simply. With its convenience and flexibility, WooCommerce can easily access hundreds of
WordPress extensions. WooCommerce accounts for about 30% of all online stores in the
world, more than any other online sales plugin.
Benefit of WooCommerce:
Wordfence
Figure 42 Wordfence
Wordfence Security is one of the most fully functional WordPress security plugins. It
allows users to fully manage website security and even automation. Word-fence Security
provides you with many powerful functions and comes with complete and detailed
documents.
Main function:
Advantages:
- The free version of the plug-in contains all the functions needed to protect the se-
curity of the website.
- It is completely open-source.
Sucuri Security
Sucuri Security is a free plugin with standard WordPress security enhancements. The
free version of this plugin does not include a firewall. Sucuri Firewall (WAF) is a paid service
that you can integrate with the free Sucuri Security plugin.
Duplicator
The Duplicator plugin has a WordPress localhost backup function and can be used
as a data backup plugin. In other words, it backs up all data on the website, including source
code and databases. ... copy part or all of the WordPress website data, the maximum file
size is 150MB.
Figure 44 Duplicator
Backups are critical to operations and should be done regularly after each website
change. It helps to avoid data loss and ensure data recovery in the event of errors or
problems. Execute the following command in the terminal to backup the website.
cp /var/www/html/wordpress/wp-config.php wp-config.php.backup
cp /var/www/html/wordpress/index.php index.php.backup
rm -f /var/www/html/wordpress/wp-config.php
cp /var/www/html/wordpress/wp-config.php.backup wp-config.php
rm -f /var/www/html/wordpress/index.php
cp /var/www/html/wordpress/index.php.backup index.php
The following are the pages of my website, all include 17 pages shown below:
Home page
In the following, we will show a few pages of our company's e-commerce website.
About Us Page
Shop Page
My Account Page
I created 1 user with role as customer and then checked my account page. The
results are shown below:
Cart Page
I add 1 product to the cart and proceed to view the interface of the cart page.
Checkout Page
To publish a new post to a WordPress website, you must visit the WordPress
dashboard management page and select the publish menu on the left. This is the place
where you are allowed to manage posts, also known as posts on the website, depending on
the administrator account level, and may have additional add, delete, and edit permissions.
- Click "Add New" in the upper left corner to add a new post.
- After you have finished the article, select the "Publish" button in the top right corner
to post.
Media Library
This is where the site's images are stored. The administrator can add the site's im-
ages here for storage.
This is where the site's page is stored. The administrator can add the site's pages
here to archive, edit, and delete.
Comments
This is where the admin can respond, delete, rate,... the customer's product
comments for that product.
Figure 57 Comments
This is where the admin can add discount codes for his products in the website.
Customers can enter this discount code during checkout to receive the store's offer.
Currently I want to add a discount code:
- After entering the complete information, press Publish to save and post.
This is a function that helps administrators to add customers directly to the database
without customers needing to register on the website. To add an account login to the website
do the following:
Add Product
Adding a product requires the user to enter the product name, description, detailed
description, related images, price, discounted price, a few more product related information.
Here I will show how to import products:
Check Orders
Check the orders and proceed to complete the order. The steps are as follows:
- Select Orders
View reports
Overview report:
Products report:
Revenue Report:
Orders Report:
Login
Customers who use an account to register and log in to the website to buy goods,
and customers who just want to view goods, are not required to log in.
Quick view function to briefly view the products to see the necessary information of
the product so that customers can make their choice.
Search function
The search function is launched to find products related to keywords. For example,
"nike". The system will offer products with the keyword nike for customers to review and
choose the products they want.
Review function
This is a function that allows customers to evaluate products that they feel like or
dislike based on the quality of the product, the store's working attitude, etc. Here, I will add
a Product reviews are as follows:
After selecting the appropriate product and quantity, the customer will click add to the
cart. They can then go to the cart to check the product and quantity they have added.
Checkout
The customer will fill in the necessary information for the order such as: delivery
address, full name, phone number, ... so that the system can deliver the goods to the
customer.
Figure 73 Checkout
1.3 Discuss the issues and constraints one can face during the development
process
For someone who has no experience with wordpress, this is one of the challenges
for them. The nature is not difficult, no matter how to program, you can still do it, but without
anyone's guidance, the success rate is not high. To do well, you need someone to guide
and teach you. Here, I share the difficult problems that I encountered when building an e-
commerce website for the company. For me, this is a relatively difficult and very demanding
task, I have to use the tools and knowledge that I have learned to apply to the successful
development of this web site as it is now. In addition, I encountered some difficulties as
follows:
First, I have difficulty at the stage of creating an AWS account, the first steps are very
smooth until the payment step, I do not have a VISA card so it is very difficult to do this. I
have to borrow a card and register, this process takes a long time, so it slows down my
progress. Although it is free for 12 months, this is also one of the first difficulties that I en-
countered when building a website.
Second, the free WordPress themes are limited in the features of the website and the
interface is not beautiful. I have tried a lot of wordpress themes and feeling unsatisfied takes
a lot of my time. Then I asked the trainers and got help, currently I'm using the FlatSome
theme. I feel this theme is very easy to use, optimize the sales website, simple operations,...
Thanks, I found this theme early to help complete the work on time.
Third, my network is also very poor, it takes a long time to load the admin page. In
fact, not only WordPress website, any website that the administrator does not know how to
optimize will run slow. You can optimize your WordPress website with tricks like choosing
the right theme, reducing the number of ads, and so on.
Next, I encountered some difficulties in implementing parts of the website, most word-
press plugins have to upgrade to premium to use the maximum functionality. I had to use
the free versions because the covid epidemic is booming in my country, I don't have the
funds to upgrade. This is also one of the difficulties that I have to face.
was interesting that I only had a little difficulty but I still finished the product as expected. In
addition to having knowledge, you also have to be smart to be able to do it quickly and
accurately.
Moreover, I am a newbie, the skills and knowledge are not there, it is very difficult to
start using wordpress. I spend a lot of time and effort researching resources, websites,
watching videos on how to build websites, how to optimize websites for seo standards. I
hope that through this exercise I will have a lot of knowledge of wordpress so that I can work
in the future. Thanks to the school for helping me with these knowledge.
In addition to the difficulties I faced while developing. Skills and knowledge are also
one of the barriers that prevent us from succeeding. Before doing something, we should
have a clear plan, create blueprints step by step, so that the development process is easy,
easy to control, easy to maintain and easy to fix. Working according to the right process
brings us many benefits, gets the job done on time, the quality exceeds our expectations,
gets people's trust and gives you more important tasks. Relationships also make it easier
for us to work, whenever there is difficulty in a certain step, we can ask friends, teachers, ...
to help us. Knowledge and skills will stay with us for a lifetime, with us for a lifetime. Cherish
the knowledge and skills learned because they are always with you.
In addition to subjective reasons, there are also difficulties from AWS. AWS is the
most popular cloud computing platform and also the largest cloud provider in the world. AWS
is known for a wide range of features, reliability, and security. However, AWS is not all about
advantages. Issues, especially those related to security, can still occur in AWS. Here are
some of the least common problems with AWS:
- Amazon's EC2 resource limits by region. So the user's region can determine how
many resources they will have access to. In addition, as a new user, AWS prevents users
from using too many resources and spending a lot of money.
- Because security is one of the key features, AWS limits some features that cannot
be changed.
- AWS charges for immediate support and customers can choose any plan between
Developer, Enterprise, and Enterprise.
- AWS also has common cloud issues such as downtime, limited control, and redun-
dancy protection, as well as general cloud security issues.
2.1 Analyze the most common problems which arise in a Cloud Computing
platform [2]
Security
The most important concern when investing in cloud services is the security of cloud
computing. That's because your data is stored and processed by a third-party provider and
you cannot see it. Every day, you will receive notifications about invalid authentication,
stolen login, stolen account, data breach, etc.
Password Security
As more and more people access your cloud account, it becomes vulnerable to
attacks. Anyone who knows your password or breaks into your cloud will be able to access
your confidential information.
Cost Management
Cloud computing allows you to access application software through a fast Internet
connection and allows you to save investment inexpensive computer hardware, software,
management, and maintenance. This makes it affordable. But it is difficult and expensive to
customize the organization according to the needs of a third-party platform.
Lack Of Expertise
As the workload of cloud technology increases and cloud tools continue to improve,
management becomes difficult.
Internet Connectivity
Performance
Lack of resources
One of the challenges facing enterprises is the lack of qualified human resources. As
the business grows, so does cloud technology. So you need experts to keep up with the
technology.
When choosing a service provider for your business, you should carefully read the
terms and conditions of the policy. To be authorized, the provider will meet the security
standards set by the government.
Security
Fortunately, cloud providers have recently begun efforts to improve security. Choose
a reputable service provider. You can also exercise caution by verifying that the supplier has
implemented a secure user identity management system and access control procedures.
To ensure the privacy and security of your organization, please verify the security
management, identity verification, and access control permissions of your service provider.
Also, check their database privacy and security.
Password Security
Here, organizations should use multi-level authentication and ensure that passwords
are protected. In addition, passwords should be changed regularly, especially when a
particular employee resigns and leaves the organization. Must be careful to grant access to
username and password.
Cost Management
There are several ways to control the cost of using cloud services, which is to analyze
the services to be used. Check your company's financial situation, and then set up tools to
automate financial constraints. Regular financial reports on the cost of using cloud services
to determine the most suitable service.
Lack Of Expertise
Companies and enterprises must train a workforce that can handle cloud computing
tools and services. Therefore, companies need to take steps to upgrade their IT teams to
alleviate this challenge.
Internet Connectivity
Upgrade the network system for the organization, use large bandwidth, and ensure
the stability of the network connection, so as not to cause major business losses.
Performance
Before investing, you should look for a supplier with advanced technology. The
performance of BI and other cloud-based systems is also tied to the vendor's system.
Choose suppliers carefully and investigate whether they have an agreement to alleviate the
problem in real-time.
Lack of resources
Hiring cloud experts for the company is very expensive. Instead, they should work
part-time, because cloud services only need to be customized after they are up and running.
In addition, the tools available in the cloud can be used for monitoring, backup,... these tools
can optimize cost, management, security without much research.
Identify risks and estimate losses in the cloud. Clearly define the roles and
responsibilities of service providers. Use security measures to ensure information security
within the organization and take corrective actions.
Today, businesses, companies, and governments are shifting workloads to the cloud.
However, due to lingering concerns about data security in cloud computing, some
organizations still resist the huge appeal of the cloud. There are several areas that are at
risk of being compromised, so you must stay safe when it comes to cloud computing. Each
sector represents a potential attack vector or source of error. The following is the specific
area:
The physical location of the cloud data center must be protected by CSP to prevent
unauthorized access to CSC data. Even firewalls and encryption cannot prevent data from
being stolen. Since CSPs are responsible for the physical infrastructure, they must
implement and operate appropriate infrastructure control measures, including employee
training, physical location security, and network firewalls. In addition, the CSP is responsible
for complying with the privacy regulations of these jurisdictions.
These risks are failures related to the hardware, technology, and services provided
by the CSP. In a public cloud with multi-tenant characteristics, these include the problems
of resource sharing and isolation and the risks associated with changing the CSP, namely
portability. Maintain and inspect infrastructure more frequently.
These are legal risks, such as risks related to lack of legal information, jurisdiction
changes, illegal contract terms, and ongoing legal disputes.
It is believed that the core of all computers is the process of processing data into
meaningful information. Therefore, when the processing and storage of such data are
outsourced to an infrastructure owned and maintained by a third party, this leads to many
issues that need to be considered when protecting the data. We need to consider many data
security risks. These issues are particularly obvious in public clouds because multiple parties
(some of which may be malicious) must share the aforementioned infrastructure.
Some of the attributes we need to ensure with data when using the cloud, I'll list
below.
Privacy: It is one of the more important issues that need to be solved in cloud and
general network security. Privacy ensures that CSC's personal and identifying information
will not be disclosed to unauthorized users.
Integrity: Data integrity refers to the confidence that the data stored in the cloud has
not been altered in any way by unauthorized parties when retrieving data. The CSP must
ensure that no third party can access the data in transit or the data stored. Only authorized
CSC can change its data.
Availability: This attribute ensures that CSC can access its data and will not be
denied access due to errors or malicious attacks by any organization.
For our company we use the Infrastructure as a Service deployment model and the
public cloud service model. In the following, we will address security issues related to the
Infrastructure as a Service and public cloud model.
However, IaaS may be the target of cyberattacks, attempts to hijack IaaS resources,
launching denial of service attacks, running botnets, or mining cryptocurrency. In many data
breaches, storage and database resources are common targets for data filtering. In addition,
an attacker who successfully penetrated the organization's infrastructure services can use
these accounts to access other parts of the corporate structure. IaaS customers are
responsible for the security of their data, user access, applications, operating systems, and
virtual network traffic. Common problems when using IaaS:
Unencrypted data:
In hybrid and multi-cloud environments, data moves between local and cloud-based
resources and between different cloud applications. Encryption is essential to protect data
from theft or unauthorized access. Organizations can encrypt local data before or in the
cloud. They can use their own encryption key or the encryption of the IaaS provider.
Configuration error:
Shadow Service:
This is a best practice for protecting access to the cloud infrastructure by ensuring
that developers and other users only have the permissions needed to complete their work
and no more permissions. It's the same again. Exposing root account credentials allows
attackers to access all resources and deauthorize dormant accounts.
Limit control:
Public clouds provide users with limited control. This lack of access rights prevents
customers from customizing their environment and gives them less control. Public cloud
providers can also choose the authentication, authorization, and access control processes
and software of their choice. As a customer, your organization has no control over the
methods it uses or the procedures for managing those methods.
Performance:
As mentioned earlier, the performance of the cloud delivery model mainly depends
on the network and resources. Service providers must adequately manage resources and
networks. As the number of users increases, it is a challenging task for service providers to
provide good performance.
Multi-resource:
Shared resources, that is, multiple users share resources, so it is called multiple
objects. Due to this attribute, there is a high risk of data leakage or possible access without
privileges.
The Public cloud is a multi-tenant environment from which it can create its own
security threats because flaws in the infrastructure make the entire environment vulnerable
to attacks. Multiple exploitations can allow a single tenant or hacker to view all data or
fraudulently use the identity of another customer.
Before using a public cloud, you must choose a cloud service provider. The public
cloud can be selected based on certain parameters, such as performance and flexibility.
This is one way to choose a public cloud, and the other is based on cost. If the work using
resources is not time-sensitive, the lowest cost service provider will be selected.
2.4 Discuss how to overcome these security issues when building a secure
cloud platform
After covering the various risks faced when using the cloud, we must find a way to
deal with these problems. In this section, I will focus on the methods used to ensure all the
different forms of data security, and briefly review the strategies used to solve these
problems.
Malicious insiders: The risk can be reduced by setting strict legal restrictions in the
contract when hiring personnel. A comprehensive evaluation of the CSP by a third party and
a robust notification process for security vulnerabilities also help.
Physical Leakage-You can restrict access to sensitive locations in the data center by
setting up strong physical security deterrents (such as armed guards, key card access, and
biometric scanning), thereby reducing the risk of intruders physically accessing equipment
used to provide cloud services.
Virtualization defense and reputation-based trust management: CSP should use the
following structure: DHT-based overlay network hierarchy, each layer performs specific
tasks. Use various sources to verify certain connections. Detecting conspirators refers to
checking whether any sources are associated with known malicious parties. Secure
virtualization: CSPs can use Advanced Cloud Protection System (ACPS) to ensure the
security of guest virtual machines and distributed computing middleware.
The trust model for interoperability and security: providers and users should have
separate domains, and each domain has a special trust agent.
This field mainly deals with legal matters, so both CSP and CSC need to understand
legal and regulatory obligations and ensure that any contract fulfilled meets these
obligations. After reviewing some of the methods used to prevent security mistakes in the
other four areas, in the next section, we will introduce some of the main techniques used to
ensure data security.
There are multiple methods that can be used to ensure that different attributes of the
data are safe. Here, we reviewed the authentication and encryption technology and briefly
introduced the following:
Since cloud computing involves the use of CPC and CSP to store sensitive user data,
identity and access management (IAM) is a form of access control and therefore important.
Some authentication methods include identity-based cloud computing hierarchy model
(IBHMCC) and SSH:
Authentication Protocol (SAP). This is mainly used to protect the privacy and
confidentiality of data.
And access control services are OpenID, OAuth, SAML, XACML. The Trusted
Computing Group (TCG) IF-MAP standard supports real-time communication between
cloud service providers and customers regarding authorized users and other security issues.
Unlike homomorphic encryption, other methods are used, such as searchable encryption,
so data can be accessed without decrypting it. Example encryption algorithms used include :
The Caesar cipher is a classic alternative cipher. A simple example of this kind of
password is to replace a character in the alphabet with a character in the previous 3 steps,
for example, "ZULU" will be converted to "CXOX". There are only 25 possible key options,
so this password can be easily enforced.
The Simplified Data Encryption Standard (S-DES) has a key generation process in
which the S-DES key generation process generates the following 2 subkeys when
processing the original 10-bit input, instead of using the current key for encryption and
decryption. It is no longer widely used because computing power has caught up to break it.
RSA is an encryption algorithm in which the encryption key is public, which is different
from the secret decryption key. It is one of the most commonly used encryption algorithms
today.
Secure Sockets Layer (SSL) is 128-bit encryption. It is a commonly used protocol for
managing the security of message transmission on the Internet. It uses a public key and
private key encryption system.
Traditional enterprise security solutions are not built for cloud services outside the
organization's firewall. Virtual infrastructure services (such as virtual machines, virtual
storage, and virtual networks) require security solutions specifically designed for cloud
environments. The following are security-critical solutions for IaaS:
CASB provides visibility and control of cloud resources, including user activity
monitoring, IaaS monitoring, cloud malware detection, data loss prevention, and encryption.
They can integrate with firewalls and cloud platform APIs, and monitor IaaS for
misconfigurations and unprotected data in cloud storage. CASB provides auditing and
monitoring of compromised account and file permissions, configuration, and settings.
CWPP protects work data from malicious software and manages operations. If it
cannot be managed, it can provide cybercriminals with access to the IaaS environment.
The VNSP solution scans network traffic moving in the north-south and east-west
directions between virtual instances in an IaaS environment. These include network
intrusion detection and prevention to protect virtual resources.
The cloud security status manager checks the IaaS cloud environment to find security
and compliance issues and provides manual or automatic repairs.
CONCLUSION
After completing this report, I have learned a lot. Not only do I have knowledge of the
history of cloud computing, Cloud Computing basics, cloud-specific properties and cloud
deployment model, the benefits of cloud computing. cloud, the need for Cloud Computing.
In addition, I also selected suitable service models and service deployment models for TuDoi
company. It was a huge success for me. I also give advantages when businesses use cloud
computing. In addition, I also learned how to create an account and sign in to AWS. Not to
mention the fact that I can manually configure the installation of services in AWS, in addition
to installing wordpress to create an e-commerce website. Learn how to edit interfaces, add
products and sell them, learn about plugins for websites, etc. And yet, I also learned about
common problems related to cloud computing and other common problems. solutions to
prevent them from attacking.
Furthermore, during my studies and research at school to complete this report, I was
able to develop skills such as communication, critical thinking, analysis, reasoning and in-
terpretation, retrieving Whether. Whether. These skills are very important to me. I learned
diligence, diligence, hard work after completing this report. A very large amount of
knowledge combining many subjects such as: Networking, Security, Web Design Develop-
ment and Cloud Computing. This wealth of knowledge helped me complete the report with
ease.
However, due to limited knowledge and time, my report is not in-depth. The lack of
practical experience also caused me to overlook many problems that still existed in the sys-
tem. I will try to improve my knowledge to be more successful. Also, when I was just starting
out, I had a lot of trouble implementing the system as my goal. After a lot of research and
with the help of teachers and friends, I have finally completed this report. Some difficulties
include: the details in wordpress are quite difficult to find and how to customize the website
is also very difficult, sometimes I feel tired and do not want to continue. But because the fire
of passion burned in my heart, I tried my best and succeeded beyond my expectations.
REFERENCES
[1] Richard Zayzay., (2018, 01 03). Install WordPress on Ubuntu 18.04 LTS with
Nginx, MariaDB and PHP-FPM. [Online]. Available at: https://websiteforstudents.com/in-
stall-wordpress-on-ubuntu-18-04-lts-bata-with-nginx-mariadb-and-php-fpm/
[2] Ajay Sarangam., (2020, 30 11). Top 10 Challenges of cloud computing. [Online].
Available at: https://www.jigsawacademy.com/blogs/cloud-computing/challenges-of-cloud-
computing/ [Accessed 15 August 2021].
[4] Lê Toản., (2021, 18 08). Tìm hiểu về IaaS Security. [Online]. Available at:
https://www.iworld.com.vn/tim-hieu-ve-iaas/ [Accessed 15 August 2021].