실수로 bash 명령 줄에 암호를 입력했습니다 잘못 입력 했습니다 Wrong password(서둘 렀습니다).

실수로 암호를 bash 명령 줄에 입력하여 Last login: ...줄을 잘못 입력 했습니다 Wrong password(서둘 렀습니다). 추적을 어떻게 처리합니까?

내가 한 것은 .bash_history문제를 일으키는 행 을 편집 하고 삭제하는 것입니다 (암호를 파일에 표시하기 위해 한 번 다시 로그인해야 삭제 할 수 있으므로 다시 로그인하면 UPARROW 키 아래에서 사용 가능한 기록에서 사라집니다).

명령 기록을 저장할 수있는 다른 장소가 있습니까? 시스템은 CentOS 6.5입니다.



답변

bash전체 기록을 지우는 대신의 기록 에서 문제가되는 행만 제거 할 수 있습니다 . -d플래그가 있는 행을 제거한 다음 플래그를 사용하여 새 히스토리를 저장 (쓰기)하십시오 -w.

$ history
351 ssh me@site.com
352 my_password
$ history -d 352
$ history -w


답변

여기에는 두 부분이 있습니다.

  • bash~/.bash_history기본적으로 세션이 끝날 때 기록되는 파일에 기록을 저장합니다.
  • history기억에 유지

안전을 위해 세션에서 삭제해야합니다.

history -c

필요에 따라 히스토리 파일을 자릅니다.

> ~/.bash_history

비밀번호를 입력 한 세션이 여전히 열려있는 경우 추적 을 처리하는 다른 방법 은 세션이 종료 될 때 HISTFILE히스토리가 기록되지 않도록 변수를 널 디바이스 로 설정하는 것입니다 ~/.bash_history.

export HISTFILE=/dev/null


답변

bash (적어도 내가 알고있는 모든 기록 및 현재 버전)는 종료 할 때까지 기록을 자동으로 저장하지 않기 때문에 절대 저장되지 않도록 명령을 입력 할 때 일반적으로 적용 가능한 전략은 즉시 입력하는 것입니다.

kill -9 $$

이렇게하면을 (를) SIGKILL붙잡을 수없는 셸이 종료되므로 셸은 종료시 아무것도 저장할 수 없습니다.

대부분의 다른 접근 방식은 사실 이후 (즉, 데이터가 이미 디스크에 닿은 후) 스크러빙을 포함하며, 특히 시스템에서 btrfs 또는 이와 유사한 것을 사용하는 경우 오류 가능성이 더 높습니다 (사본 누락).


답변

실수로 기록에 저장하지 않으려는 것을 입력 한 후 다음을 입력 할 수 있습니다. unset HISTFILE

Bash는 로그 오프 할 때 히스토리를 저장할 위치를 알지 못하므로 효과적으로 전체 세션에 대한 히스토리 로깅을 비활성화합니다.


답변

내가 가장 좋아하는 요령은 위쪽 화살표, 명령에 대한 백 스페이스를 누르고, 무언가를 입력하고 (필요하지 않을 수도 있음) 아래쪽 화살표를 누르고, “ls”를 입력하고 Enter 키를 누르는 것입니다. 정말 하키 느낌이지만 실제로 작동합니다. 내 기록에서 잘못된 명령을 편집 한 후 ctrl-c를 쳐서 편집을 중단하지 않고 망쳐 놓은 후 화가 나면 이것을 발견했습니다. bash가 개정주의 이력을 지원한다고 생각합니다. 😉

$ passw0rd
$ <up arrow><backspace x8>cd<down arrow>echo hi
$ history|tail -3

다음과 같습니다.

$ passw0rd
passw0rd: command not found
$ echo hi
hi
$ history|tail -3
 2445* cd
 2446  echo hi
 2447  history|tail -3
$ 


답변

다른 답변 외에도 비밀번호가 터미널 스크롤 버퍼 (표시 된 텍스트의 기록)에서 발견되고 터미널 에뮬레이터가 저장 한 경우 하드 디스크에서 더 많은 문제가 발생할 수 있습니다 디스크에 기록. 이것은 KDE konsole에서 발생합니다. 히스토리 크기가 “무제한 스크롤 백”으로 설정되어 출력을 버리지 않습니다.


답변

을 사용 $<space> command하면 명령이 기록에 추가되지 않고 때로는 유용합니다

$  history | grep mywierdgrep
$ history | grep mywierdgrep
 2005  history | grep mywierdgrep