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

SSH (Secure SHell) เป็นโปรโตคอลสำหรับการรันคำสั่งอย่างปลอดภัยบนคอมพิวเตอร์ระยะไกล ใช้แท็กนี้สำหรับคำถามเกี่ยวกับการกำหนดค่าการใช้และการแก้ไขปัญหาไคลเอ็นต์และซอฟต์แวร์เซิร์ฟเวอร์ SSH

1
รับรหัส SSH ส่วนตัวฉันจะกู้คืนกุญแจสาธารณะของฉันได้อย่างไร
ฉันทำid_rsa.pubแฟ้มหาย ฉันยังมีid_rsaไฟล์ของฉัน ฉันจะกู้คืนกุญแจสาธารณะจากกุญแจส่วนตัวได้อย่างไร (คำถามนี้เกิดขึ้นหลังจากssh-copy-idถูกรายงานว่า "ข้อผิดพลาด: ไม่พบตัวตน" ในขณะที่ssh-keygenรายงาน "/root/.ssh/id_rsa มีอยู่แล้ว" ls ~/.sshชี้ให้เห็นปัญหาว่ามีid_rsaแต่ไม่ใช่id_rsa.pubฉันพบวิธีแก้ปัญหา แต่ถูกฝังอยู่ที่ด้านล่าง ของการโพสต์แบบยาวบนฟอรัมการสนับสนุนของ Ubuntu)

2
จะกลับมาใช้งานการอัปเกรดความถนัดได้อย่างปลอดภัยหลังจากหมดเวลา SSH อย่างไร
ฉันเริ่มต้นaptitude dist-upgradeSSH บนเครือข่ายท้องถิ่นของฉัน ในบางครั้งเซสชั่นหมดเวลา แต่การอัพเกรดยังไม่เสร็จ (มันเหลือที่หนึ่งในบรรดาหน้าจอข้อตกลงการรับซอฟต์แวร์ - ฉันลืมอันที่หนึ่งดังนั้นฉันไม่รู้ว่าการอัพเกรดที่ฉันได้รับมาไกลแค่ไหน แต่ประเด็นก็คือ ตอนนี้มันไม่ได้ใช้งานรอให้ฉันยอมรับ) ฉันกลับไปที่เซิร์ฟเวอร์ของฉันแล้วเห็นว่ากระบวนการความถนัดยังคงทำงานอยู่ วิธีที่ปลอดภัยที่สุดที่จะดำเนินการคืออะไร? ฉันไม่ได้ใช้งานscreenดังนั้นจะมีวิธีใดบ้างที่จะเริ่มกระบวนการความถนัดที่กำลังดำเนินอยู่ต่อไป? ถ้าไม่เป็นวิธีที่ปลอดภัยที่สุดในการฆ่าและรีสตาร์ทมันคืออะไร?
10 ssh  apt  aptitude 

5
วิธีค้นหา ip ของ ssh HostName
มีวิธีง่ายๆในการดึงข้อมูล IP HostNameจาก ssh config บนบรรทัดคำสั่งหรือไม่? หลายครั้งที่ฉันต้องใช้scpและต้องการเชื่อมต่อกับเครื่อง แต่ฉันจำได้เพียงชื่อโฮสต์
10 command-line  ssh  scp 

1
ssh-agent เก็บข้อความรหัสผ่านของฉันหรือไม่?
เป็นไปได้หรือไม่ที่จะกำหนดวลีรหัสผ่านของกุญแจส่วนตัวssh-agent? ฉันกำลังคิดตามบรรทัดของใครบางคนที่มีสิทธิ์ใช้งานรูทพยายามค้นหาข้อความรหัสผ่านของฉันหลังจากที่ฉันเพิ่มคีย์ (ดังนั้นฉันจึงไม่ได้หมายถึงบางอย่างเช่นการล็อกคีย์ขณะพิมพ์รหัสผ่าน)
10 ssh  security  password 

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

