Không thể SSH sang VM


7

Tôi có một VM được cài đặt với một số hình ảnh đĩa tùy chỉnh (CentOS) từ công việc và tôi không thể SSH vào VM.

Đây là một số điều tôi đã thử:

[VM]$ ssh root@localhost
Password:

Tuyệt vời, ssh đang làm việc với loopback.

Nhưng khi tôi thử từ máy chủ:

~/VirtualBox VMs% ssh -v -v -v root@192.168.56.1
OpenSSH_5.9p1, OpenSSL 0.9.8y 5 Feb 2013
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.56.1 [192.168.56.1] port 22.
debug1: connect to address 192.168.56.1 port 22: Connection refused
ssh: connect to host 192.168.56.1 port 22: Connection refused

Nada. Ping hoạt động mặc dù.

trên VM, /etc/hosts.allow:

ssh:ALL:allow
sshd:ALL:allow

không có gì trong hosts.deny

EDIT:
Tôi cũng đã thực hiện:

service iptables save
service iptables stop
chkconfig iptables off

EDIT:
Tôi cũng thấy thông báo này trên VM trong / var / log / safe
liên kết với xung đột cảng
Nhưng tôi có thể ssh tốt từ VM sang VM, vì vậy đây không phải là vấn đề, phải không?

BIÊN TẬP: [VM]$ lsof -i :22 lsof -i: 22 đầu ra

Và tôi có, trong / etc / ssh / sshd_config

PermitRootLogin yes  

Và không thể đăng nhập với một tên người dùng riêng.

EDIT:
netstat -pant |grep :22 netstat -ntp |grep :22 netstat -pant và netstat -ntp
tôi nghĩ có lẽ điều này cũng hướng đến giải pháp IPv6?

EDIT:
Cấu hình hiện có cho vi /etc/sysctl.conf /etc/sysctl.conf

Cấu hình mới cho vi /etc/sysctl.conf /etc/sysctl.conf sau khi thay đổi tôi sau đó chạy các lệnh:

sysctl -w net.ipv6.conf.default.disable_ipv6=1
sysctl -w net.ipv6.conf.all.disable_ipv6=1
chkconfig ip6tables off
service sshd restart
init 6

Aaaaaaand, vẫn không có gì. Nhưng sau khi khởi động lại, có vẻ như ipv6 không bị tắt. Tôi nhận được thông báo lỗi tương tự. không thể ràng buộc cổng 22lsof -i :22vẫn đang nói loại IPv6: lsof -i: 22

EDIT: Đi sâu hơn vào lỗ thỏ IPv6.
http://ubfox-tutorials.com/2008/01/12/diseac-ssh-connections-on-ipv6/
Nó nói để xóa dòng nhận xét với #ListenAddress ::, có vẻ tanh, vì nó đã được nhận xét. Vì vậy, tôi đã làm, và không có gì.

Tuy nhiên, phần tiếp theo có một mẩu tin hữu ích: AddressFamily inet # IPv4 only Khi tôi thêm dòng này vào /etc/ssh/sshd_configvà thực hiện một vài lần khởi động lại liên tiếp, bây giờ tôi thấy rằng lỗi liên kết địa chỉ của tôi đã ngừng xuất hiện /var/log/secure / var / log / an toàn
và đầu ra lsof -i :22bây giờ hiển thị một loại IPv4! yay, tiến bộ!  lsof -i: 22 hiển thị IPv4 Phát triển!! Nhưng tiếc là tôi vẫn không thể kết nối. Tôi đã thử khởi động lại VM, mở các cửa sổ shell mới chỉ trong trường hợp có một số trạng thái bị treo xung quanh. Vẫn là câu trả lời tương tự.

~% ssh -vvv root@192.168.56.1
OpenSSH_5.9p1, OpenSSL 0.9.8y 5 Feb 2013
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.56.1 [192.168.56.1] port 22.
debug1: connect to address 192.168.56.1 port 22: Connection refused
ssh: connect to host 192.168.56.1 port 22: Connection refused

