คำถามติดแท็ก ssh

Secure Shell (SSH) เป็นโปรโตคอลหลักสำหรับการเชื่อมต่อเชลล์ที่เข้ารหัส แท็กนี้ยังใช้สำหรับคำถามเกี่ยวกับ sshd และ openssh ซึ่งเป็นสองแอปพลิเคชันมาตรฐานสำหรับการใช้ SSH

1
ฉันจะกำหนดค่า SSHd ให้อนุญาตคำสั่งเดียวโดยไม่ต้องให้สิทธิ์การเข้าสู่ระบบแก่ผู้ใช้อย่างสมบูรณ์ได้อย่างไร
ฉันกำลังมองหาวิธีที่ดีที่สุดในการเรียกคำสั่งระยะไกลผ่าน SSH ฉันสร้างผู้ใช้ 'rpcall' สร้างใบรับรองใหม่และกรอกรหัสที่ได้รับอนุญาต รักษาความปลอดภัยให้มากขึ้นด้วย from="ip",no-agent-forwarding,no-X11-forwarding,no-port-forwarding,no-pty ssh-rsa ...... ตอนนี้ผู้ใช้ rpcall ไม่สามารถเข้าสู่เทอร์มินัลได้ ssh -l rpc 192.168.12.1 PTY allocation request failed on channel 0 แต่มันเป็นไปได้ที่จะเรียกใช้คำสั่งใด ๆ ssh -l rpc 192.168.12.1 cat /etc/passwd มีวิธีใดบ้างที่ฉันสามารถ จำกัด การประมวลผลคำสั่งให้มีเพียงหนึ่งสคริปต์ประมวลผลเท่านั้น? ตัวอย่างเช่น /home/rpcall/bin/command.sh ฉันตั้งค่า bash shell สำหรับผู้ใช้นี้และใช้. bashrc บังคับให้เรียกใช้สคริปต์ประมวลผล แต่ฉันไม่รู้วิธีส่งพารามิเตอร์จากการเรียก ssh .bashrc สำหรับผู้ใช้ rpcall /home/rpcall/bin/command.sh $params1 $params2 …
11 ssh  remote  exec 

4
SSH ผ่านหลายโฮสต์โดยใช้ ProxyCommand?
ฉันมีรายการใน ~ / .ssh / config บนคอมพิวเตอร์ที่บ้านซึ่งมีลักษณะดังนี้: host foo bar ProxyCommand ssh -x -a -q gateway.example.com nc %h 22 ที่gateway.example.comเป็นเซิร์ฟเวอร์ในที่ทำงานที่เชื่อมต่อกับอินเทอร์เน็ตสาธารณะและเครือข่ายภายใน กล่องเกตเวย์แก้ปัญหา foo และ bar โดยใช้รายการใน / etc / hosts ปัญหาของฉันคือว่าผมต้องไปถึงกล่องที่มีอยู่ในด้านอื่น ๆ fooของ ลองเรียกมันว่า "baz" โฮสต์ "baz" อยู่ในเครือข่ายส่วนตัวอื่นที่เชื่อมต่อกับ foo แต่ไม่เชื่อมต่อกับ "เกตเวย์" ฉันได้ลองใช้สิ่งนี้: host baz ProxyCommand ssh -x -a -q gateway/example.com ssh …
11 proxy  ssh 

1
ฉันสามารถกำหนดค่า VSFTPD ให้ฟังได้เฉพาะ localhost หรือไม่
ฉันมีแอปรุ่นเก่าที่ต้องการ FTP และไม่สามารถทำ SFTP ได้ ทางออกของฉันคือ ใส่เซิร์ฟเวอร์ FTP โดยใช้ VSFTPD กำหนดค่าไฟร์วอลล์เพื่อยอมรับการเชื่อมต่อพอร์ต 21 จาก localhost เท่านั้น ตั้งค่าการเชื่อมต่อ SSH จากไคลเอนต์ด้วยแอปรุ่นเก่า อุโมงค์ FTP ผ่าน SSH ฉันสงสัยว่าถ้าฉันสามารถกำหนดค่า VSFTPD ให้ละเว้นการเชื่อมต่อจากที่ใดก็ได้ยกเว้น localhost ด้วยตัวเองนอกเหนือจากไฟร์วอลล์ เข็มขัดและเข็มขัดรัดทั้งสอง
11 ssh  ftp  sftp  ssh-tunnel  vsftpd 