3
การส่งต่อ X11 ผ่าน SSH หากการกำหนดค่าเซิร์ฟเวอร์ไม่อนุญาต
พิจารณาสถานการณ์ที่ฉันเข้าสู่ระบบผ่าน SSH จากเครื่อง A ไปยังเครื่อง B ฉันมี X เซสชันบนเครื่อง A และฉันต้องการเรียกใช้โปรแกรม X บน B ssh -X Bทำให้งานนี้โปร่งใส แต่จะเกิดอะไรขึ้นถ้าการกำหนดค่าเซิร์ฟเวอร์ขาดหายX11Forwarding yesไปฉันไม่ได้รับอนุญาตรูทบนเซิร์ฟเวอร์และผู้ดูแลระบบเซิร์ฟเวอร์ไม่สนใจอะไร เห็นได้ชัดว่าเป็นไปได้ที่จะส่งต่อการเชื่อมต่อ X11 เนื่องจากฉันสามารถถ่ายโอนสิ่งที่ฉันต้องการผ่านช่อง SSH ในความเป็นจริงถ้าเซิร์ฟเวอร์ X ภายในเครื่องอนุญาตการเชื่อมต่อ TCP ก็ง่ายเหมือนssh -R 6010:localhost:6000(จะถูกปรับสำหรับหมายเลขที่แสดง) กรณีทั่วไปที่เซิร์ฟเวอร์ X ภายในเครื่องอนุญาตการเชื่อมต่อซ็อกเก็ตได้เท่านั้น ฉันจะส่งต่อ X ได้อย่างสะดวกและปลอดภัยโดยมีข้อกำหนดขั้นต่ำของการติดตั้ง (โดยเฉพาะใน B) อย่างไร
10 ssh  xorg  xforwarding 

5
sh ไฟล์เริ่มต้นผ่าน ssh
ฉันมีคำสั่งที่สำคัญบางอย่างที่ฉันต้องเรียกใช้ก่อนที่เชลล์ sh จะเริ่มทำงาน สิ่งนี้จำเป็นสำหรับการส่งคำสั่ง SSH ในคำสั่ง SSH ( ssh host somecommand) และโปรแกรมอื่น ๆ ที่เรียกใช้คำสั่ง ในฉัน.profileฉันมีสิ่งนี้: ihammerhands@wreckcreations:~> cat .profile #specific environment and startup programs export PS1="\u@wreckcreations:\w> " export PYTHONPATH=~/python/lib/python2.4/site-packages export PATH=$PATH:~/bin:~/python/bin อย่างไรก็ตามสิ่งนี้ล้มเหลว: W:\programming\wreckcreations-site\test-hg>ssh name@host echo $PATH Enter passphrase for key '/home/Owner/.ssh/id_rsa': /usr/local/bin:/bin:/usr/bin สังเกตเห็นตัวเลือก PATH ที่หายไป ชื่อที่เหมาะสมสำหรับโปรไฟล์ sh คืออะไร? หมายเหตุ: ฉันไม่สามารถเข้าถึงรูทและไม่ต้องการให้สิ่งนี้ใช้กับผู้ใช้รายอื่น มีวิธีอื่นในการทำเช่นนี้หรือไม่? …
10 bash  ssh  shell  profile 

