Tools for Reading and Mounting ISO Image File in Windows

What tools are you usually use for reading and mounting ISO image file? There are many alternatives, two of them are as following, WinISO and PowerISO. These are actually not completely free tools. However, the good thing is, their free offers are more than enough if the need is just for reading and mounting the ISO image.

WinISO Capture
PowerISO capture

Other than ISO file, those tools also support other types of image file, such as Cue sheets, Nero Burning, Alcohol 120%, CloneCD, Virtual Drive Images, Mac Images, so on.

Supported Image Files by WinISO
PowerISO supported images

Using “Expect” in UNIX Script

There is a request to create script. The idea is to send some commands to the routers (around 16 routers in total) from remote Unix server and save the outputs to file.

The problem is, this routers haven’t had capability yet for password less setup by using key exchange which is more secure.

There were several options, but all of them are using password “hardcoded”, meaning the password of the router must be written inside the script.

Finally, “expect” is chose, since it is already installed in the remote Unix server. Moreover, according to rule in the company, any additional software package can not be installed unless there is approval.

Below are codes. Let’s name it as getoutput and make it to be executable.

#!/usr/local/bin/expect -f

set uu "<username>"
set pp "<password>"

set hh [lindex $argv 0]

spawn ssh -oStrictHostKeyChecking=no -oCheckHostIP=no $uu@$hh

expect "*password*"
send -- "$pp\r"
expect "*>*"
send -- "<1st command >"
send -- "\r"
expect "*>*"
send -- "<2nd command>"
send -- "\r"
expect "*>*"
send -- "<3rd command>"
send -- "\r"
send -- "<4th command>"
send -- "\r"

# done
expect eof

Then loop above script to be executed for all routers.

#!/bin/bash
for router in `cat routers_ip_file`; do getoutput $router > $router.outputfile.log; done

Note:

There are StrictHostKeyChecking and CheckHostIP parameters whose value as “no” inside above script. Actually the purpose is to avoid host checking prompt, if the ssh session is performed for the first time to destination host.

How to Avoid Host Checking While Performing SSH Session

Usually when ssh session is performed for the first time to destination host, the prompt message will be appeared to confirm whether connection should be continued or not. It is due to the destination host has not defined yet inside known_hosts file.

The authenticity of host 'xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx)' can't be established.
RSA key fingerprint is 90:e8:5f:59:7e:87:e4:33:35:60:77:10:a1:af:62:b0.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'xxx.xxx.xxx.xxx' (RSA) to the list of known hosts.
Password:
Last login: Tue Jan 19 21:47:16 2016 from xx.xx.xx.xx

To avoid this message, parameters StrictHostKeyChecking and CheckHostIP can be put and set value as “no” in ssh connection as below example:

usersource@sourcehost> ssh -oStrictHostKeyChecking=no -oCheckHostIP=no userdest@destinationIP

How to Configure SMTP Sendmail in UNIX

Before starting to configure SMTP Sendmail in UNIX, firstly, the connection from UNIX server has to be opened to SMTP mail server (in our trial port being used is 25). Once its opened, kindly continue with following steps:

1# Backup the hosts (/etc/inet/hosts) file

2# Edit hosts file by adding new entry (replace 10.10.10.10 with your SMTP mail server, and smtpserver.company.com with your SMTP mail server’s FQDN)

10.10.10.10 mailhost smtpserver.company.com

3# Edit following lines in sendmail.cf file (replace smtpserver.company.com with your SMTP mail server’s FQDN)

# "Smart" relay host (may be null)
DSsmtpserver.company.com

4# Restart smtp:sendmail service

svcadm restart smtp:sendmail

Now sending mail can be tested from UNIX server, below simple test is an example

echo "This is body of my mail. Regards" | mailx -s "Subject of My Testing Mail over SMTP" recipient@mymail.com

How to Configure Enterprise Authentication Policy in SAP BusinessObjects Business Intelligence (BI)

Here are steps to configure Enterprise Authentication Policy in SAP BusinessObjects Business Intelligence (BI)

1- Go to Authentication on menu, with one of following ways: Under CMC Home, go to Manage section on right side then click Authentication, or choose Authentication in drop down list menu, or scroll down on icons list in left side then click padlock icon.
2- Double click on Enterprise
3- Fill respective fields as per needed then Apply

Enterprise Authentication in SAP BusinessObjects BI platform 4.1 SP5 versus 4.1 SP7

Above steps have been tried in SAP BusinessObjects BI 4.1 SP5 and SP7. Just as additional info, there is slight difference for Enterprise Authentication between 4.1 SP5 and 4.1 SP7 which in newer version, it has two additional parameters under Password Restrictions Section which are Enforce numeral in passwords and Enforce special characters in passwords.

Suggestion Before Applying Policy

First, if the policy will be implemented for the first time, better to change the password of predefined account or system account (like Administrator) to comply with Password Restrictions rules.