6
SSH ล้มเหลว: คำขอการจัดสรร PTY ล้มเหลวในช่อง 0
ดังนั้นฉันจึงตรวจสอบข้อผิดพลาดและตรวจสอบข้อผิดพลาดของเซิร์ฟเวอร์ แต่โซลูชันไม่พอดี ผลลัพธ์ส่วนใหญ่มีปัญหากับ / dev / pts แต่นั่นติดตั้งอยู่ ผลลัพธ์อื่น ๆ คือข้อผิดพลาดกับ git แต่ไม่มี git บนเครื่อง บัญชีของฉันไม่ถูกบล็อกฉันยังสามารถเข้าสู่คอนโซลได้ ผู้ใช้รายอื่นมีปัญหานี้ด้วยดังนั้นฉันไม่คิดว่าจะมีส่วนเกี่ยวข้องกับสิ่งที่อยู่ใน. ssh ของฉัน / ฉันได้รับคำตอบนี้ด้วย ssh -vv: <snip> debug1: Next authentication method: password rogier@server's password: debug2: we sent a password packet, wait for reply debug1: Authentication succeeded (password). debug1: channel 0: new [client-session] debug2: …
11 ssh  debian 

5
บังคับ ssh เพื่อให้พร้อมท์สำหรับผู้ใช้
เมื่อคุณเรียกใช้ ssh โดยไม่มีอาร์กิวเมนต์ login_name มันจะใช้ชื่อผู้ใช้ในพื้นที่ของคุณโดยอัตโนมัติเป็น login_name ตัวอย่างเช่น: cogan@localhost$ ssh myserver cogan@myserver's password: มีวิธีบังคับ ssh ให้พรอมต์ชื่อ login_name หรือไม่?
11 ssh 

3
scp ส่งกลับข้อผิดพลาด“ <บรรทัดใหม่>” ที่ไม่คาดคิด
ฉันพยายามscpไฟล์จากเซิร์ฟเวอร์ไปยังเครื่องของฉัน แต่มันทำให้ฉันมีข้อผิดพลาดนี้: protocol error: unexpected &lt;newline&gt; นี่คือไวยากรณ์ของฉัน: scp user@server:/path/to/file . มันไม่ทำงานบนเซิร์ฟเวอร์นี้ แต่จากนั้นฉันลองคำสั่งเดียวกันบนเซิร์ฟเวอร์อื่นของฉันดังนั้นฉันสามารถสันนิษฐานได้ว่ามันผิดปกติกับเซิร์ฟเวอร์ของฉันเท่านั้นไม่ใช่ไวยากรณ์ของscpคำสั่ง ความคิดใด ๆ
11 ssh  scp 

3
การบันทึกกิจกรรม“ บุคคล” ใน Linux
ดังนั้นฉันได้อ่านโพสต์มากมายที่เกี่ยวข้องกับเรื่องนี้และเพิ่งสับสนมากขึ้นกว่า แต่ก่อน มีคำแนะนำสำหรับเครื่องมือต่าง ๆ รวมถึง ttyrec, snoopy, acct, rootsh, sudosh, ttyrpld, การตรวจสอบ unix และอีกมากมาย ในกรณีของฉันฉันต้องการบันทึกคำสั่งทั้งหมดที่ดำเนินการบนระบบ (เช่นประวัติที่เปิดใช้งานการประทับเวลา) แต่ฉันต้องการทราบว่าใครทำอะไรบ้าง อย่างไรก็ตามเราทุกคนเข้าสู่ระบบผ่าน ssh ไปยังบัญชีย่อยบางส่วนของบัญชีผู้ใช้เดียวกัน (ขึ้นอยู่กับสิ่งที่เราทำ) ฉันจะรับบันทึกคำสั่งรวมถึงข้อมูล "ใคร" จะให้ฉัน (เกี่ยวกับการเชื่อมต่อ) เพื่อให้ฉันสามารถติดตามการดำเนินการกับบุคคลที่ระบุว่าเป็น "ผู้ใช้" ทั่วไปได้อย่างไร
11 linux  ssh  bash  logging 