3
. ssh / config Host สามารถมีหลายชื่อโฮสต์ได้หรือไม่?
ฉันได้ตั้งค่าการส่งต่อ ssh และเราเตอร์พอร์ตดังนั้นฉันจึงสามารถ ssh ลงในคอมพิวเตอร์บนเครือข่ายภายในบ้านของฉันเมื่อฉันไม่ได้อยู่บ้าน ปัจจุบันฉันมีสองรายการใน.ssh/configไฟล์ของฉันรายการหนึ่งสำหรับเมื่อฉันอยู่ในเครือข่ายในบ้านของฉันและอีกรายการหนึ่งสำหรับเมื่อฉันไม่ได้: Host mycomputer HostName 192.168.X.X Host mycomputerathome HostName my.no-ip.dynamic ใช้งานได้ แต่ฉันสงสัยว่าฉันจะทำให้ตัวเองง่ายขึ้นได้ไหม ฉันหวังว่าจะมีวิธีในการแสดงรายการ HostName หลายรายการเช่นถ้ารายการแรกล้มเหลวจะกลับไปเป็นรายการที่สอง: Host mycomputer HostName 192.168.X.X HostName my.no-ip.dynamic เพื่อที่จะพยายามเชื่อมต่อกับโฮสต์บนเครือข่ายท้องถิ่นของฉันก่อนและหากยังไม่มีอยู่มันจะพยายามเชื่อมต่อโดยใช้ชื่อโฮสต์แบบไดนามิก no-ip ของฉัน ฉันได้ลองป้อนชื่อโฮสต์สองรายการ แต่การรันssh mycomputerบล็อกเพียงแค่ไม่ทำอะไรเลย ฉันได้ปิดการรับรองความถูกต้องของรหัสผ่านเพื่อให้ได้รับกุญแจดังนั้นการเชื่อมต่อกับคอมพิวเตอร์บนเครือข่ายท้องถิ่นโดยไม่ตั้งใจเมื่อฉันไม่ได้อยู่ในเครือข่ายในบ้านของฉันไม่ควรเสี่ยงต่อรหัสผ่านที่จะไปทุกที่ที่มันไม่ควร เป็นไปได้ไหมที่จะระบุชื่อโฮสต์สำรองเพื่อลองใช้หากชื่อแรกไม่ทำงาน
10 ssh 

4
หลายคำสั่งระหว่าง SSH ภายในเซสชัน SSH
ฉันมีเครื่องท้องถิ่นซึ่งควรจะทำเซสชั่น SSH ไปยังmasterเครื่องระยะไกลและจากนั้นอีกเซสชั่น SSH ภายในจากmasterไปยังแต่ละระยะไกลบางส่วนslavesแล้วดำเนินการ 2 คำสั่งคือการลบไดเรกทอรีที่เฉพาะเจาะจงและสร้างมันขึ้นมาใหม่ โปรดสังเกตว่าเครื่องโลคัลมี SSH ที่ไม่มีรหัสผ่านไปที่มาสเตอร์และมาสเตอร์มี SSH ที่ไม่มีรหัสผ่านไปยังทาส นอกจากนี้ชื่อโฮสต์ทั้งหมดเป็นที่รู้จักใน.ssh/configเครื่องท้องถิ่น / เครื่องต้นแบบและชื่อโฮสต์ของทาสอยู่ในเครื่องslaves.txtและฉันอ่านจากที่นั่น ดังนั้นสิ่งที่ฉันทำและทำงานคือ: username="ubuntu" masterHostname="myMaster" while read line do #Remove previous folders and create new ones. ssh -n $username@$masterHostname "ssh -t -t $username@$line "rm -rf Input Output Partition"" ssh -n $username@$masterHostname "ssh -t -t $username@$line "mkdir -p …
10 bash  ssh  amazon-ec2  read 

2
“ ช่อง 3: เปิดล้มเหลว: ไม่อนุญาตให้ดำเนินการ: เปิดล้มเหลว” เมื่อสร้างเซสชัน VNC บนอุโมงค์ SSH
ในการสร้างการเชื่อมต่อ VNC ผ่านการเชื่อมต่อช่องสัญญาณ SSH ฉันได้รับข้อผิดพลาด: channel 3: open failed: administratively prohibited: open failed ฉันพบว่าสิ่งนี้เกิดขึ้นเฉพาะเมื่อฉันไม่ได้ลงชื่อเข้าใช้โฮสต์ภายในเครื่องเนื่องจากเป็นusernameโฮสต์ที่ฉันพยายามเชื่อมต่อโดยใช้การเชื่อมต่อ VNC แบบช่องสัญญาณ อุโมงค์ SSH: ssh -p 6000 -L 5901:127.0.0.1:5901 username@192.168.0.2 การเชื่อมต่อ VNC: vncviewer localhost:1 ฉันได้ลองปรับการตั้งค่า/etc/ssh/sshd_configโดยใช้AllowTunnel yesและไม่มีการตั้งค่า (ฉันไม่ SSH เริ่มต้นใหม่หลังจากมีการเปลี่ยนแปลง: service ssh restart) แต่ข้อผิดพลาดออกไปถ้าผมมีช่วงท้องถิ่นทำงานในพื้นที่ห่างไกล (เช่นฉันเข้าสู่ระบบเป็นusernameท้องถิ่น.) เป็นคนอื่นได้เห็นพฤติกรรมนี้หรือไม่? ดูเหมือนว่าฉันควรจะสามารถเริ่ม VNC จากระยะไกลและเข้าถึงได้โดยไม่ต้องเข้าสู่ระบบในท้องถิ่นเช่นกัน

