Solved

how can i stop and start ssh with debug and write out a log to a specific text file in AIX UNIX

Posted on 2011-03-02
7
1,199 Views
Last Modified: 2013-11-17
Hello i have got the following request, please assist with it. I believe Tectia is an ssh team.

"TECTIA is requesting the SSH server in the Unix side (AIX SERVER), be stopped
and restarted with DEBUG and have the server write out the log to a
specific text file "logfile.txt" that can be forwrded to them. "

Please assist me with figuring out how i can stop and start ssh with debug and write out a log to a specific text file.
How can i enable and disable debug mode
Thanks.
0
Comment
Question by:assistunix
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
7 Comments
 
LVL 7

Accepted Solution

by:
jackiechen858 earned 250 total points
ID: 35024440
what version AIX are you using?

do a  "lslpp -l | grep ssh" , most likely you will see

 openssh.base.server    


that means you are using openssh.

do a "lslpp -f openssh.base.server"  , this will list all the files in openssh.base.server package.

you will see :
openssh.base.server
                        /etc/ssh/sshd_config
/etc/rc.d/rc2.d/Ssshd ( the script to start/stop sshd)





/etc/ssh/sshd_config is the file you need to modify.

change
#SyslogFacility AUTH
#LogLevel INFO
to
#SyslogFacility AUTH
LogLevel DEBUG

the log file location is controlled by  vi /etc/syslog.conf

add/modify it as :
auth.debug /tmp/logfile.txt


You need to restart sshd.
stop:
/etc/rc.d/rc2.d/Ssshd stop
start:
/etc/rc.d/rc2.d/Ssshd start

be sure you are using console or telnet to access the server before you stop sshd.


















0
 
LVL 68

Assisted Solution

by:woolmilkporc
woolmilkporc earned 250 total points
ID: 35024885
You should not forget to create the logfile if it doesn't exist yet and to restart syslogd if you made configuration changes.

- create the logfile, if you configured a new one: touch /tmp/logfile.txt
- restart syslogd: refresh -s syslogd

If you don't want to change sshd_config permanently do the suggested changes/additions to /etc/syslog.conf, then

- stop sshd: stopsrc -s sshd
-- no need to use telnet for this. Existing ssh sessions will not be affected.
- start sshd with the new option: startsrc -s sshd -a "-o loglevel=debug"

If logging is no longer needed just stop sshd and start it without the loglevel option:

stopsrc -s sshd
startsrc -s sshd

wmp
0
 

Author Comment

by:assistunix
ID: 35032981
Thank you for that.
Can you tell me what output following commands put in logfile.txt /usr/sbin/sshd -d -d -d 2> logfile.txt

Is this command /usr/sbin/sshd -d -d -d 2> logfile.txt
equivalent to your process of stopping and starting ssh with DEBUG
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 68

Expert Comment

by:woolmilkporc
ID: 35034461
Not quite equivalent!

Your command will indeed force sshd to write debug messages to the system log (the more "-d" flags the more detail in the output.)
This means that you will have to configure syslog anyway regardless of the method used.

"logfile.txt" in your example will only contain startup and termination messages, not the full debugging output, which goes, as stated, to syslog.

But attention: When started with "-d" sshd will not go into background automatically, it will not fork, so only one single connection is accepted, and sshd will terminate when this connection ends.

So the "-d" feature is only meant for a one-time debugging run. For longer-term recording of debugging messages and for debugging of multiple (maybe parallel) sessions you should use the "option loglevel" method instead of the "-d flag" method.

wmp
0
 

Author Comment

by:assistunix
ID: 35062178
Thank you for that. One more "dumb" question about this topic.
can you tell me what debug is , i tried searching for it on the net, it seems as if debuging is to troubleshoot a problem by viewing it's error. But i would really appreciate if you can give me a straight to the point explanation of debug.

Thank you once again.
0
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 35062605
A "bug" is how we call a defect in hardware, the OS, application software or in a configuration which commonly would lead to a malfunction some way.

"Debugging" thus means finding and eliminating such an error, making the concerned component work again.

So "debug log / debug message" is a bit wrong, it's the short form for "a message or a logfile entry which could help us in debugging (i.e. finding a hardware/software/configuration error)".

"Bug" itself traces back to very early engineering speech, and there is also a nice story -

(quoting, see below):

In 1946, when Hopper was released from active duty, she joined the Harvard Faculty at the Computation Laboratory where she continued her work on the Mark II and Mark III. Operators traced an error in the Mark II to a moth trapped in a relay, coining the term bug. This bug was carefully removed and taped to the log book. Stemming from the first bug, today we call errors or glitch's [sic] in a program a bug.

Find the above quote and more info in Wikipedia:
http://en.wikipedia.org/wiki/Software_bug

wmp
0
 

Author Closing Comment

by:assistunix
ID: 35063216
Interesting story. Thank you.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Windows SFTP / SSH 6 103
help pulling data string using Awk 9 89
problem creating new luks volume on new VM disk 5 126
Install MySQL 5.6 and PHP on Centos Linux 6 179
Java performance on Solaris - Managing CPUs There are various resource controls in operating system which directly/indirectly influence the performance of application. one of the most important resource controls is "CPU".   In a multithreaded…
Every server (virtual or physical) needs a console: and the console can be provided through hardware directly connected, software for remote connections, local connections, through a KVM, etc. This document explains the different types of consol…
Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Suggested Courses

732 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question