EDIT:
ok, vì vậy tôi đã quét arp và đang cố gắng tìm xung đột IP, nhưng bây giờ tôi thậm chí còn bối rối hơn. ifconfig cho thấy vboxnet0, là bộ điều hợp chỉ lưu trữ, có IP là 192.168.56.1. Đó là nơi tôi có IP đó để bắt đầu.

[local]~root# ifconfig  
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    options=3<RXCSUM,TXCSUM>
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
    inet 127.0.0.1 netmask 0xff000000 
    inet6 ::1 prefixlen 128 
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 7c:d1:c3:e8:b0:e9 
    inet6 fe80::7ed1:c3ff:fee8:b0e9%en0 prefixlen 64 scopeid 0x4 
    inet 10.6.12.46 netmask 0xfffffe00 broadcast 10.6.13.255
    media: autoselect
    status: active
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
    ether 0e:d1:c3:e8:b0:e9 
    media: autoselect
    status: inactive
vboxnet0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 0a:00:27:00:00:00 
    inet 192.168.56.1 netmask 0xffffff00 broadcast 192.168.56.255
vboxnet1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 0a:00:27:00:00:01 
    inet 192.168.57.1 netmask 0xffffff00 broadcast 192.168.57.255

Nhưng arp-scan -lchỉ cung cấp các tên miền bắt đầu bằng 10.6. *. *
Vì vậy, tôi đoán nó đang nhìn vào en0? Vì vậy, tôi đã cố gắng
arp-scan -I vboxnet0 -l

mba-108-on-03:~ root# arp-scan -I vboxnet0 -l
Interface: vboxnet0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.8 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
192.168.56.100  08:00:27:bc:ed:2f   CADMUS COMPUTER SYSTEMS

512 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.8: 256 hosts scanned in 1.301 seconds (196.77 hosts/sec). 1 responded

Tại sao bây giờ là 100. #bối rối

vboxnet1 không có gì

mba-108-on-03:~ root# arp-scan -I vboxnet1 -l
Interface: vboxnet1, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.8 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)

512 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.8: 256 hosts scanned in 1.302 seconds (196.62 hosts/sec). 0 responded

Tất cả các giao diện khác không hoạt động với arp-scan.

Vì vậy, hãy hiển thị các bản sao trên giao diện en0:

mba-108-on-03:~ root# arp-scan -I en0 -l |grep DUP
10.6.12.68  84:8e:0c:75:5b:f4   (Unknown) (DUP: 2)
10.6.12.64  ac:cf:5c:42:24:47   (Unknown) (DUP: 2)
10.6.12.76  88:53:95:6e:6a:af   (Unknown) (DUP: 2)

Những con số này không tương ứng với bất cứ điều gì có ý nghĩa đối với tôi. Sẽ thử khởi động lại, sau đó là gợi ý IPv6.

EDIT:
VM là một VirtualBox.
Bộ điều hợp 1:
Bộ điều hợp NAT 2: Bộ điều hợp chỉ lưu trữ, 'vboxnet0' cấu hình của bộ chuyển đổi1 cấu hình của bộ chuyển đổi2
Có ý tưởng nào không?


câu trả lời tại askubfox.com/questions/30080/ có thể giúp đỡ
mkc

Hãy thử gắn với cây cầu
Kevin

sử dụng "Bộ điều hợp cầu nối" sẽ có kết quả tương tự
Ken

2
Đầu ra của là lsof -i :22gì?
Chris Down

Trông giống như xung đột ip
SHW

Câu trả lời:


4

Ok, đây là cách cuối cùng nó đến với nhau:

Một trong những đồng nghiệp của tôi nhớ lại rằng hình ảnh đĩa "có thể không kích hoạt giao diện thứ hai." Vì VBox được thiết lập với NAT là bộ điều hợp một và chỉ lưu trữ dưới dạng bộ điều hợp hai, nên bạn cần phải thiết lập eth0 và eth1 trên ảnh đĩa. Chúng tôi không có.

