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

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

2
Windows 10 ssh ปิดการใช้งานการตรวจสอบรหัสผ่านหรือไม่
Windows 10 เพิ่งเพิ่ม OpenSSH เป็นคุณลักษณะเสริมของ Windows ฉันพบไฟล์ปรับแต่ง C: \ Windows \ System32 \ OpenSSH \ sshd_config และให้สิทธิ์ตัวเองในการแก้ไข นี่คือไฟล์ที่ฉันมี: # $OpenBSD: sshd_config,v 1.84 2011/05/23 03:30:07 djm Exp $ # This is the sshd server system-wide configuration file. See # sshd_config(5) for more information. # This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin # …
10 ssh  windows-10 

4
เชลล์สคริปต์จากเครื่องโลคัลเพื่อรันคำสั่งในเครื่องรีโมตจากนั้นดำเนินการต่อบนเครื่องโลคัล
ปัญหาคือ: ฉันต้องการคัดลอกไฟล์จากเครื่องระยะไกล ฉันกำลังมองหาวิธีในการเขียนเชลล์สคริปต์ที่จะเชื่อมต่อกับเครื่องระยะไกลรับตำแหน่งของไฟล์ที่เก็บไว้เมื่อฉันได้รับการยกเลิกการเชื่อมต่อตำแหน่งจากเซิร์ฟเวอร์ระยะไกลและใช้ scp จากภายในเครื่องท้องถิ่นที่มีตำแหน่งที่ได้รับไป คัดลอกไฟล์ โดยเฉพาะฉันต้องการทราบว่าจากสคริปต์ฉันจะเชื่อมต่อกับเครื่องระยะไกลทำงานในเครื่องนั้น ตัดการเชื่อมต่อและดำเนินการต่อภายในเครื่อง
10 ssh  sh 

2
ส่งต่อการเชื่อมต่อ ssh ไปยังคอนเทนเนอร์นักเทียบท่าตามชื่อโฮสต์
ฉันเข้าสู่สถานการณ์ที่เฉพาะเจาะจงมากและแม้ว่าจะมีวิธีอื่นในการทำเช่นนี้ฉันก็รู้สึกหมกมุ่นอยู่กับสิ่งนี้และต้องการหาวิธีที่จะทำสิ่งนี้: พื้นหลัง สมมติว่าฉันมีเซิร์ฟเวอร์ที่ใช้งานบริการหลายอย่างที่ซ่อนตัวอยู่ในคอนเทนเนอร์นักเทียบท่าแยก เนื่องจากบริการเหล่านั้นส่วนใหญ่เป็น http ฉันจึงใช้พร็อกซี nginx เพื่อแสดงโดเมนย่อยเฉพาะสำหรับแต่ละบริการ ตัวอย่างเช่นเซิร์ฟเวอร์โหนดกำลังทำงานบนคอนเทนเนอร์นักเทียบท่าที่มีพอร์ตที่80ผูกไว้127.0.0.1:8000กับโฮสต์ ฉันจะสร้าง vhost ใน Nginx ที่ผู้รับมอบฉันทะคำขอทั้งหมดเพื่อmyapp.mydomain.com วิธีการที่ภาชนะนักเทียบท่าที่ไม่สามารถเข้าถึงได้จากภายนอกยกเว้นผ่านhttp://127.0.0.1:8000myapp.mydomain.com ตอนนี้ฉันต้องการเริ่มต้นตู้คอนเทนเนอร์gogs dockerในลักษณะที่gogs.mydomain.comชี้ไปที่ตู้ gogs ดังนั้นฉันจึงเริ่มต้นภาชนะ gogs นี้ด้วยพอร์ตที่8000ผูกไว้127.0.0.1:8001กับโฮสต์ และไซต์ nginx proxying ร้องขอไปgogs.mydomain.comยังhttp://127.0.0.1:8001และทำงานได้ดี ... อย่างไรก็ตาม, gogs เป็น git container, ฉันยังต้องการเข้าถึง repos อย่างเช่นผ่าน, git@gogs.mydomain.com:org/repoแต่มันไม่ทำงานกับการตั้งค่าปัจจุบัน วิธีหนึ่งที่จะทำให้การทำงานที่จะมีการผูกพอร์ต22ของภาชนะไปยังท่าเรือ0.0.0.0:8022ในพื้นที่และจากนั้น URL SSH git@gogs.mydomain.com:8022/repoคอมไพล์สามารถเป็นสิ่งที่ชอบ (ดูเหมือนจะไม่ทำงานเมื่อฉันกดไปที่ต้นกำเนิดที่มี uri เช่นนั้น git ต้องการรหัสผ่านสำหรับผู้ใช้gitบนgogs.mydomain.com- แทนgogs.mydomain.com:8022- แต่นั่นอาจเป็นสิ่งที่ฉันทำผิดและอยู่นอกขอบเขตสำหรับคำถามนี้อย่างไรก็ตาม ฉันจะขอบคุณการวินิจฉัยใด ๆ เช่นกัน) ปัญหา …

