Linuxホスティングについて非常に基本的な質問があります。
このusers
コマンドは、ホストのすべてのユーザーに指示するように保証されていますか?それとも、ユーザーがその時点でホスト上でアクティブであるという事実を隠す方法はありますか?
後者の場合、ユーザーコマンドの出力からユーザーを隠すためにユーザーが使用できる技術が何であるかを知っている人はいますか?
この問題について他の人が提供できる考えは非常に役立ちます。
ベストアンサー1
読んでいるファイルには表示されず、システムで「システムコマンドを実行してシステムファイルにアクセスできる」ことは/var/run/utmp
簡単ですusers(1)
。
$ ssh testhost sh
たとえば、Centos 7では、誰かが実行中であるというusers
指示はありませんが、システムコマンドを実行してシステムファイルにアクセスできます。testhost
sh
# users
root
# pstree | grep -3 'sh$'
|-sshd-+-sshd---sshd
| |-sshd---bash-+-grep
| | `-pstree
| `-sshd---sshd---sh
|-sssd-+-sssd_be
| `-sssd_nss
|-systemd-journal
socat
別の方法は、高いポートでシェルまたは他のものを実行することです。別のアプローチ:コマンドを受け入れて実行し、結果を返すWebサーバーを実行します。別のアプローチは、事前にコマンドをスケジュールしてからat(1)
ログアウトすることです。