暗号化されたホームディレクトリにKubuntu 12.10をインストールする際に問題があります。私は数週間それを把握しようとしてきました。透明性のためにしばらくaskubuntu.comにこの質問を投稿しましたが、回答が不足しているため、この質問を削除してここに投稿したことをここで指摘します。
数週間前にシステムからログアウトすると、暗号化されたホームディレクトリが常に再暗号化されていないことがわかりました。別のコンピュータファイルからコンピュータにSSHを介して接続すると、まだホームディレクトリのファイルを表示してアクセスできました。マシン(明らかに、私のSSHDには共有キーが必要です。これは後で関連する可能性があります)。いくつかの内容を読んだ結果、ホームディレクトリをいつ再暗号化するかを知るecryptfs
ためにカウンタファイルに依存することがわかりました/dev/shm/ecryptfs-$USER-Private
。ユーザーがログインするとカウンターは「1」、ユーザーがログアウトするとカウンターは「0」になり、暗号化がトリガーされます。
定期的に実行しながらcat /dev/shm/ecryptfs-my_user_name-Private
奇妙なことを発見しました。実際のマシンにログインした後、カウンタファイルがしばらく1にとどまり、大きくなり始めました。一度は数日間システムの電源を入れた後(私が覚えている限り)93になりました!
同じ種類の問題に関するレポートを次に見つけました。http://www.mail-archive.com/[Eメール保護]/msg01705.html。このページではssh
ログインとcron
。
ページを読んだ後も問題の原因を特定するのが困難です。私が観察したいくつかの点は次のとおりです。
1) コンピュータを再起動した後、再度ログインするとカウンタが 1 にリセットされますが、ログイン後数時間経過するとカウンタは増え続けます。
2)マイコンピュータにアクティブなSSH接続がない場合でも、この問題が発生します。
3)マイコンピュータが別のネットワークにある場合でも、この現象が発生します。したがって、これは、承認されていないユーザーが自分のシステムにアクセスすることとは何の関係もないと思います。
4)これは、端末(またはGUIのそれに対応する)でsudoを使用することとは関係がないようです。
5)5分ごとに出力を記録するようにクローンジョブを設定しましたが、cat /dev/shm/ecryptfs-my_user_name-Private
その時点で実行中のジョブとカウンターが増加し始めるポイント(1から3まで)の間の相関関係が見つかりませんでした。
6)上記の5分ごとにカウンタを記録するスクリプトを除くすべてのカスタムcrontabエントリを無効にしました。カウンターの増加は、このスクリプトの実行に関連していないようですcron
。 Anacrontabにはカスタム項目もありません。
結果の記録
私は数日間、5分ごとにカウンターの値を記録し始めました。一般的な日の結果は次のとおりです。コンピュータを再起動したら、SSH経由でログインします。数時間続いたセッションの間、カウンターは1にとどまった。その後、ネットワークを無効にして物理システムにログインしました(KDE DEを使用)。カウンターは50分間1に留まり、3に跳んだ。その時点でWi-Fiを有効にしました。 1時間後、その数字は420人に増えた。 5分後、デバイスの電源を切るまで(少なくとも30分後)、数字は537です。
w
3行が表示されます。 1つはtty7に、もう1つはpts / 1(kdeinit4: kded4 [kdeinit]
)、もう1つはpts / 3(私が使用している端末w
)に表示されます。だから私のコンピュータにログインしたユーザーは537人ではないようです。ここで何が起こりますか?
後で毎分カウンターの記録を開始し、/dev/shm/ecryptfs-$USER-Private
カウンターが増えた後、数分で/var/sys/syslogのsyslogを調べました。カウンターの増加中に数分間表示された唯一のことは、「[UFW BLOCK]」行がオンになっていることでした(明確に言えば、私はそれをufw
システムファイアウォールとして使用しており、SSH用のポートは1つだけです)。 。カウンターを記録するcronジョブ以外に、一貫した他のイベントがないようです(ただし、そのcronジョブは常にカウンターの増加に関連付けられておらず、問題の開始時には存在しませんでした)。
この問題を解決するには、次に何をすべきですか?どんな提案やアイデアでもいただきありがとうございます。
答え1
のカウンタは/dev/shm/ecryptfs-my_user_name-Private
ecryptfsの自動アンマウント設定によって管理されているようです。一部のガイドでは、ecryptfsなどの端末マルチプレクサを取得するために削除することをお勧めします~/.ecryptfs/auto-umount
(screen
tmux
https://askubuntu.com/questions/240555/how-to-prevent-ecryptfs-from-umounting-home-if-tmux-is-still-running、https://serverfault.com/questions/536407/tmux-and-encryptfs-causing-unreachable-directories-upon-reconnect)。を削除すると、~/.ecryptfs/auto-umount
ecryptfs自動アンインストールプログラムはこのカウンタのトレースを停止し、少なくともカウンタを減らすことはありません。
また、この問題を解決するために、使用時にカウンタが正しく減少するように、~/.ecryptfs/auto-umount
以下を追加しました。~/.bash_logout
screen
# needed for preventing ecryptfs auto-umount if screen is running
# from https://serverfault.com/questions/536407/tmux-and-encryptfs-causing-unreachable-directories-upon-reconnect
screenout=`screen -ls | head -1 | awk '{print $1}'`
if [ "$screenout" == "No" ]; then
# screen isn't running
touch $HOME/.ecryptfs/auto-umount
else
# screen session still running
if [ -e $HOME/.ecryptfs/auto-umount ]; then
rm $HOME/.ecryptfs/auto-umount
fi
# handle counter manually since removing it
count=`cat /dev/shm/ecryptfs-username-Private`
# decrement counter
let count--
# write decremented value to counter file
echo $count > /dev/shm/ecryptfs-username-Private
fi
echo 1 > /dev/shm/ecryptfs-username-Private
カウンタを手動でリセットしてからログアウトする必要があるかもしれません。私はそれをテストし、私の.bash_logout
修正が問題に対する効果的な解決策であるようです。