Sambaでアクセスするときにのみ暗号化されたディレクトリをマウントするように設定する方法は?

Sambaでアクセスするときにのみ暗号化されたディレクトリをマウントするように設定する方法は?

(これはクライアントアクセスを制限せず、ext3権限でこの問題を解決できます。)

私のNASドライブのデータを暗号化したい(バッファローLinkStation Proユーザーフレンドリーな方法でSSHアクセス(重要な場合)を有効にします。現在のtruecryptコンテナは、SSHを介して手動でマウントして再マウント解除する必要があります(解決しない限り)。私のタイムアウトの問題)。パスワードなし(EFS暗号化)SSHキーを使用してください。このキーは2つのPuTTYデスクトップショートカットに縮小され、truecryptパスワードを入力できます(さらに簡単に) インストールのため。

しかし、理想的な解決策は透明です。最初は何とかやろうと思いました。共有を通じてEFS暗号化可能ただし、Active Directoryサーバーを持っていない複数のユーザーの場合は、より多くのタスクとEFSが必要になることがあります。とても困っているようです

しかし、私の考えは、認証されたユーザー(Windowsクライアントを使用)のSambaアクセスによって自動的にトリガーされるEncFS暗号化ディレクトリなどを自動的にマウントすることです。これはどのように達成できますか? (許可されていないユーザーにハニーポットの共有を見せるとボーナスポイント...)

ベストアンサー1

Sambaの「ログインスクリプト」(Sambaログイン後に実行されるクライアントコード)を使用してソリューションのスケッチを表示しましたが、ソリューション全体にはスケッチを完了するために詳細が含まれている必要があります。また、「事前実行スクリプト」(Sambaログイン中に実行されるサーバー側コード)も関連しています。

引用するsmb.conf のマニュアルページ

ログインスクリプト(G)

このパラメータは、ユーザーが正常にログインしたときにコンピュータにダウンロードされ、実行されるバッチファイル(.bat)またはNTコマンドファイル(.cmd)を指定します。ファイルにはDOSスタイルのCR / LF行末を含める必要があります。このファイルを生成するには、DOSスタイルエディタを使用することをお勧めします。

スクリプトは[netlogon]サービスへの相対パスでなければなりません。 [netlogon] サービスに指定されたパスが /usr/local/samba/netlogon でログインスクリプト = STARTUP.BAT の場合、ダウンロードされるファイルは次のようになります。

/usr/local/samba/netlogon/STARTUP.BAT

バッチファイルの内容は完全にあなたが選択します。推奨されるコマンドは、NET TIME \ SERVER / SET / YESを追加して、各コンピューターに時計を同じタイムサーバーと同期させることです。別の目的は、汎用ユーティリティにNET USE U:\ SERVER \ UTILSを追加することです。

NET USE Q: \\SERVER\ISO9001_QA

例えば。

[netlogon] 共有への書き込みアクセスを許可しない場合、またはセキュリティ環境でユーザーにバッチファイルへの書き込みアクセスを許可しないことが特に重要です。これにより、バッチファイルがランダムに変更され、セキュリティに違反する可能性があります。

このオプションは標準の代替オプションを使用し、各ユーザーまたはコンピュータに別々のログインスクリプトを使用できます。

そして

事前実行(S)

このオプションは、サービスに接続するたびに実行するコマンドを指定します。一般的な交換が必要です。

興味深い例は、ユーザーがログインするたびにウェルカムメッセージを送信することです。たぶん今日のニュースでしょうか?例は次のとおりです。

preexec = csh -c 'echo \"Welcome to %S!\" | /usr/local/samba/bin/smbclient -M %m -I %I' &

ただし、お客様の場合はログインスクリプト(クライアントにインストールされている暗号化されていないフォーム)が必要なため、ソリューションスケッチには次のものが含まれます。

  1. 各コンピュータに次のものがあることを確認してください。EncFSに対応インストール済み
  2. クライアントでencfsを呼び出し、ユーザーにログインするように求めるログインスクリプト(.bat形式)を作成します。したがって、encfsコマンドはローカルで暗号化されていないフォームをインストールしますが、リモートストアは暗号化されたままになります。
  3. そのユーザーがログインスクリプトを実行するようにsmb.confを設定します。例えば

    ログインスクリプト = runencfs.bat

  4. ボーナスポイントを取得するには、ログインスクリプトが自動的に/ Encfs(Samba共有から)をインストールするように求められ、インストール後にのみインストールを実行できます!

ただし、クライアント側のスクリプトは、cmd言語、encfsのインストールの確認、およびWindowsのトラブルシューティングのために面倒なことを提供します。Windows 8.1以降と同様に、ログインスクリプトは、特に設定しない限り、5分後には実行されません。

おすすめ記事