Kịch bản khởi chạy mỗi khi tôi gõ một lệnh nhất định


1

Vì vậy, về cơ bản mỗi lần người dùng sử dụng lệnh ssh, tôi muốn khởi chạy một tập lệnh tìm nạp tên người dùng và thời gian anh ta gõ nó bằng ipaddress mà anh ta muốn gửi đến và gửi chúng đến máy chủ mà anh ta đang cố gắng gửi đến.

Điều này có thể không? và lệnh nào có thể làm điều đó.

Cảm ơn


3
Bí danh ssh đến một kịch bản làm những gì bạn muốn.
qasdfdsaq

Xem câu trả lời của tôi cho một ví dụ
Daniel

Câu trả lời:


2

Giả sử bạn đang sử dụng máy dựa trên 'nix, bạn có thể sử dụng tập lệnh này:

# ssh script to grab username, date/time, and destination

first=`echo "$*" | cut -d "@" -f 1`
last=`echo "$*" | cut -d "@" -f 2`

time=`date`
ip=`echo $last | cut -d " " -f 1`
user=`echo $first | rev | cut -d " " -f 1 | rev`

echo "At $time, $USER on $HOSTNAME attempted to ssh to $user@$ip" >> sshlog.txt

ssh $*

endtime=`date`
echo "At $endtime, $USER on $HOSTNAME exited an ssh session to $user@$ip" >> sshlog.txt

Chỉ cần bí danh ssh đến vị trí của tập lệnh này, ví dụ: alias ssh=/home/bob/bin/ssh và mọi thứ nên hoạt động.


Daniel! cảm ơn bạn! Làm việc hoàn hảo vấn đề của tôi là quên ssh ở cuối .. Bạn có biết cách gửi cùng một tin nhắn khi người dùng thoát khỏi ssh không? Có cách nào để làm điều đó là tốt? vì vậy nhật ký sẽ lưu trữ khi người dùng đăng nhập và khi đăng xuất
Peter Hayek

Tôi sẽ chỉnh sửa để cung cấp thông tin đó
Daniel

Đó Ngoài ra, hãy nhớ rằng nếu bạn loại bỏ >> sshlog.txt từ những dòng echo đó, thông tin đó sẽ được hiển thị trên màn hình.
Daniel

Nếu tôi là một cô gái, tôi sẽ kết hôn với bạn. cảm ơn..
Peter Hayek

Chà, bạn sẽ là cô gái đầu tiên từng quan tâm đến tôi.
Daniel
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.