2
โปรแกรมทำงานใน SSH ที่เข้าถึง pulseaudio บนเครื่องที่ทำงาน
ฉันต้องการเรียกใช้โปรแกรมจากระยะไกล (ผ่าน ssh) แต่ด้วยเสียงไปที่เครื่องระยะไกลที่โปรแกรมทำงานจริง โดยปกติจะใช้งานกับ ALSA ได้ แต่ pulseaudio จะตรวจสอบตัวตรวจสอบสิทธิ์เซสชันก่อนที่จะอนุญาตการเชื่อมต่อจากไคลเอนต์ จะทำให้การตรวจสอบนี้เข้มงวดน้อยลงได้อย่างไร? local: $ ssh remote # remote is running pulseaudio and has sound hardware remote:$ paplay something.wav Connection failure: Connection refused pa_context_connect() failed: Connection refused remote:$ audacious something.mp3 # opens on local's X11 display pulseaudio: Failed to connect to server: …
10 ssh  pulseaudio 

6
สิทธิ์การเขียนของผู้ใช้ SFTP Chrooted
ฉันมีการตั้งค่าด้วยผู้ใช้ sftp เท่านั้น: Match Group sftponly ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no ฉันได้รับข้อความต่อไปนี้ใน secure.log ของฉัน: fatal: bad ownership or modes for chroot directory ด้วยคีย์เวิร์ดการจับคู่มีบางสิ่งที่เกี่ยวกับความปลอดภัยมาด้วย ... ไดเรกทอรีจะต้องเป็นของ root และไดเรกทอรีจะต้องเป็น chmod 755 (drwxr-xr-x) ดังนั้นจึงเป็นไปไม่ได้ที่ผู้ใช้จะมีสิทธิ์ในการเขียนไปยังโฟลเดอร์ถ้ามันสามารถเขียนได้เฉพาะผู้ใช้ root และตั้งค่าเป็นกลุ่มที่ไม่สามารถเขียนได้สำหรับกลุ่มเนื่องจากความปลอดภัยของ ssh มีคนรู้เกี่ยวกับการทำงานที่ดี?
10 linux  ssh  centos  sftp 

