Skip to main content

Posts

TrueCrypt on macOS X Mojave 10.14

If you have updated your macOS recently to Mojave otherwise known as verison 10.14 you may not be able to install the last version of Truecrypt in order to access your old volumes encrypted with Truecrypt software. This article will guide you to get this working on your MacOS v10.14 (Mjoave) . Download the package from  https://truecrypt.ch/downloads/  or  https://www.truecrypt71a.com/downloads/ . Find downloaded package using Finder in your HDD/Users/username/Downloads folder and will look like  TrueCrypt 7.1a Mac OS X.dmg . Open file location in Finder and open or double click on  TrueCrypt 7.1a Mac OS X.dmg . This will mount Truecrypt 7.1a and will have Truecrypt 7.1a.mpkg in it. Drag the package T rueCrypt 7.1a.mpkg and drop in your Downloads folder. From Locations in Finder you can eject your TrueCrypt mount. Now go to your Downloads location, find the file  TrueCrypt 7.1a.mpkg , right click and select Show Package Contents . Find the ...

Bash script and characters that require to be escaped

There are few ASCII characters that need to be escaped when using in certain bash scripts especially when echoing or passing value through variables. What are those characters can be determined using the small bash script below. #!/bin/bash special=$' 0123456789\'-–—!"#$%&()*,./:;?@[\]^_`{|}~¡¦¨¯´¸¿‘’‚“”„¢£¤¥€+<=>±«»×÷§©¬®°µ¶·…†‡•‰¼½¾¹²³AaªÁáÀàÂâÄäÃãÅ寿BbCcÇçDdÐðEeÉéÈèÊêËëFfƒGgHhIiÍíÌìÎîÏïJjKkLlMmNnÑñOoºÓóÒòÔôÖöÕõØøŒœPpQqRrSsŠšßTtÞþ™UuÚúÙùÛûÜüVvWwXxYyÝýÿŸZz ' for ((i=0; i < ${#special}; i++)); do     char="${special:i:1}"     printf -v q_char '%q' "$char"     if [[ "$char" != "$q_char" ]]; then         printf 'Yes - character %s needs to be escaped\n' "$char"     else         printf 'No - character %s does not need to be escaped\n' "$char"     fi done | sort The output of above script will list characters that need escaping and looks like below. [ me@mysys...

Setting up SSH authentication between two linux/unix/macos hosts - quick reference

You have two hosts that you want to set up password-less access between local to remote system. This can be easily scripted and all commands are run from local system using ssh into remote system starting with password but at the end of these commands you will have password-less authentication set up. Tasks on Source System: (Note that  For ESXi 5.x, 6.0, 6.5 and 6.7, the authorized_keys is located at: /etc/ssh/keys-<username>/authorized_keys) ssh-keygen -t rsa ssh remoteuser@remotehost mkdir -p .ssh cat .ssh/id_rsa.pub | ssh remoteuser@remotehost 'cat >> .ssh/authorized_keys' ssh remoteuser@remotehost "chmod 700 .ssh; chmod 640 .ssh/authorized_keys" ssh remoteuser@remotehost For two ASW instances we could do following. Call the two systems control and managed, where control machine is your source and managed is remote or target. Log into Control machine and perform following. ssh -i "PRIVATE-KEY.pem" ec2-user@ec2-1-2-3-4.e...

Ansible playbooks layout and examples

Once you have ansible installed and ssh connectivity between the control server and other hosts established you can set up following directly layout with playbooks and execute the examples listed here. These playbook examples are also available from my Github repository -  https://github.com/shahkamran/ansibleplaybooks . ~/. ---+ansible.cfg ---+dev ---+hosts ---+playbooks/ -------------+webserver.yml -------------+database.yml -------------+loadbalancer.y ml So where do you start? You set up your hosts file similar to /etc/hosts but a local one with IP address translation to your systems. #hosts 192.168.0.1     control 192.168.0.2     app01 192.168.0.3     app02 192.168.0.4     db01 192.168.0.5     lb01 Next you set up your environment in dev file by creating groups of hosts. #dev [cc] control ansible_connection=local [apps] app01 app02 [dbs]...

Setting up Ansible environment on AWS

This article will help you setting up your ansible environment in AWS in most quickest way. You will need following inventory to start with. 1 x control centre 1 x load balancer 2 x application servers 1 x database servers Set up Control Centre Go to https://console.aws.amazon.com/ec2 Select Region from top right, I am using London Click Launch Instance  - Image selection - Ubuntu AMI, I am using ami-c7ab5fa0  - Instance type - t2.micro  - Configure Instance Details     - Make sure Auto-Assign Public IP is enabled     - Add following bootstrap script to user data in Advanced Details. #!/bin/bash # global variables newhostn=" control " # Update apt and upgrade to latest sudo apt-get update sudo apt-get upgrade -y sudo apt-get update sudo apt-get install software-properties-common -y sudo apt-add-repository ppa:ansible/ansible -y sudo apt-get update #Install python and ansible sudo apt-get install python ...

Tools you need before you start using Terraform for orchestration infrastructure in cloud

Terraform one of the famous open source tool used for planning, deploying and maintaining infrastructure as a code and the beauty of this tool is that it works across various cloud service providers. Even though I personally like the AWS Cloudformation, it is AWS only and most probably it will always remain limited to Amazon Web Services. It has few advantages over other tools when using with AWS and will be the first to have new AWS features incorporated before other tools and APIs catch up. However if you are not limiting yourself to AWS only or have hybrid environment you may want to use a 3rd party tool compatible for all cloud infrastructures. Terraform being one of them is youngest client only tool and this article will help you setting up your desktop environment and give you understanding of how it works before you can start to code. Prerequisites: Computer running Windows, Linux, Solaris or MacOS operating system. Downloads: Download Terraform directly from the crea...

Terraform sample project - create an EC2 web instance within AWS cloud

Contents of main project file - mainproject.tf ############################################################### # A Mini project file to create a single instance using # variables and paremeters listed in terraform.tfvars file. # Please make sure that both files have correct extensions and # live within same directory for terraform to run without any # additional parameters. A typical execution plan will include # following commands or steps; # terraform init  # terraform plan  # terraform apply  # terraform destroy ############################################################### ############################################################### # Variables used in this script ############################################################### variable "aws_access_key" {} variable "aws_secret_key" {} variable "aws_private_key_path" {} variable "aws_key_name" {} variable "aws_instance_ami" {} variable ...