Câu hỏi Ubuntu vỏ bash lồng nhau


Cảm ơn vì bất kì sự giúp đỡ.

Tôi đang giúp định cấu hình máy để ghi nhật ký phím bằng chức năng / usr / bin / script. Đối với mỗi phiên, một tệp nhật ký được tạo bao gồm thời gian POSIX. $ PS1 được thay đổi để phản ánh thời gian hiện tại và tên của người dùng để bất cứ lúc nào một cái gì đó được gõ - chúng tôi biết khi nào và những gì.

Vấn đề của tôi là / usr / bin / script khởi chạy một shell không đăng nhập mới (SHLVL 2) với dấu nhắc 'bash-4.2 $' chuẩn, và tôi không thể tìm thấy cái nào có cấu hình đang được nguồn để tôi có thể thay đổi $ PS1. / usr / bin / script được khởi chạy bởi root.

Đơn giản, hồ sơ nào đang được cung cấp bởi một phiên không đăng nhập SHLVL 2 được sở hữu bởi root, trong một phiên bắt đầu bởi một người dùng chuẩn? (Nó không có vẻ là /root/.bashrc hoặc /root/.profile)

Ngoài ra - làm thế nào tôi có thể buộc một hồ sơ bash được đọc ở mọi trình bao, tương tác, không tương tác, không đăng nhập, v.v.

Chỉnh sửa: Người dùng .bashrc .bash_profile và .profile đều có $ PS1 được xác định. Khi ở trong trình bao lồng nhau, tôi có thể mã nguồn bất kỳ thứ gì trong số này để thay đổi lời nhắc.


0
2017-11-24 16:15


gốc


Tôi sẽ kiểm tra / etc / và hồ sơ của người dùng. - choroba
Đây có phải là một tính năng dành cho người dùng đáng tin cậy hoặc một nỗ lực tại một hệ thống ghi nhật ký chống hacker không? Điều đó có lẽ sẽ ảnh hưởng đến loại và độ phức tạp của giải pháp. - l0b0
@ l0b0 Đây là tính năng dành cho người dùng đáng tin cậy. Nó là một hệ thống khép kín để truy cập đăng nhập được kiểm soát chặt chẽ. Đồng thời, chúng tôi không muốn có nhiều người dùng quản trị. - clargr1


Các câu trả lời:


Đã tồn tại một giải pháp cho việc này: sudo. Từ man 5 sudoers:

sudoers có thể đăng nhập cả hai lần thử thành công và không thành công (cũng như lỗi) vào syslog (3), một tệp nhật ký hoặc cả hai. Theo mặc định, sudoers sẽ đăng nhập thông qua syslog (3) nhưng điều này có thể thay đổi thông qua các thiết lập mặc định syslog và logfile.


0
2017-11-24 18:22



Có, chúng tôi sử dụng auditd để theo dõi các sự kiện hệ thống và tạo một tệp nhật ký riêng cho các mục này, nhưng mục tiêu của tôi cũng là lấy tất cả các lần nhấn phím thông qua hàm / usr / bin / script. - clargr1