一般ユーザーとして/ proc LACPバインディング情報を取得しますか?

一般ユーザーとして/ proc LACPバインディング情報を取得しますか?

一般ユーザーとしては表示できません。

「詳細キャストlacp pdu」

情報内容は以下の通りです。

/proc/net/ボンディング/ボンド0

ルートだけが見えるようです。

しかし、一般ユーザーはこのLACP情報をどのように見ることができますか?それともルートでのみ可能ですか?

ベストアンサー1

はい、ただソースに示すように、ユーザー、より正確にはCAP_NET_ADMIN機能を持つプロセスがこの情報にアクセスできます。/procそして/sys ~のため 様々な種類 分ける フィリピン諸島

  if (capable(CAP_NET_ADMIN)) {
  if (BOND_MODE(bond) == BOND_MODE_8023AD && capable(CAP_NET_ADMIN)) {

これは、次のために発生する可能性があります。bonding.txt文書:

3.7より安全な方法で802.3adモードでLACPを構成する


802.3adバインディングモードを使用すると、Actor(ホスト)とPartner(スイッチ)はLACPDUを交換します。これらのLACPDUはリンクローカルMACアドレスに送信されるため、スニッフィングできません(スイッチ/ブリッジはこれらのアドレスを転送しないでください)。ただし、ほとんどの値は簡単に予測できるか、単にマシンのMACアドレス(同じL2の他のすべてのホストに知られています)です。これは、L2ドメインの他のコンピュータが他のホストからスイッチにLACPDUパケットをなりすまし、スイッチの観点から他のコンピュータの集合体に参加して混乱を引き起こす可能性があり、そのため、そのホストの着信トラフィックおよび/またはなりすましの一部受信できることを意味します。マシン自体へのトラフィック(トラフィックの特定の部分を正常に終了することが可能かもしれません)。これは発生する可能性はほとんどありませんが、いくつかのバインディングパラメータを設定すると、この可能性を回避できます。

これを防ぐために、後で説明する手順に関係なく、そのシステムの権限のないユーザーが同じLAN上の敵対的なシステムに情報を漏らすことができる場合は役立ちません。

したがって、正しいアクセス権を持つワーカープロセスが必要になることがあります。単にシェルスクリプトを生成して情報を取得し、sudoをrootとして使用して呼び出すことができます。あるいは、適切なアクセス権を持つバイナリ実行可能ファイルを作成し、CAP_NET_ADMIN機能をここにリンクすることもできます。

chown root:allowedgroup /path/to/helper-binary
chmod u=rwx,g=rx,o=r /path/to/helper-binary
setcap cap_net_admin+ep /path/to/helper-binary
usermod -aG allowedgroup specialuser

また、アイテムを使用するものに切り替えることも考慮する必要があります。これは、アイテムを/sys/class/net/INTERFACE/bonding/使用するよりも解析する方が簡単だからです/proc/net/bonding/バインディングを(再)構成する代替方法、と一緒に/sys/class/net/bonding_masters)。

おすすめ記事