4
จะควบคุม umask / PAM / สิทธิ์ทั้งหมดได้อย่างไร
// อัปเดตเมื่อ 8 ก.พ. - สรุปประเด็นสำคัญโดยย่อ: วิธี umask ไดเรกทอรีแตกต่างจากไฟล์ได้อย่างไร วิธีการ umask บน Nautilus คัดลอก / วางได้อย่างไร วิธีการตั้งค่า umask สำหรับ SSHFS สถานการณ์ของเรา หลายคนจาก บริษัท ของเราเข้าสู่เซิร์ฟเวอร์และอัปโหลดไฟล์ พวกเขาทุกคนต้องสามารถอัปโหลดและเขียนทับไฟล์เดียวกันได้ พวกเขามีชื่อผู้ใช้ที่แตกต่างกัน แต่ทั้งหมดอยู่ในกลุ่มเดียวกัน อย่างไรก็ตามนี่คืออินเทอร์เน็ตเซิร์ฟเวอร์ดังนั้นผู้ใช้ "อื่น ๆ " ควรมี (โดยทั่วไป) เพียงแค่เข้าถึงแบบอ่านอย่างเดียว ดังนั้นสิ่งที่ฉันต้องการคือสิทธิ์มาตรฐานเหล่านี้: ไฟล์: 664 ไดเรกทอรี: 771 เป้าหมายของฉันคือผู้ใช้ทุกคนไม่จำเป็นต้องกังวลเกี่ยวกับการอนุญาต เซิร์ฟเวอร์ควรได้รับการกำหนดค่าในลักษณะที่การอนุญาตเหล่านี้นำไปใช้กับไฟล์และไดเรกทอรีทั้งหมดที่สร้างขึ้นใหม่คัดลอกหรือเขียนทับมากเกินไป เมื่อเราต้องการการอนุญาตพิเศษบางอย่างเราจะเปลี่ยนสิ่งนี้ด้วยตนเอง เราอัปโหลดไฟล์ไปยังเซิร์ฟเวอร์โดย SFTP-ing ใน Nautilus โดยติดตั้งเซิร์ฟเวอร์โดยใช้ sshfs และเข้าถึงใน Nautilus …
11 ssh  permissions  sftp  pam  umask 

