본문 바로가기
OS/Mac

Last login: ... (feat. MOTD, .hushlogin)

by 코딩하는보기 2024. 1. 2.
728x90
반응형

UNIX 계열에서 터미널을 열면 이것과 비슷한 메시지가 뜬다

Last login: Tue Jan  2 04:45:05 on ttys000

 

MOTD

로그인에 성공하면, 해당 사용자의 마지막으로 성공하거나 실패한 로그인 시도 날짜와 시간을 표시하고, 인증 정보(일반적으로 비밀번호)의 최종 변경 이후에 이 사용자의 실패한 로그인 시도 총계를 표시한다
위와 같은 메시지를 MOTD(Message Of The Day)라고 부르며, 터미널에 접속했을 때 사용자에게 뜨는 Welcome 메시지를 말한다
 

.hushlogin

하지만 종종 모종의 이유로 이 메시지를 나오지 않게 하고싶을 때는 아래의 명령어를 입력하면 된다

touch ~/.hushlogin
  • touch: 파일 생성 명령어
  • ~: home 디렉토리 경로
  • .hushlogin: hushlogin이라는 파일이름을 가진 숨김파일 형태

 
결과

 
다시 이 메시지를 나타나게 하고 싶다면

rm ~/.hushlogin

 
 

SSH

이 MOTD 메시지는 SSH로 다른 컴퓨터에 접속을 했을 때도 확인할 수 있다

 

MOTD 메세지 수정

그럼 [ Last Login: ... ]이 메시지를 수정하는 방법은 없을까?
chatGPT: Last Login 메시지를 다른 메시지로 변경하는 것은 macOS에서 직접적으로 지원되지 않습니다.
라고 한다
하지만 저 메시지에 이어서 내가 원하는 메시지를 나오게 하는 방법은 있다!
/etc/motd 파일을 만들고 그 안에 내용을 입력하면 된다(MacOS는 기본적으로 motd 파일이 없다)
nano, vi, vim 등 자신이 원하는 에디터 명령어를 사용해서 작성하자
/는 루트 디렉토리or시스템 디렉토리라서 sudo 명령어가 필요하다
안녕하세요 code-boki 티스토리 블로그의 내용을 봐주셔서 감사합니다❤️

sudo vi /etc/motd

- 결과
새 터미널을 여러개 열어봤다

크 멋지다..ㅋㅋ
이렇게 기본 메시지를 추가했다!!
 

응용

보통 회사를 다녀보면 최소한 dev, prod 서버는 있고
추가로 stg(staging), qa 등등의 서버가 있기 마련이다
Termius 등의 앱을 사용하거나 자기가 접속하고 있는 서버의 주소를 명확히 알고있는 사람이 아닌 경우 실수를 할 수 있다
test코드를 prod환경에서 돌린다던지...
(물론 version control을 하면서 CI/CD 파이프라인을 타겠지만, 직접 개발 서버로 가서 코드나 파일을 바꾸는 경우도 있기 때문에)
그렇기 때문에 이 MOTD메시지를 추가해서 현재 접속하고 있는 서버가 어떤 서버인지 알려주면 좋을 것 같다(그냥 Termius 사용하는게..)
특정 서버에 들어가서 motd 메시지를 수정해보자

sudo vi /etc/motd
---------------------------
*** Development Server ***
---------------------------
---------------------------
 *** Production Server ***
---------------------------

 

접속할때 어디 서버에 접속한건지 메시지가 출력되도록 했다!!
 

최종보스 - Termius App과 함께 사용

이 앱을 사용하면 UI로 접속 경로를 설정할 수도 있고, Tagging을 할 수도 있고 여러 session view를 split해서 본다던지 할 수 있다..ㅎ
위에 MOTD 셋업이 쓸모없는 일이라고는 생각하지 않는다. 함께 쓰면 좀 더 실수를 줄일 수 있는 그런 것이다

 
참고
https://www.ibm.com/docs/ko/aix/7.3?topic=passwords-suppressing-login-messages
https://en.wikipedia.org/wiki/Message_of_the_day
 

728x90
반응형

댓글