ssh / sshdがコンパイルされたときに使用された設定オプションを一覧表示するには?
SELinux設定の問題を解決しようとしていますが、SSHが--with-selinux
。
答え1
コンパイルオプションをリストする方法はないと思いますが、SELinuxサポートなどの機能は、実行可能ファイルがリンクされているライブラリから明らかにする必要があります。
$ ldd /usr/bin/ssh /usr/sbin/sshd | egrep '^/|selinux'
/usr/bin/ssh:
/usr/sbin/sshd:
libselinux.so.1 => /lib/libselinux.so.1 (0x00007fbbfed5f000)
sshd
SELinuxのサポートがあるようですが、ssh
私のシステムではサポートされていません(なぜですか?)。
確認できるもう1つの問題(静的バイナリがある場合など)は、特定のSELinux機能を参照するバイナリがあるかどうかです。
strings /usr/sbin/sshd |grep -i selinux
答え2
ディストリビューションのパッケージングシステムを見て、どのオプションでコンパイルされたかを見つける必要があります。一部のプログラムはコンパイルフラグを出力できますが、sshdにそのようなオプションがあるかどうかはわかりません。
答え3
デフォルトの配布パッケージをインストールする場合
このディストリビューションはDebianに基づいています。
debian/rules
設定オプションのパッケージソースのファイル(デフォルトではMakefile)を見てください。このディストリビューションはrpmベースです。ソースrpm仕様ファイルにある可能性があるコンパイルオプションを確認してください。
デフォルトのコンパイルオプションを持たないGentooなどのカスタムディストリビューションでは、これはより難しいでしょう。パッケージを作成した人と話し、人々が提案するものをldd
見てみましょう。
(最初に行う必要があるように)分布を指定すると、人々はより具体的なガイドラインを提供できます。