4
วิธีแก้ไขคำสั่งเสร็จสิ้นสำหรับ ssh บน zsh?
ฉันต้องการตั้งค่าความสมบูรณ์ของคำสั่งใน zsh เพื่อแสดงชื่อโฮสต์หลังจากที่ฉันพิมพ์ ssh [TAB] นำชื่อออกจากไฟล์. ssh / config ของฉัน (และควรเป็นที่รู้จักจาก known_hosts และ / etc / hosts และอื่น ๆ ที่เหมาะสม) และนำเสนอรายการเดียว มันทำอะไรบางอย่างในขณะนี้ แต่ มันไม่ได้ใช้. ssh / config เลย ต้องการชื่อผู้ใช้ก่อนแม้ว่าการใช้. ssh / config จะทำให้การพิมพ์ชื่อผู้ใช้ไม่จำเป็น มันมีหลายรายการ (อาจเป็นหนึ่งใน known_hosts และอีกรายการจาก / etc / hosts แต่ฉันยังไม่ได้ยืนยัน) ดังนั้นฉันจึงต้องการที่จะรวมชื่อผู้ใช้ที่รู้จักและชื่อโฮสต์ที่รู้จักในรายการ (ดีกว่าเดียว) หลังจากพิมพ์ ssh [TAB] (ฉันมาที่นี่ก่อน Google เพราะ …

5
fail2ban ปลอดภัยไหม ดีกว่าที่จะใช้ปุ่ม ssh?
ฉันสงสัยว่าฉันควรใช้การรับรองความถูกต้องของคีย์เมื่อเข้าสู่ระบบ SSH หรือเพียงแค่ไปที่ fail2ban + ssh (ปิดใช้งานการเข้าสู่ระบบรูท) fail2ban ปลอดภัยหรือดีกว่าที่จะไปข้างหน้าและสร้างคีย์และตั้งค่าที่เครื่องไคลเอนต์ของฉันทั้งหมดที่ต้องเชื่อมต่อกับ ssh หรือไม่
11 ssh  fail2ban 

1
วิธีใช้ sshd_config - ตัวเลือก PermitUserEnvironment
ฉันมีclient1และclient2ทั้งสองเป็นเครื่อง Linux จากclient1: client1$ssh root@client2 "env" จะแสดงรายชื่อของตัวแปร SSH client2จาก สิ่งที่ฉันทำเมื่อclient2: ฉันต้องการเพิ่มตัวแปรใหม่ให้กับ client2 ดังนั้นผมจึงแก้ไขsshd_configไป PermitUserEnvironment yes และสร้างสภาพแวดล้อมไฟล์ภายใต้ ssh ด้วยรายการต่อไปนี้ Hi=Hello จากนั้นรีสตาร์ท sshd /etc/init.d/sshd จากการclient1ลองใช้คำสั่งเดียวกัน client1$ssh root@client2 "env" Hiไม่ได้ให้ตัวแปรใหม่ Ref: http://www.raphink.info/2008/09/forcing-environment-in-ssh.html http://www.netexpertise.eu/en/ssh/environment-variables-and-ssh.html/comment-page-1#comment-1703
11 ssh 

5
ปัญหาเกี่ยวกับ SCP ที่สะดุดระหว่างการคัดลอกไฟล์ผ่าน VPN
ฉันมีไฟล์หลายชุดที่ฉันต้องการคัดลอกผ่าน SCP ผ่าน VPN ผ่านเซิร์ฟเวอร์ลินุกซ์ระยะไกลในแต่ละคืน ไฟล์มีขนาดไม่ใหญ่เรากำลังพูดถึงหลายสิบเมกะไบต์ที่นี่ แต่การคัดลอกไฟล์มักจะหยุดทำงานหลังจากไม่กี่วินาที ใช้คำสั่ง SCP ด้วย -vvv ฉันเห็นสิ่งต่อไปนี้ซ้ำแล้วซ้ำอีกตลอดกระบวนการคัดลอกที่พยายาม: debug2: channel 0: rcvd adjust 131072 debug2: channel 0: rcvd adjust 131072 debug2: channel 0: rcvd adjust 131072 ความคิดใด ๆ ฉันเห็นคำถามนี้ถูกถามในที่ต่างๆ แต่ไม่มีคำตอบเลย ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม
11 linux  ssh  vpn  scp 

8
ไม่สามารถดึงหน้าจอเดี่ยวออกเพื่อดำเนินการต่อ
ฉันใช้ผงสำหรับอุดรูและมีการเชื่อมต่อไร้สายที่ไม่น่าเชื่อถือดังนั้นฉันจึงใช้หน้าจอเพื่อทำงานต่อไป บ่อยครั้งที่ฉันถูกตัดการเชื่อมต่อจากนั้นฉันไม่สามารถแนบหน้าจอของฉันอีกครั้ง ฉันจะวิ่งscreen -D -RRและมันจะนั่งอยู่ที่นั่นอย่างไม่มีกำหนด ฉันได้พยายามctrl+zที่จะได้รับคอนโซลหลังของฉันตามด้วยps aux | grep screenแล้วkill -9เพื่อให้ได้ผลลัพธ์ทั้งหมดแล้วscreen -D -RRอีกครั้ง แต่ฉันได้รับผลเดียวกัน ฉันลองชุดของ d และ r ที่คุณสนใจพูดถึง แต่ก็ยังอยู่ที่นั่น หน้าจอของฉันอยู่ตรงนั้นมันจะไม่ทำอะไรเลยอย่างน้อยก็ดำเนินการต่อทั้งหมด ใครมีเคล็ดลับหรือกลอุบายหรือแนวคิดใด ๆ เพื่อให้เซสชันหน้าจอของฉันกลับมาทำงานต่อได้หรือไม่
11 ssh  gnu-screen  putty 

5
จำกัด การรับส่งข้อมูล SSH หรือไม่
ฉันต้องการ จำกัด แบนด์วิดท์ SSH บนเซิร์ฟเวอร์ของฉัน นั่นคือแต่ละกระบวนการ sshd ควรถูก จำกัด ที่ 200Kb / s หรืออะไรทำนองนั้น scp มีฟังก์ชั่นนี้ แต่ ssh ได้รับการออกแบบให้ใช้งานแบบโต้ตอบได้ดีขึ้นดูเหมือนจะไม่มีตัวเลือกนี้ อย่างไรก็ตามฉันต้องการรวมการทำงานของ -D (SOCKS proxy) เข้ากับความสามารถในการ จำกัด ปริมาณการใช้งาน มีตัวเลือกสำหรับสิ่งนี้หรือไม่?
11 ssh  bandwidth  traffic 

3
ความสามารถในการบันทึก SSH เทียบเท่ากับการบันทึก su สำหรับการรับรองความถูกต้องส่วนตัว / สาธารณะหรือไม่?
ที่นี่ที่ทำงานเรามีบัญชีเข้าสู่ระบบที่ใช้ร่วมกันที่ไม่ใช่รูทบน UNIX ที่ใช้ในการดูแลระบบแอปพลิเคชันเฉพาะ นโยบายนี้ไม่อนุญาตให้ลงชื่อเข้าใช้โดยตรงไปยังบัญชีที่แชร์ คุณต้องเข้าสู่ระบบด้วยตัวคุณเองและใช้คำสั่ง "su" เพื่อเปลี่ยนเป็นบัญชีที่ใช้ร่วมกัน นี่คือเพื่อการเข้าสู่ระบบ / ความปลอดภัย ฉันเริ่มใช้การรับรองความถูกต้องกุญแจสาธารณะ / ส่วนตัวของ SSH กับตัวแทนเพื่อให้ฉันใส่รหัสผ่านของฉันวันละครั้งและให้ตัวแทนการส่งต่อกำจัดรหัสผ่านแจ้งเตือนตลอดทั้งวัน มันดีจริงๆ อย่างไรก็ตามบางระบบถูกล็อคดังนั้นฉันต้องใช้คำสั่ง "su" เพื่อไปยังบัญชีที่ใช้ร่วมกัน หาเรื่อง! กลับไปที่การป้อนรหัสผ่านตลอดเวลา! มีข้อมูลที่ถูกบันทึกไว้เพียงพอกับการรับรองความถูกต้องของคีย์สาธารณะ / ส่วนตัวของ SSH หรือไม่ซึ่งฉันอาจมีโอกาสพอสมควรในการขอเปลี่ยนนโยบายเพื่ออนุญาตให้เข้าสู่ระบบจากระยะไกลไปยังบัญชีที่ใช้ร่วมกันได้ ฉันมีผู้ดูแลระบบดูใน / var / log / secure และเพิ่งบอกว่าได้รับอนุญาตให้ใช้รหัสสาธารณะสำหรับบัญชีผู้ใช้จากที่อยู่ IP เฉพาะ ไม่ได้บอกว่าใครเป็นกุญแจสาธารณะหรือใครเป็นกุญแจส่วนตัวของใครในการตรวจสอบสิทธิ์

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