ssh
누군가 내 서버에 원격으로 연결할 때 내 서버가 나에게 메일을 보내도록 하고 싶습니다.
who
사용자 이름, 단말기 ID, 날짜만 알려주시면 됩니다. 그냥 사용할 수는 없고 누군가가 나에게 연결하는 데 사용하는 IP를 확인해야 합니다. 따라서 트리거 부분은 외부 IP가 됩니다.
어떻게 해야 하나요?
편집: who -h는 SSH 세션의 IP 주소를 반환합니다. 고마워요 Archmar
답변1
Linux 배포판에 /etc/bashrc
일부 셸 스크립트를 추가할 수 있습니다 . /etc/bash.bashrc
이 명령은 사용자가 SSH를 통해 원격으로 로그인할 때 실행됩니다. $SSH_CLENT
SSH 로그인을 구별하는 변수 가 있는지 테스트해 보세요 .
다음과 같이 필요에 맞는 다른 유용한 변수가 있습니다.
SSH_ASKPASS=/usr/lib/ssh/x11-ssh-askpass
SSH_CLIENT='127.0.0.1 57353 2217' ← ip address
SSH_CONNECTION='127.0.0.1 57353 127.0.0.1 2217'
USER=username
편집: 물론 사용자가 GNU/bash를 사용하는 경우입니다. 다른 쉘은 다른 파일을 사용합니다. 관련 매뉴얼을 확인하시기 바랍니다.
HTH, 건배