Journey to become a Microsoft Student Partner Beta member

In this blog, I will discuss my journey towards the Microsoft Student Partner program, But first I will discuss what Microsoft program is.

Microsoft Student Partners is a worldwide recognizable program to sponsor students majoring in disciplines related to technology. The MSP program enhances students’ employability by offering training in skills not usually taught in academia, including knowledge of Microsoft technologies.

The program is available in most countries, and all students in college and university level are eligible to apply. If accepted, Student Partners are assumed to further share the knowledge among the academic community by, for example, arranging courses, giving presentations and initiating projects.

First time when I came across to know what Microsoft Student Program is the year 2019 when Mr. Hanzala Maqsood(MSP Gold) arranged Inspiron session at my university(FAST NUCES, Peshawar). Then I become motivated and thinking for applying for MSP because MSP gives a lot of benefits to students as I am working on robotics so I need some platform to practice machine learning algorithms. in this regard, Azure suits me the best. Azure has a different platform and you will get hand-on sessions on these platforms. Although, MSP program gives a great mentorship to their MSPs and MSP get good experience as working with Microsoft team. But I don’t know how to fill that application then, Mr. Ali Muzahir(MSP Beta) comes to the rescue and help me out in filling that application and then I come to know MSP team is too supportive and collaborative.

On 10th Jan 2020, I got an email from Microsoft that I have been selected in the MSP program-2020 as Alpha I. But there is a question that why I am selected in the MSP program. Before applying for MSP, I have all the things needed in the MSP application. I have my digital portfolio on LinkedIn. I am managing my Github from the previous two years (click here to see my Github). I have also done a lot of workshops and presentations on different topics at my university and many more things. Actually, the thing is you have to make yourself ready for the opportunity and when the opportunity comes you grab it without wasting any time.

To achieve the Alpha-II level, I need to complete one learning path so I completed the learning path in two days i.e start working with C#. And then I promoted to Alpha-II. And now I want to become a Beta-level MSP. To achieve this, I need to conduct a workshop on any topic at any place. So, I with Mr. Hanzala Maqsood managed to arrange a workshop at Islamia University Peshawar to motivate the student to apply for the MSP program and become a part of the Microsoft team. And also do participate in the newly formed MSP society at their university. By reporting this event, I am promoted to the beta level.

Screenshot_2020-02-10 Student Partners Account Microsoft Student Partners

Now I am at beta and looking forward to becoming a gold member.

Monit

Monit is a tool to monitor daemons process like apache web server,Mysql database etc.Monit check the service automatically after some time(that you set in configuration)If some problem occurs in running the service Monit automatically restart the service. And then if error occurs in restarting the service monit will solve the error and then run the service agian. Monit try to debug all the errors and if then some error come which is not solved by the monit then monit will alert you by sending a notification on a mail and send you whole information about what Monit have done to solve the problem.

How to set up Monit on EC2

Now we consider a usecase of apache web server that we are deploying on a machine.
The first thing you have to do is to install apache by typing this command.

sudo apt update && upgrade
sudo apt install apache2

Now install monit by typing this command.

sudo apt install monit

Read More »

SSH

Introduction

SSH is a secure protocol used as the primary means of connecting to another Linux machine remotely. It provides you a command line interface where you can type your command that you want to run on anonther machine. After connection, all command you type in your local terminal are sent to remotely connected machine and executed there.SSH stand for Secure Shell.

Working

SSH connection is working on client-server model. This means that for an SSH connection to be established, the user’s computer must have SSH client and the remote machine must have SSH server. This software listen for a connection on specified network port and authenticate connection request, and spawns the appropriate environment if the user provides the correct credentials.

SSH Authentication

Clinet generally authenticate using SSH keys which are very secure. Password logins are encrypted and easy to understand for new user.SSH keys are a matching set of cryptographic keys which can be used for authentication. Each set contains a public and a private key. The public key can be shared freely without concern, while the private key must be vigilantly guarded and never exposed to anyone.

To authenticate using SSH keys, a user must have an SSH key pair on their local computer. On the remote server, the public key must be copied to a file within the user’s home directory at ~/.ssh/authorized_keys. This file contains a list of public keys, one-per-line, that are authorized to log into this account.

When a client connects to the host, wishing to use SSH key authentication, it will inform the server of this intent and will tell the server which public key to use. The server then check its authorized_keys file for the public key, generate a random string and encrypts it using the public key. This encrypted message can only be decrypted with the associated private key. The server will send this encrypted message to the client to test whether they actually have the associated private key.

Upon receipt of this message, the client will decrypt it using the private key and combine the random string that is revealed with a previously negotiated session ID. It then generates an MD5 hash of this value and transmits it back to the server. The server already had the original message and the session ID, so it can compare an MD5 hash generated by those values and determine that the client must have the private key.

Installation

To install SSH o your machine simple open Terminal on your machine and type a command:

sudo apt install openssh-client

And then open the Terminal  on the machine you want to connect to your machine  and install openssh-server :

sudo apt install openssh-server

Read More »