現在のプレイグループの正しい/推奨/ベストプラクティスの使用と見なされるものは何ですか?
ゲームポートとジョイスティックのための「デバイスグループ」になることは、ゲームユーザーとは何の関係もなく(ゲームユーザーが属すべき多くのグループの1つになることを除く)、ゲームユーザーのGIDと(非常に)異なるGIDを持ちます。 。 UID...
または、ゲームユーザーとの「ペア」として(好ましくは一致するUIDとGIDを使用)、グループはゲームユーザーに属するプログラムを実行できるユーザーをリストします。これは、ユーザーが楽しむことができるコンテンツを制限するためのものです。
他のオプションがありますか?プレイが許可されているユーザーグループおよび/またはゲームを実行しているユーザーグループについて、ゲームポートおよびジョイスティックデバイスグループに適用される他の名前を見たり考えたことがありますか? (例:「rec」はカジュアルを意味します。)これは良いアイデアだと思いますか、それとも破格すぎると思いますか?
私は自分のディストリビューションを構築/カスタマイズするつもりなので、他のディストリビューションが何をしているのか、最も一般的なものには気にしません。試してみて、あなたが最もうまくいくと思うものは何ですか。
私は他のUnicesユーザーのこの種の経験にも興味があります。なぜなら、ほとんどのUnicesユーザーはLinuxほど頻繁にデバイスを壊さないからです...彼らはまだゲームグループを持っていますか?どのようにそして何のために使用されますか?
答え1
ユーザーとグループの役割を決定する前に、games
他のユーザーが望む理由を特定する必要があります。ゲームに関連する特別な権限は何ですか?
- ゲームを実行します。通常、シェルアカウント以外にゲームを実行するための権限は必要ありません。ユーザーがインストールしたゲームを実行できないように制限しても、ユーザーは自分でゲームをインストールできます。
- ゲームハードウェアにアクセスしてください。ハードウェアデバイスはゲームに限定されることはほとんどない。 MIDIキーボードをゲームポートに接続し、ジョイスティックを使用して物理オブジェクトを制御するなどの操作を行うことができます。
- マルチユーザーインタラクションに参加します。主に高いスコアを保存します。ユーザーがエディタまたはユーティリティを使用してトップスコアファイルを編集できないようにするには、高い特権でゲームを実行する必要があります。
- ゲームプログラムをインストールして維持します。
ゲームの実行とゲームのハードウェアアクセスに関連するアクセス制御はほとんどありません(ゲーム周辺機器へのアクセス制御はあるかもしれませんが、ゲームの使用に限定されません)。高得点ファイルとゲームプログラムのインストールに関連するアクセス制御は一般的です。
ゲームプログラムにsetuidを設定させるのは悪い考えです。ほとんどのゲームはセキュリティを念頭に置いて設計されていません。ゲームを実行しているユーザーは通常、任意の方法で任意のファイルを変更したり、ゲーム内で高い権限でコマンドを実行したりできます。ゲームの実行可能ファイルがsetuidの場合、ゲームを実行しているユーザーはゲームの実行可能ファイルを変更してトロイの木馬に切り替えることができます。これにより、ゲームを実行している他のユーザーに感染する可能性があります。
したがって、ゲーム実行可能ファイルを所有しているユーザーは、ゲーム実行可能ファイルを実行したり、周辺機器を使用したり、最高のスコアファイルを作成したりできる人を制御するために使用することはできません。ゲームをインストールできる人を制御するために使用できます。ユーザーがいる場合、その目的は、ゲーム管理者がユーザー(より明確な名前)をsudoして維持できるようにすることgames
です。これらのゲーム管理者は、そのゲームをプレイするすべてのユーザーの権限を持っているため、ゲーム管理者権限のみが必要です。信頼できる人に授与されます。game-administrators
/usr/games
/usr/local/games
game-administrators
トップスコアファイルへのアクセスを制御するために、そのファイルをグループ(通常は名前)が所有できますgames
。共有されたトップスコアファイルを持つゲームはsetgidですgames
。games
ハイスコアに似た対話型ファイルとゲーム実行可能ファイルを保持する以外は、このグループを使用しないでください。特に、ゲームの実行可能ファイルはこのグループに書き込めないでください。権限(2755)がgames
必要です。rwxr-sr-x
setgidゲームの脆弱性を悪用するユーザーは、最高のスコアファイルを修正する可能性がありますが、他のダメージは発生しません。
ゲームへのアクセスを特定のユーザーに制限するには、game-players
グループを作成し、そのグループにのみアクセスできるゲームを含むディレクトリを作成します。つまり、make /usr/local/games
(またはゲームがある場所)はgame-administrators:game-players
モードによって所有されますrwxr-x---
(750)。