Để làm điều này:

  • xác minh rằng ifconfig |lesskhông có cả eth0 và eth1 được liệt kê.
  • cd /etc/sysconfig/network-scripts/
  • cp ifcfg-eth0 ifcfg-eth1
  • cp ifcfg-eth0.bak ifcfg-eth1.bak
  • chỉnh sửa các tập tin và loại bỏ bất cứ điều gì với HWaddrvà thay đổi eth0 thành eth1 ifcfg-eth1
  • ifup eth1
  • sau đó chạy ifconfigvà lấy inet addreth1, một IP khác với tôi. Tôi hiện đang làm việc với 192.168.56.101.
  • làm init 6 để khởi động lại và đảm bảo rằng eth1 bắt đầu tự động ngay bây giờ.
  • đăng nhập từ máy chủ: ssh root@192.168.56.101

Không có chỉnh sửa nào trong câu hỏi trên thực sự là vấn đề của tôi, nhưng tất cả đều là thông tin gỡ lỗi tốt !!

Chúc mừng,
Ken


3

Có vẻ như ssh daemon đang sử dụng IPv6 (từ đầu ra của lsof -i :22) trong khi bạn đang cố gắng kết nối với IPv4. Hệ thống sẽ không biết cách định tuyến giao thông.

Tôi không chắc chắn về xung đột IP mà bạn đang thấy, nhưng sẽ đề nghị thử các cách sau:

  1. Vô hiệu hóa IPv6

    Thêm vào đây /etc/sysctl.conf

    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv6.conf.default.disable_ipv6 = 1
    

    Vô hiệu hóa IPv6 trên hệ thống đang chạy

    sysctl -w net.ipv6.conf.default.disable_ipv6=1
    sysctl -w net.ipv6.conf.all.disable_ipv6=1
    

    Vô hiệu hóa iptables cho IPv6

    chkconfig ip6tables off
    
  2. Khởi động lại một cái gì đó!

    Bạn sẽ phải khởi động lại sshdaemon hoặc HĐH để các thay đổi có hiệu lực.

    Vì vậy, khởi động lại sshd

    service sshd restart
    

    Hoặc tự khởi động lại hệ điều hành

    init 6
    

Đừng quên rằng bạn có thể không có tuyến đến máy chủ và có thể nghĩ về việc sử dụng chế độ bắc cầu để máy chủ DHCP của bạn có thể đưa ra một địa chỉ chính xác.

Bạn cũng có thể muốn đọc CentOS Wiki để biết thêm thông tin về việc tắt IPv6


Tôi đã thử các lệnh của bạn, nhưng chúng dường như không tắt ipv6. Tôi vẫn nhận được lỗi liên kết trong / var / log / safe và lsof -i: 22 vẫn đang báo cáo một loại ipv6
Ken

1
có sshd để báo cáo IPv4, nhưng nó không khắc phục được vấn đề. : \
Ken

tốt, đọc bài viết của bạn có vẻ như có hai vấn đề, định tuyến IPv4 và cấu hình bộ điều hợp ethernet. Tôi vui mừng bạn tìm thấy vấn đề.
Nathan McCoy

0

Kết nối của bạn bị từ chối vì bạn đang cố gắng ssh với tư cách là người dùng root? (Tôi có thể sai).

thử:

ssh <host_username>@<ipaddress> 

Bạn cũng đang sử dụng máy mac? Nếu vậy, hãy thử bật đăng nhập từ xa từ Tùy chọn hệ thống-> Chia sẻ kiểm tra Đăng nhập từ xa.


1
Tôi có PermitRootLogin có và tôi có thể đăng nhập như một tên người dùng khác mà tôi đã tạo.
Ken

bật đăng nhập từ xa? nhưng tôi không cố đăng nhập vào máy mac, máy chủ. Tôi đang cố gắng đăng nhập vào VM, được cấu hình dưới dạng hộp CentOS 5.4.
Ken

Ồ! Tôi xin lỗi, tôi đọc sai câu hỏi của bạn. Lỗi của tôi!
Gỗ
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.