ฉันสามารถบันทึกกิจกรรม vi ได้หรือไม่


10

มีวิธีใดบ้างในการบันทึกกิจกรรม vi ฉันสงสัยว่าผู้ใช้รายอื่นกำลังออกคำสั่งโดยเข้าไปที่เชลล์ภายในเอดิเตอร์ vi ดูเหมือนว่าคำสั่งเหล่านั้นจะไม่บันทึกลงในประวัติ

คำตอบ:


6

นอกจากนี้คุณยังสามารถเปิดการบัญชีกระบวนการ (s / สามารถ / ควร /!)

จากนั้นคุณสามารถใช้:

lastcomm(1)

เพื่อดูคำสั่งเรียกใช้และหากพวกเขาถูกเรียกใช้หลังจากทางแยกมีหรือไม่มี exec

เมื่อรวมกับ IDS ที่ใช้โฮสต์นี้ควรให้สิ่งที่คุณต้องการ "เพื่อความยุติธรรมของกษัตริย์ที่อาจเกิดขึ้นกับเขา"


+1 สำหรับจุดที่ดีเกี่ยวกับการบัญชี
Phil Hollenback

7

ตอนนี้คุณกำลังบันทึกกิจกรรมของพวกเขาอย่างไร วิธีที่ง่ายที่สุดคือปิดกั้นไม่ให้เปิดเชลล์จาก vi

# vi /home/user/.exrc
set exrc
set shell=/bin/false
# chown root:root /home/user/.exrc
# chmod 644 /home/user/.exrc
# chattr +i /home/user/.exrc

หากคุณใช้เชลล์พิเศษเพื่อบันทึกคำสั่งคุณสามารถเปลี่ยน vi เพื่อใช้เชลล์นั้นเท่านั้น


+1 สำหรับวิธีง่ายๆในการ จำกัด การเข้าถึง vi
Phil Hollenback

2
แต่มันง่ายที่จะข้าม: "vim -u / dev / null"
jlliagre

ใช่นี่เป็นปัญหาที่แก้ไม่ได้ นาทีที่มีคนเข้าถึงระบบของคุณผ่านการเข้าสู่ระบบพวกเขาสามารถทำลายเครื่องได้ สิ่งที่ดีที่สุดที่คุณสามารถทำได้คือทำให้มันยากจริงๆ
Phil Hollenback

4

คุณกำลังพูดถึงประวัติเชลล์หรือไม่? โหมดเชลล์ vi ( :sh) เรียกใช้เชลล์เริ่มต้นของผู้ใช้หากนั่นคือทุบตีคุณสามารถตรวจสอบให้แน่ใจว่าการบันทึกประวัติถูกเปิดใช้งานเสมอโดยแก้ไข global / etc / bashrc และเพิ่ม:

set HISTFILE=~/.bash_history
shopt -s histappend
PROMPT_COMMAND='history -a'

ที่จะทำให้แน่ใจว่าทุกคำสั่งของผู้ใช้จะได้รับการบันทึกลงในไฟล์มันจะไม่ถูกเขียนทับและจะได้รับการอัพเดททุกครั้งที่มีข้อความแจ้งให้เชลล์ปรากฏขึ้น

โปรดทราบว่าผู้ใช้สามารถลบล้างสิ่งนี้ได้ในส่วนตัว~/.bashrcดังนั้นจึงไม่ใช่การรับประกันที่แน่นอนว่าการบันทึกจะเกิดขึ้น

บางรุ่น vi (เช่น NVI) สนับสนุนเซฟโหมดที่ปิดใช้งานเปลือกเข้าถึงผ่านทางเริ่มต้น vi nvi -Sเป็น คุณสามารถตั้งค่าชื่อแทนส่วนกลาง/etc/bashrcเพื่อบังคับโหมดนี้ให้เป็นค่าเริ่มต้นเช่นกัน

โปรดทราบว่าโดยทั่วไปปัญหาของผู้ใช้ที่เข้าสู่เชลล์ด้วยวิธีการที่ไม่คาดคิดเป็นปัญหายูนิกซ์แบบคลาสสิก ไม่มีวิธีปิดใช้งานสิ่งนี้อย่างสมบูรณ์แบบที่สุดที่คุณสามารถทำได้คือพยายาม จำกัด การเข้าถึงตามค่าเริ่มต้น ผู้ใช้ขั้นสูง (หรือผู้ใช้ที่รู้วิธีใช้ google) สามารถหลีกเลี่ยงข้อ จำกัด เหล่านี้ได้เสมอ ตัวอย่างเช่นหากผู้ใช้ไม่ต้องการบันทึกประวัติเชลล์ของเขาเขาสามารถทำสำเนาเชลล์ใหม่ด้วยตัวเลือกอะไรก็ได้ที่เขาต้องการใช้

นี่คือการเขียนที่ดีของวิธีการบังคับให้เข้าสู่ระบบในทุบตีและวิธีการที่สามารถหลีกเลี่ยงการบันทึก

ในที่สุดคุณได้พิจารณาเพียงแค่พูดคุยกับผู้ใช้เพื่อพิจารณาว่าพวกเขากำลังทำอะไรอยู่? 99% ของเวลาการสื่อสารทางวาจาที่เรียบง่ายสามารถขจัดความสับสน หากคุณกำลังบันทึกกิจกรรมของผู้ใช้รายนี้เนื่องจากคุณไม่ไว้ใจพวกเขาคุณอาจพูดคุยกับพวกเขาเกี่ยวกับข้อกังวลของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.