Skip to main content

Posts

Showing posts from 2016

How to setup 2FA On Linux SSH Login

  This is a simple setup guide to enabling Two Factor Authentication (2FA) on Linux SSH login. I this article I wont go deep into setup and issues that I have faced when implementing this. First thing is first Update your system first. I have used Ubuntu 20.04 and it is always up to date. To enable 2FA you need to install google authenticator modules sudo apt install libpam-google-authenticator Configuration for PAM and SSHD Add the the following line to /etc/pam.d/sshd and After adding this line please restart the sshd services.  auth required pam_google_authenticator.so Go to /etc/ssh/sshd_config and check if the following line exist. Default value will be "no" so change it to "yes" to activate.  ChallengeResponseAuthentication yes Configuration for Authenticator In the terminal run google authenticator command It will ask few things to acknowledge by user. Details you can see from the below video. Once this part is done you are ready to use the 2FA in ubuntu. T

What is Charlieplexing?

When you use microcontrollers and you are out of PIN's to connect some LED's for status or when you want to drive a binary clock with few pins left in microcontroller, there is a way that can solve this issue. Its called charlieplexing and if you know multiplexing you will have some idea of how it works. I will do an example using Arduino for demonstration. Charlieplexing is a method to drive multiple LED's with few pins available in your microcontroller. Here is the formula to calculate how many LEDs can be drive from N number of pins. Number of LED's = No. of PINS available ( No. of PINS available - 1) For example you have only 3 pins left in Arduino and you want to know how many LED's can be drive. Number of LED's = 3(3-1) Number of LED's = 3(2) Number of LED's = 6 So from 3 PINS you can drive 6 LED's. Since arduino have tri-state output (INPUT, HIGH and LOW) its easy to drive the LED's using this method. how leds are connect

TCP communication from NEOWAY M590E- Successful

Some of the GSM/GPRS chips do not support HTTP services and since the modems are controlled via AT commands, the AT command sets are very limited to HTTP commands in NEOWAY M590E. The only option to communicate with any cloud based or locally hosted server was using TCP protocol. I have used HTTP services in many of my projects and experiments, it is easy and with few lines of code can manage an HTTP requests. For weeks i have been struggling with TCP request and every time it fails to connect or sometimes data is sent but from server side there is no new data fetched. Basically TCP is transport layer in OSI model and HTTP is in application layer. TCP will do a socket based connection to servers predefined port. For example  test.com:8989. what i mean is it needs a listener to listen to port that you define or open to use. After weeks of reading articles and AT command sets thoroughly, finally i managed to handle a TCP request from modem. But still it fails sometimes or unable to

SIM900A TCP connection test - 1

I have been working on some real time data acquisition and control application designing. Specially micro-controller based hardware designing and prototyping. For testing purposes i am using SIM900A GSM/GPRS module and FTDI UART converter.  SIM900A module is connected to PC via FTDI converter. I use putty as a terminal program to communicate with the module. With required baud rates i am able to communicate with the module by sending a simple AT command (AT command set will vary with different modules) just sending AT the module replies with OK. This means module responded to the command sent from PC. Lets go ahead with TCP AT commands to establish a TCP connection to remote server via GPRS connection. I have run socket test software on remote PC and opened port 7777. You have to check your firewall or router settings to allow your preferred port. While the software start listening to port 7777, lets continue with the sending AT commands to module from the PC connected

Pi Zero

After a long Que of waiting for Pi Zero,i have received it. The size of Pi Zero is very small and compact comparing to other versions of Pi. I am not going to give a review on Pi but since i like the Raspberry Pi. i would like to give some information on what i did to test its performance. For technical details go directly to raspberrypi.org.   Raspberry Pi Zero running RetroPie, just for a test.  For testing purposes i installed OSMC and test as a media player and i am happy with the performance. Later i installed RetroPie and check how the new hardware performed. RetroPie is cool that it enables to play almost all the retro games that we played when we were young. :) RetroPie running I am not interested of GUI so kept aside all the i candy parts and focused on controlling GPIO and runing python scripts and bash script for external hardware communication. Overall what i can say is the waiting for Pi Zero is not time wasting, Pi Zero is better and faster. Thumbs up for P

Being away

Due to few technical and other issues i have been away from blogging my electronics project and experiments i do. Lets hope this start will be better than all the past years. I have few things which i would like to write some article that others get the benefit of. Few months back i got my Raspberry Pi Zero and did some cool things using it. Recently i am on to IoT stuffs so i cam across few new things for me, like MQTT and integration of hardware to MQTT server ruining locally. Possibilities are endless, i can make my light talking to MQTT server and it will handle rest by communicating the hardware like Arduino, ESP8266, Pi etc. I will detail one by one on my next post. Thank you everyone who support my blog and gain knowledge from my articles. Stay tune for more update from me.