나는 수년 동안 Gnu screen을 사용해 왔으며 tmux로 전환하려고 생각하고 있습니다.
세션에 연결할 때 tmux에서 비밀번호를 요구하도록 만드는 방법을 모르겠습니다. Gnu 화면에서는 :password
명령을 사용하여 비밀번호를 설정합니다. 그런 다음 분리한 후 세션에 대한 후속 연결에는 screen -x
연결하는 데 비밀번호가 필요합니다.
동일한 작업을 수행하도록 tmux를 어떻게 구성할 수 있나요? 구글링을 좀 해보니 느낀 점은그건 말도 안 돼. 저에게는 정말 멋진 쇼였습니다. 저는 tmux를 좋아하지만 비밀번호로 보호되는 세션 연결을 지원하지 않으면 사용할 수 없습니다.
답변1
tmux에서는 아직 불가능합니다. 지금까지는 터미널만 잠글 수 있습니다. 개발자들은 누구든지 시스템의 다른 셸에 액세스할 수 있다면 어쨌든 망할 것이라고 주장합니다.
그러나 파일 권한과 속성을 사용하여 사물을 잠그는 빠른 솔루션을 생각해냈습니다. $PATH에 추가해야 하는 3개의 bash 파일에 넣었습니다.
시작 파일
#!/bin/bash
if [[ ! -d ~/.tmux-sessions ]]; then
mkdir ~/.tmux-sessions
fi
tmux -S ~/.tmux-sessions/secure
세션을 종료하려면 일반적으로 ctrl+b,d를 사용하여 종료합니다. 그런 다음 다음을 실행해야 합니다.lock.sh다음과 같습니다.
lock.sh
#!/bin/bash
chmod 000 ~/.tmux-sessions
sudo chattr +i ~/.tmux-sessions
sudo -k
그러면 tmux에 연결하는 데 사용되는 소켓이 잠깁니다. 소켓 디렉터리에서 변경할 수 없는 속성을 제거하고 권한을 다시 정상으로 변경할 때까지는 누구도 해당 디렉터리에 액세스할 수 없습니다. 다행히도 이에 대한 스크립트도 만들 수 있습니다.
첨부파일.sh
#!/bin/bash
sudo chattr -i .tmux-sessions
chmod 770 .tmux-sessions
tmux -S ~/.tmux-sessions/secure attach
이렇게 하면 Attach.sh를 실행할 수 있으며 다시 열려면 사용자 비밀번호를 묻는 메시지가 표시됩니다.
이 팁이 도움이 되기를 바랍니다!
터미널을 잠그기 위한 것입니다.
먼저 vlock을 설치해야 합니다.
sudo apt install vlock
또는 사용하는 패키지 관리자 명령이 무엇이든 가능합니다.
그런 다음 vlock을 사용하도록 tmux를 설정합니다.
echo "set-option -g lock-command vlock" >> ~/.tmux.conf
그런 다음 tmux에 있을 때 다음을 수행할 수 있습니다.
ctrl+b,:lock-session[enter]
이건 잠길 거야단말기. 누군가가 여전히 다른 터미널에서 세션에 연결할 수 있다는 점을 기억하는 것이 중요합니다. 또한 이를 방지할 수 있는 방법이 있는지 알아보고 있습니다.