5
ข้อผิดพลาด `ไม่ได้ระบุโปรโตคอล 'เมื่อเรียกใช้จากเครื่องระยะไกลผ่าน ssh
ฉันมีสคริปต์เพียงเพื่อเรียกใช้แอปพลิเคชั่น Graphical (GUI) ดังต่อไปนี้ #cat gui.sh #!/bin/bash ./gui -display 127.0.0.1:0.0 เมื่อฉันเรียกใช้จากเครื่องท้องถิ่น ( ./gui.sh) มันทำงานได้อย่างสมบูรณ์แบบ แต่เมื่อฉันพยายามเรียกใช้จากเครื่องระยะไกลผ่าน ssh ฉันได้รับข้อผิดพลาดดังต่อไปนี้ [root@localhost]# ssh -f 192.168.3.77 "cd /root/Desktop/GUI/ && "./gui.sh"" No protocol specified gdm: cannot connect to X server 192.168.3.77:0.0 [root@localhost]# ฉันไม่รู้ว่าโพรโทคอลใดถามหรือฉันหายไปอะไร ฉันลองโดยตรงโดยเริ่มแอปพลิเคชันโดยไม่มีสคริปต์ [ ssh -f 192.168.3.77 "cd /root/Desktop/GUI/ && "./gui""] แต่ผลลัพธ์เหมือนกัน ฉันได้ลองชุดต่างๆเช่นssh -Y, ssh …
10 ssh  x11 

2
ไม่สามารถ ssh เข้าสู่โฮสต์ระยะไกลที่มีรูท, รหัสผ่านไม่ถูกต้อง
ฉันมีโฮสต์ระยะไกลก่อนหน้านี้ฉันสามารถใช้ ssh ด้วย root และรหัสผ่าน ssh root@remote_host หรือฉันจะใช้มันก่อนโดยใช้บัญชีผู้ใช้ทั่วไป ssh esolve@remote_host แล้วsu rootใส่รหัสผ่าน แต่วันนี้ทั้งสองวิธีรหัสผ่านของฉันไม่ถูกต้องเสมอเช่น [esolve@local esolve]$ ssh root@remote_host root@remote_host's password: Permission denied, please try again. หรือ [esolve@remote_host ~]$ su root Password: su: incorrect password ข้อมูลที่เกี่ยวข้อง: ฉันสามารถใช้รหัสผ่านนี้เพื่อเข้าสู่ระบบด้วยรูทหากฉันดำเนินการภายในเครื่องระยะไกลวันนี้ ฉัน ssh เป็นคือผ่าน VPN ทำไมสิ่งนี้ถึงเกิดขึ้น ฉันจะแก้ปัญหานี้ได้อย่างไร
10 ssh  password  root  vpn  su 

1
ฉันจะป้องกันการล็อกอินระยะไกลของ ssh ไม่ให้ทำลาย dbus ได้อย่างไร
ฉันใช้ openSUSE 11.3 ในเวิร์กสเตชันที่ทำงานภายใต้ KDE ฉันไม่สามารถเข้าถึงรูทได้ tcshเปลือกเริ่มต้นได้รับการตั้งค่าให้ เมื่อฉันเข้าสู่ระบบที่เวิร์กสเตชันของฉันและเข้าสู่ระยะไกลจาก MacBook ที่ใช้ OS X 10.6 โดยใช้sshดังนี้: ssh -X -C user@workstation.edu ทุกอย่างทำงานได้ดี อย่างไรก็ตามเมื่อฉันทำเสร็จแล้วฉันจะได้รับข้อผิดพลาด DBUS ในเซสชันเวิร์กสเตชันของฉันเมื่อใดก็ตามที่ฉันพยายามเปิดใช้งานสิ่งที่มี GUI รวมถึง แต่น่าเสียดายที่กล่องโต้ตอบออกจากระบบจากแผงแถบงาน ฉันเริ่มเบื่อstartkdeกับการออกจากระบบในสถานการณ์เหล่านี้ ออนไลน์ฉันได้พบคำแนะนำมากมายสำหรับการเชื่อมต่อกับเซสชัน dbus ที่มีอยู่โดยใช้ ssh แต่ฉันต้องการทำสิ่งที่ตรงกันข้ามให้ออกจากเซสชัน dbus ที่มีอยู่เดิมโดยไม่แตะต้องโดยเซสชันล็อกอินระยะไกล ssh ถ้าฉันทำ ssh -X -C user@workstation.edu dbus-launch konsole ใช้งานได้ดังนั้นจึงเป็นเพียงเชลล์การเข้าสู่ระบบแบบโต้ตอบที่ทำลาย dbus ฉันจะแก้ไขได้~/.cshrcอย่างไร เก็บไว้ในใจว่าผมไม่ได้มีสิทธิ์ในการแก้ไข/etc/cshrc, /etc/loginฯลฯ ฉันสามารถแสดงรายการเนื้อหาของไฟล์เหล่านี้ได้ถ้าจำเป็น ปรับปรุง: นี่คือไฟล์ tar …
10 ssh  kde  opensuse  tcsh  d-bus 

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