사람들이 명령 행에 비밀번호를 쓰는 것을 두려워하는 이유는 무엇입니까?
히스토리 파일은에 위치 ~/.history
하므로 명령 (및 루트)을 실행 한 사용자 만 사용할 수 있습니다.
답변
명령 행은 히스토리에서만 사용할 수 없습니다. 예를 들어 파일 시스템 의 출력 ps -ocmd
또는 /proc
파일 시스템을 통해 사용할 수도 있습니다 . ( /proc/<pid>/cmdline
)를 ps
읽는 곳 입니다.
또한 사용자의 홈 디렉토리는 종종 세계 또는 그룹에서 읽을 수 있습니다. 히스토리 파일은 사용자가 읽을 수만있게 만들 수 있지만 삭제 및 재생 후에는 유효하지 않을 수 있습니다.
답변
커맨드 라인의 암호는 나쁜 생각입니다. 다른 답변에서 논의 된 방법 외에도 :
- / proc
- 프로세스 목록 (
ps
) - 사용자 기록 파일
다음 위치에도 사용자 명령이 표시 될 수 있습니다.
- 감사 로그
- / var / log / *
또한 사용자가 시스템간에 로그인 할 때 사용자의 명령이 표시 될 수도 있으므로 일반적으로 나쁜 습관이므로 항상 피해야합니다.
답변
문제는 명령이 실행되는 동안 (대부분의 경우, 심지어 루트 사용자의 경우에도) 매개 변수의 가시성입니다. 의 출력을 참조하십시오
ps -eo pid,user,args