For instance, if Enforce special characters in passwords parameter will be enabled, then better to reset the password of predefined account or system account (like Administrator) to make sure there is special character in it’s password. It will avoid problem toward system account once policy is activated.

Second, if Disable account after N failed attempts to log on under Logon Restrictions section will be activated, then kindly consider to set Re-enable account after N minute(s) parameter with acceptable value.

Let’s say, the value for Disable account after N failed attempts to log on is set to 3. There is big chance Administrator is getting locked by mistake. In this case, by putting Re-enable account after N minute(s) not too high will make Administrator password recovery becoming faster. Or, there is another suggestion which is to set another user as part of Administrators Groups. So, in case Administrator is getting locked, this user can unlock it directly.

Extended Use of SSH Tunnelling with Putty to Access Inaccessible Remote Desktop and URL

Now, let us take another samples of using Putty for SSH tunneling, other than like explained in previous article.

Basically, the pre-conditions are similar with previous one. First, there is Server-A which it can be connected through SSH from user’s PC, and Server-A has connectivity to access remote desktop and web server of Server-B. Second, TCP forwarding is enabled in Server-A. (Kindly read previous article how to enable it, if required)

Note: To make sure Server-A has connectivity through remote desktop to Server B, TCP port 3389 has to be opened from Server-A to Server-B. And for accessing web server, TCP/HTTP port 80, used as sample, has to be opened from Server-A to Server-B.

URL

Dynamic port method will be used to access inaccessible URL: http://Server-B/.

First, establish SSH connection to Server-A using Putty. Once connected, open change settings menu (right click on top panel and choose change settings). There is category box on left side, go to Connection > SSH > then click Tunnels. Put any available local port on Source port text box (in this example, 4000 is chosen), tick Dynamic radio button, after that click Add then Apply.

Second, open browser (in this sample, Mozilla is used), go to Options > Advanced > Network > Connections Settings. Tick Manual Proxy Configuration, leave all with empty/default value, except on SOCKS Host, fill as localhost and Port: 4000. And also kindly do not forget to tick SOCKS v5, then click OK button.

Once done, now try to access http://Server-B/, it will be opened.

Remote Desktop

Method that will be used is putting IP and Port of Server-B explicitly in tunneling. Assuming IP of Server-B is 10.10.10.11.

First, Establish SSH connection to Server-A using Putty. Once connected, open change settings menu (right click on top panel and choose change settings). There is category box on left side, go to Connection > SSH > then click Tunnels. Put any available local port on Source port text box (in this example, 4002 is chosen). And on Destination, fill explicitly the IP and port of Server-B, with format IP:port, in this example, value is 10.10.10.11:3389), tick Local radio button, after that click Add then Apply.

Second, Open Remote Desktop Application, fill the Computer’s field with localhost:4002 then Connect, or simply Ctrl+R then type: mstsc /v: localhost:4002 then Enter. After that, Remote Desktop to Server-B will be possible.

Step by Step: SSH Tunneling with Putty

Supposed there is server A (UNIX based), where you have firewall opened to do SSH connection from your PC directly. And there is another server (server B), where it’s connected from Server A with SSH but you have no direct SSH connection from your PC to server B (firewall is not opened from your PC to server B) .

This article will try to give tips, to make direct SSH connection possible with SSH tunneling from your PC toward server B by using Putty tool.

Note: as pre-requisite to do SSH tunneling, please set AllowTcpForwarding parameter with value equal Yes inside sshd_config fileof Server A, then restart ssh service

server-A> grep -i tcp /etc/ssh/sshd_config
AllowTcpForwarding yes
server-A> svcadm restart ssh

Method#1- Using Dynamic Port

First, connect to Server A and setup the tunnel using dynamic port

Establish SSH connection to server A using Putty. Once connected, open change settings menu (right click on top panel and choose change settings). There is category box on left side, go to Connection > SSH > then click Tunnels. Put any available local port on Source port text box (in this example, 4000 is chosen), tick Dynamic radio button, after that click Add then Apply.

Second, connect to Server B using tunnel that already set

Prepare new putty session to connect to Server B, after putting the IP and port on session part, before clicking on Open button, go to Connection > then Proxy. Tick SOCKS 5 radio button on proxy type, then on proxy hostname, fill localhost and port 4000. Click open, then now you can connect to Server B directly by using server A as proxy to make a tunnel.

Method#2- Put IP and port of another server explicitly

First, connect to Server A and setup the tunnel using specific IP and port of Server B

Establish SSH connection to server A using Putty. Once connected, open change settings menu (right click on top panel and choose change settings). There is category box on left side, go to Connection > SSH > then click Tunnels. Put any available local port on Source port text box (in this example, 4001 is chosen). And on Destination, fill explicitly the IP and port of server B with format IP:port, in this example, value is 10.10.10.10:22), tick Local radio button, after that click Add then Apply.

Second, connect to Server B using tunnel that already set

Prepare new putty session to connect to Server B, on Hostname (or IP address), fill with localhost and port, is 4001. Click open, then connection to Server B can be done directly.