/ bin / rbash คืออะไร


14

ฉันเรียนรู้เกี่ยวกับโปรแกรมเชลล์ทั่วไปโปรแกรมเปลือกทั่วไป

เมื่อฉันวิ่งcat /etc/shellsมันจะแสดง:

# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash

ที่/bin/rbashนี่คืออะไร มันใช้ในการเขียนสคริปต์?


6
ส่วนใดของความman rbashไม่ชัดเจน
เฮมเมอร์

1
@StigHemmer ฉันไม่ได้ทำ man rbashยังให้ข้อมูลรายละเอียดแก่ฉันด้วย ขอบคุณ
เดซี่

3
การอ่านหน้าคู่มือควรเป็นความพยายามครั้งแรกของคุณที่จะเข้าใจเครื่องมือ คุณควรอ่านบนเครื่องที่ดูเหมือนว่าคุณกำลังอ่านเกี่ยวกับรุ่นที่ถูกต้อง

คำตอบ:


16

จากวิกิพีเดีย

เชลล์ที่ถูก จำกัด คือเชลล์ Unix ที่จำกัดความสามารถบางอย่างของเซสชันผู้ใช้แบบโต้ตอบหรือกับเชลล์สคริปต์โดยทำงานภายใน มันมีจุดประสงค์เพื่อเพิ่มระดับความปลอดภัยเพิ่มเติม แต่ไม่เพียงพอที่จะอนุญาตให้มีการเรียกใช้ซอฟต์แวร์ที่ไม่น่าเชื่อถือทั้งหมด พบโหมดการทำงานที่ จำกัด ในเชลล์เป้าหมายเดิม [1] และต่อมาทุบตีคู่กัน [2] และใน Korn เชลล์ [3] ในบางกรณีเชลล์แบบ จำกัด ถูกใช้ร่วมกับ chroot jail ในความพยายามเพิ่มเติมเพื่อ จำกัด การเข้าถึงระบบโดยรวม

ดูคำตอบของ Soren Aสำหรับข้อ จำกัด ที่ใช้กับกระสุน จำกัด

คุณสามารถทำงานbashในโหมด จำกัด

bash -r
bash --restricted

ในระบบของฉัน:

$ file /bin/rbash
/bin/rbash: symbolic link to bash

ดังนั้นถ้าฉันวิ่ง/bin/rbashฉันก็วิ่งbash

แต่

มันเพียงพอที่จะสร้างลิงค์ชื่อ rbash ที่ชี้ไปยัง bash โดยตรง แม้ว่าสิ่งนี้จะเรียกใช้การทุบตีโดยตรงโดยไม่มี ตัวเลือก-rหรือ--restrictedตัวเลือกการทุบตีจะรับรู้ว่ามันถูกเรียกผ่าน rbash และมันจะเกิดขึ้นเป็นเปลือก จำกัด

ในขณะที่คุณสามารถทดสอบ:

zanna@monster:~$ rbash
zanna@monster:~$ cd playground
rbash: cd: restricted

1
ดูเหมือนจะมีข้อ จำกัด มากมาย แล้วมันจะมีประโยชน์ได้อย่างไร? มันใช้ในการเขียนสคริปต์หรือไม่?
เดซี่

3
มันสามารถตั้งเป็นเปลือกเริ่มต้นสำหรับผู้ใช้ที่คุณต้องการดักจับในไดเรกทอรีเฉพาะเช่น @passa
Zanna

2
@passa ที่ไม่ได้ใช้สคริปต์และเชลล์ที่ จำกัด นั้นไม่มีประโยชน์อะไรสำหรับการเขียนสคริปต์ เนื่องจากคุณรู้หรือสามารถตัดสินได้ว่าการกระทำใดที่เกิดขึ้นในสคริปต์จึงไม่มีประโยชน์ที่จะใช้เชลล์ที่ จำกัด สำหรับการสร้างสคริปต์
muru

@muru โอเค ดังนั้นนี่อาจใช้เพื่อจุดประสงค์ที่ซานนากล่าวไว้ในความคิดเห็นของเธอ
เดซี่

1
สิ่งนี้มีประโยชน์สำหรับผู้ดูแลระบบเนื่องจากสามารถป้องกันผู้ใช้รายอื่นจากการทำงานที่เป็นอันตราย มันค่อนข้างมีประโยชน์น้อยกว่าผู้ใช้

17

rbash เป็นเวอร์ชั่นทุบตีที่ จำกัด (ลดขนาด) ดูบทความนี้: https://en.wikipedia.org/wiki/Restricted_shell

จากบทความ:

ไม่อนุญาตการดำเนินการต่อไปนี้ในเชลล์ที่ จำกัด :

changing directory
specifying absolute pathnames or names containing a slash
setting the PATH or SHELL variable
redirection of output

bash เพิ่มข้อ จำกัด เพิ่มเติมรวมถึง:

limitations on function definitions
limitations on the use of slash-ed filenames in bash builtins

ข้อ จำกัด ใน Korn เชลล์ที่ จำกัด นั้นเหมือนกับในเชลล์เป้าหมายที่ จำกัด

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