Jan*_*anC 10
您可以将命令强制给您的 SSH 用户,而不是他们请求的用户(如果他们没有提供特定命令,则可以强制执行他们的 shell)。这可以通过使用类似ForceCommand /root/ssh-wrapperin的内容指定该命令来完成/etc/ssh/sshd_config(脚本位于何处或它的命名方式无关紧要,只需确保它可由所有用户执行并且 sshd 配置文件指向它)。您还需要重新启动/重新加载sshd。在原来的命令是可访问的强制命令的$SSH_ORIGINAL_COMMAND。
我只是一起破解了这个脚本:
#! /bin/sh
# add logger options when needed
log="logger -t ssh-wrapper"
# find IP address
ip=`echo $SSH_CONNECTION | cut -d " " -f 1`
$log $USER login from $ip
espeak "$USER just logged in from $ip" > /dev/null 2>&1
$log command: ${SSH_ORIGINAL_COMMAND:-shell}
${SSH_ORIGINAL_COMMAND:-shell}
$log $USER logout
espeak "$USER just logged out" > /dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)
现在,每次我登录或注销时,都会有一个声音告诉我,并且会向 syslog 写入一个日志条目。它还记录命令。您可以使用以下内容来“跟踪”您的 sshd 用法:
tailf /var/log/syslog | grep ssh-wrapper
Run Code Online (Sandbox Code Playgroud)
请注意,此脚本大多未经测试,因此使用风险自负! ;-)
PS:记住这个脚本是作为登录的用户运行的,所以如果你改变它以添加更多功能,你不能做你想做的一切......
| 归档时间: |
|
| 查看次数: |
21536 次 |
| 最近记录: |