암호화된 홈 디렉토리로 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/[이메일 보호됨]/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를 활성화했습니다. 한 시간 뒤 그 숫자는 420명으로 늘어났다. 5분 후, 기기를 끌 때까지(최소 30분 후) 숫자는 537입니다.
w
세 줄이 표시됩니다. 하나는 tty7에, 다른 하나는 pts/1( kdeinit4: kded4 [kdeinit]
)에, 다른 하나는 pts/3(내가 사용 중인 터미널 w
)에 표시됩니다. 그래서 내 컴퓨터에 로그인한 사용자는 537명이 아닌 것 같습니다. 여기서 무슨 일이 일어날 수 있습니까?
나중에 매분마다 카운터를 기록하기 시작했고 /dev/shm/ecryptfs-$USER-Private
카운터가 증가한 후 몇 분 내에 /var/sys/syslog의 syslog를 살펴보았습니다. 카운터가 증가하는 동안 몇 분 동안 볼 수 있었던 유일한 것은 "[UFW BLOCK]" 줄이 계속 켜져 있는 것이었습니다(명확하게 말하면 저는 이를 ufw
시스템 방화벽으로 사용하고 있으며 SSH에 대해 하나의 포트만 열려 있습니다). . 카운터를 기록하는 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
수정이 문제에 대한 효과적인 해결책인 것 같습니다.