2
SSH: ปลอดภัยสำหรับลูกค้าที่จะโฮสต์คีย์ RSA ส่วนตัวหรือไม่
ปลอดภัยหรือไม่ที่จะสร้างคู่กุญแจสาธารณะ / ส่วนตัวบนเซิร์ฟเวอร์เพิ่มกุญแจสาธารณะไปยังรายการที่ได้รับอนุญาตจากนั้นคัดลอกคีย์ส่วนตัวไปยังไคลเอนต์แต่ละตัวดังที่อธิบายไว้ที่นี่ ( http://www.rebol.com/docs/ ssh-auto-login.html ) ถ้าคุณรักษาการควบคุมลูกค้าแต่ละรายไว้อย่างถาวร (เช่นผู้ใช้เดียวกันคอมพิวเตอร์หลายเครื่อง) ขั้นตอนทั่วไปคือการสร้างคู่คีย์สาธารณะ / ส่วนตัวบนไคลเอนต์แล้วเพิ่มคีย์สาธารณะของลูกค้าไปยังรายการ authorized_keys บนเซิร์ฟเวอร์ตามที่อธิบายไว้ที่นี่ ( http://www.linuxproblem.org/art_9.html ) ด้วยวิธีนี้หากคุณมีคอมพิวเตอร์ไคลเอนต์หลายเครื่องแต่ละเครื่องจะต้องต่อกันกับรายการ authorized_keys และดูแลรักษาตามเวลา
10 ssh  ssh-keys 

1
autossh ไม่ฆ่า ssh เมื่อลิงก์ลง
ฉันได้เริ่มต้นการตรวจสอบอัตโนมัติด้วยเวลาโพล 30 วินาที: AUTOSSH_POLL=30 AUTOSSH_LOGLEVEL=7 autossh -M 0 -f -S none -f -N -L localhost:34567:localhost:6543 user1@server1 และมันก็ทำงานได้ดี: Sep 5 12:26:44 serverA autossh[20935]: check on child 23084 Sep 5 12:26:44 serverA autossh[20935]: set alarm for 30 secs แต่ถ้าฉันถอดสายเคเบิลเครือข่ายทางกายภาพหมายถึงอุโมงค์ไม่สามารถทำงานได้อีกต่อไปการตรวจสอบอัตโนมัติจะไม่ฆ่า ssh daemon ทำไม? ฉันเข้าใจว่า autossh ไม่สามารถทำอะไรได้หากลิงก์ไม่ทำงาน แต่ในความคิดของฉันฉันควรลองทำสิ่งต่อไปนี้: ตรวจสอบกระบวนการ child ssh ( check on …
10 networking  ssh 

2
เหตุใดเซสชัน ssh ของฉันจึงหยุดชั่วครู่ [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับข้อบกพร่องของเซิร์ฟเวอร์ ปิดให้บริการใน3 เดือนที่ผ่านมา ขออภัยหากนี่ไม่ใช่สถานที่ที่เหมาะสมสำหรับการถามคำถามนี้ ฉันต้องการ ssh ไปยังเซิร์ฟเวอร์ต่าง ๆ เป็นประจำ ตอนนี้จากเครื่องที่บ้านของฉัน (ลินุกซ์มิ้นท์) เมื่อฉันเชื่อมต่อผ่าน ssh หลังจากที่ไม่มีการใช้งานบางเวลาเชลล์ ssh ของฉันค้างและไม่มีทางที่จะเอากลับคืนมาได้ สิ่งเดียวที่ฉันทำได้คือ '~.' อย่างน้อยก็ให้เปลือกเริ่มต้นของฉันกลับมา เมื่อฉันเข้าสู่ระบบจากที่ตั้งอื่นไปยังเซิร์ฟเวอร์เดียวกันไม่มีปัญหา นั่นอาจเป็นปัญหากับ ISP ของฉันหรือไม่ ฉันจะตรวจสอบเพิ่มเติมเกี่ยวกับอันนี้ได้อย่างไร มันน่ารำคาญจริง ๆ เนื่องจากฉันต้องสร้างการเชื่อมต่อ ssh อีกครั้งหลังจากการแช่แข็งนำทางกลับไปยังตำแหน่งที่ฉันอยู่และทำงานต่อ ขอบคุณ
10 ssh 

4
วิธีแก้ไขข้อผิดพลาดแพ็คเก็ตที่เสียหายสำหรับกับ rsync สำหรับ (ค่อนข้าง) ไฟล์ขนาดใหญ่?
กำลังพยายามอัพเดตไฟล์บนเซิร์ฟเวอร์ด้วยrsyncคำสั่ง: rsync -ravq -e "ssh -o ConnectTimeout=2 -o ServerAliveInterval=2 -ServerAliveCountMax=2" --delete ./local_dir user@$SERVER:/dest_dir corrupt packet ข้อผิดพลาดยังคงมีอยู่โดยเฉพาะ: rsync: writefd_unbuffered failed to write 4092 bytes to socket [sender]: Broken pipe (32) rsync: connection unexpectedly closed (11337 bytes received so far) [sender] rsync error: unexplained error (code 255) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [sender=3.0.9] นี่อาจเกี่ยวข้องกับการsshหมดเวลาเนื่องจากดูเหมือนว่าจะเกิดขึ้นกับไฟล์ขนาดใหญ่ นอกจากนี้ฉันยังได้รับการหมดเวลาใช้ …

4
/var/log/auth.log ไม่ได้บันทึกล้มเหลวพยายาม ssh
ฉันพยายามจะล้มเหลว (ชื่อผู้ใช้รหัสผ่านหรือทั้งสองอย่างไม่ถูกต้อง) บนเซิร์ฟเวอร์ของฉัน ฉันเปลี่ยน / etc / ssh / sshd_config จาก # Logging SyslogFacility AUTH LogLevel INFO ถึง # Logging SyslogFacility AUTH LogLevel VERBOSE และได้ลองหลายครั้งหลายครั้งกับผู้ใช้ที่มีอยู่และไม่ใช่ผู้ใช้ด้วยรหัสผ่านแบบสุ่มดังนั้นจึงล้มเหลว เมื่อตรวจสอบ /var/log/auth.log ไม่มีอะไรปรากฏขึ้นและมันว่างเปล่าทั้งหมด ฉันกำลังคิดถึงอะไร กระบวนการอื่น ๆ จำเป็นต้องมีการติดตั้งและใช้งานบนระบบของฉันด้วยหรือไม่ ฉันใช้ Ubuntu ความช่วยเหลือหรือคำแนะนำใด ๆ ในเรื่องนี้เป็นมากกว่าการต้อนรับ ขอบคุณ

2
วิธีการระบุหลายชื่อโฮสต์ / พอร์ตรวมกันใน. ssh / config
ฉันมีโน้ตบุ๊กและเวิร์คสเตชั่นหลายตัวที่ดึงและดันจากที่เก็บ Mercurial หลายแห่งบนเซิร์ฟเวอร์ส่วนกลาง ฉันมักจะใช้.ssh/configเพื่อตั้งชื่อแทน: Host repo-server HostName server.somedomain User user143 IdentityOnly yes IdentityFile ~/hgkey Port 156 ... และตัวเลือกเพิ่มเติมคุณจะได้รับแนวคิด จากนั้นฉันสามารถทำhg push ssh://repo-server//hgroot/someprojectที่เก็บข้อมูลโลคัลทุกแห่งและฉันสามารถเปลี่ยนที่อยู่เซิร์ฟเวอร์และพอร์ตได้ในที่เดียว สำหรับเวิร์คสเตชั่นนี่ใช้งานได้ดี แต่โน้ตบุ๊กสามารถเข้าถึงเซิร์ฟเวอร์ได้จากภายในเครือข่ายหรือจากภายนอกโดยใช้ที่อยู่อื่นและพอร์ตอื่น มีวิธีใดบ้างที่ฉันสามารถระบุการรวมกันหลายชื่อโฮสต์ / พอร์ตเพื่อให้ SSH ลองตามลำดับโดยอัตโนมัติหรือไม่ ด้วยวิธีนี้ผู้ใช้สามารถผลักและดึงโดยไม่ต้องกังวลเกี่ยวกับที่อยู่ที่ถูกต้อง (แน่นอนว่าการใช้ VPN จะเป็นทางออกที่ถูกต้องที่สุด)
10 ssh 

2
ไม่สามารถ ssh ในฐานะผู้ใช้ tty-less
ฉันพยายามเรียกใช้คำสั่งเดียวโดยเรียกใช้ ssh (โดยใช้การรับรองความถูกต้องของคีย์) จากผู้ใช้ที่ไม่มี tty (ผู้ใช้ apache เซิร์ฟเวอร์ของฉันกำลังทำงานอยู่) และได้รับผลลัพธ์ต่อไปนี้: OpenSSH_5.9p1, OpenSSL 1.0.0g 18 Jan 2012 Pseudo-terminal will not be allocated because stdin is not a terminal. debug1: Reading configuration data /etc/ssh/ssh_config debug1: Connecting to localhost [::1] port 54367. debug1: Connection established. debug1: identity file nonpublic/id_rsa type 1 debug1: identity file …
10 linux  ssh 

3
หน้าจอ X11 ที่ส่งต่อ SSH จาก Linux ไปยัง Mac หายไปหลังจากเวลาผ่านไป
ฉันมีปัญหาใหม่และก่อกวนด้วยการส่งต่อการเชื่อมต่อ X11 ของฉันเมื่อเข้าสู่ระบบจาก Mac (10.7.2) ถึง Linux (Ubuntu 8.04) ฉันไม่มีปัญหาในการใช้ ssh -X เพื่อล็อกอินเข้าสู่เครื่องระยะไกลและเริ่มต้นแอปพลิเคชันที่ใช้ X11 จากเชลล์นั้น สิ่งที่เพิ่งเริ่มเกิดขึ้นคือการร้องขอเพิ่มเติมของแอพพลิเคชั่น X11 จากเชลล์เดียวกันหลังจากผ่านไปครู่หนึ่ง (ตามลำดับของชั่วโมง) ไม่สามารถเริ่มทำงานได้เนื่องจากการแสดงผลที่ส่งต่อไปจะถูกบล็อก (ฉันเข้าใจ) เมื่อพยายามเริ่ม xterm เช่นฉันได้รับข้อความปกติเกี่ยวกับการตั้งค่า DISPLAY ที่ไม่ดีเช่น: ข้อผิดพลาด xterm Xt: ไม่สามารถเปิดการแสดง: localhost: 10.0 แต่แอปพลิเคชั่น X11 ที่ฉันเริ่มต้นทันทีเมื่อฉันลงชื่อเข้าใช้ยังคงทำงานได้ปกติโดยใช้จอแสดงผลเดียวกันนั้น (localhost: 10.0) เพียงแค่ว่ามันเริ่มต้นก่อนหน้านี้ ฉันเปิดการบันทึก verbose ใน sshd_config และฉันเห็นสิ่งนี้ในไฟล์ /var/log/auth.log เพื่อตอบสนองต่อความพยายามในการเริ่มต้น xterm ที่ล้มเหลว: sshd [22104]: ช่อง …
10 ssh  mac-osx  x11  display 

3
มีลูกค้า javascript ssh หรือไม่?
ฉันหมายถึงไคลเอนต์จาวาสคริปต์ที่ใช้ซ็อกเก็ต HTML5 และไม่จำเป็นต้องติดตั้งเพียงเปิดไฟล์ js เดียวในเบราว์เซอร์ เป็นไปได้ไหมที่จะเขียนไคลเอนต์ดังกล่าวเลย?

6
พยายามติดตั้ง chroot'd rsync
ฉันพยายามตั้งค่าเซิร์ฟเวอร์สำรอง ฉันต้องการchrootผู้ใช้แต่ละคน (ลูกค้า) ไปยังไดเรกทอรีบ้านและอนุญาตให้ใช้sftpและrsyncเท่านั้น ฉันค้นพบอย่างรวดเร็วว่าฉันไม่ใช่คนเดียวที่พยายามทำสิ่งนี้และฉันพบแนวทางนี้และปฏิบัติตาม ดังนั้นตอนนี้ฉันมีผู้ใช้ chroot ที่มี sftp เท่านั้น จากนั้นฉันก็พบว่า rsync ต้องการ ssh เพื่อวางไข่เองบนเครื่องอื่นและ sftp นั้นไม่เพียงพอ การให้ผู้ใช้แต่ละคนเข้าสู่ระบบ ssh เป็นสิ่งที่ฉันต้องการหลีกเลี่ยงตั้งแต่แรก ทุกคนคิดวิธีแก้ปัญหาที่เป็นไปได้บ้างไหม? ขอบคุณ, เครื่องหมาย
10 ssh  backup  rsync  sftp  chroot 

4
เรียกใช้งานโปรแกรมทุกครั้งที่มีคนล็อกอินด้วย SSH ลงในกล่อง Linux
ฉันมีเซิร์ฟเวอร์ SSH ขนาดเล็กและฉันต้องการเขียนสคริปต์เพื่อให้ทำงานทุกครั้งที่มีคนลงชื่อเข้าใช้ผ่าน SSH ตอนนี้ฉันจะไปเกี่ยวกับที่ได้อย่างไร ฉันต้องการให้สคริปต์ทำงานทุกครั้งที่มีใครลงชื่อเข้าใช้และฉันต้องเข้าถึงชื่อผู้ใช้อย่างน้อยของผู้ที่เข้าสู่ระบบและที่อยู่ IP ที่บุคคลนั้นลงชื่อเข้าใช้ ฉันคิดเกี่ยวกับการใช้/etc/bash.bashrcแต่นั่นเป็นทางออกที่ดีใช่ไหม ตัวอย่างเช่นมีวิธีที่ผู้ใช้สามารถปิดการใช้งานและปิดการใช้งานสคริปต์ของฉันหรือไม่ ถ้าใช่ตัวเลือกอื่นของฉันคืออะไร ขอบคุณ
10 linux  bash  ssh 

1
TCP / IPv6 thru ssh tunnel
ฉันสงสัยว่าจะรับส่งข้อมูลช่องสัญญาณ tcp / ipv6 ผ่านช่องสัญญาณ ssh / ipv4 (การเชื่อมต่อ ptp) อย่างไร เป็นไปได้ไหม? ฉันจะบรรลุสิ่งนั้นได้อย่างไร
10 linux  ssh  ipv6 

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