2016-12-12 18 views
0

sshサーバでローカルからローカルへのポート転送を設定しようとしています。私の目標はローカルポート12345を同じローカルマシンのポート22に転送することです。それにもかかわらず、私はconnection refusedを得る。ここでsshローカルポートからローカルポートへの転送。接続が拒否されました

は、私が実行しているものです:

[email protected]:~$ ssh -L 12345:localhost:22 10.1.1.6 
[...] 
Authenticated to 10.1.1.6 ([10.1.1.6]:22). 
debug1: Local connections to LOCALHOST:12345 forwarded to remote address 127.0.0.1:22 
debug1: Local forwarding listening on ::1 port 12345. 
debug1: channel 0: new [port listener] 
debug1: Local forwarding listening on 127.0.0.1 port 12345. 
debug1: channel 1: new [port listener] 
debug1: channel 2: new [client-session] 
debug1: Requesting [email protected] 
debug1: Entering interactive session. 
debug1: Sending environment. 
debug1: Sending env LANG = en_US.UTF-8 

[email protected]:~$ ssh localhost -p 12345 
ssh: connect to host localhost port 12345: Connection refused 

[email protected]:~$ nc -v localhost 12345 
nc: connect to localhost port 12345 (tcp) failed: Connection refused 
nc: connect to localhost port 12345 (tcp) failed: Connection refused 

debug1: Connection to port 12345 forwarding to localhost port 22 requested. 
debug1: channel 3: new [direct-tcpip] 
debug1: channel 3: free: direct-tcpip: listening port 12345 for localhost port 22, connect from ::1 port 59785 to ::1 port 12345, nchannels 4 

それがすべてでは動作しませんし、私は私のローカルマシン上でまったく同じコマンドシーケンスでそれを行うために管理しているとして、それは、非常に奇妙です。


ここはリモートサーバーのチェックリストです。問題のためにグーグルながら、私はに調査した異なるもののカップル:

(1)netstatの出力:

[email protected]:~# netstat -tpln 
Active Internet connections (only servers) 
Proto Recv-Q Send-Q Local Address   Foreign Address   State  PID/Program name 
tcp  0  0 0.0.0.0:22    0.0.0.0:*    LISTEN  12791/sshd  
tcp6  0  0 :::22     :::*     LISTEN  12791/sshd  

(2)/etc/hosts.allow/etc/hosts.denyファイル:空

(3)設定ファイル:は私のローカルマシンとまったく同じです。 私はそれを短く保つために、いくつかのコメント行を削除しました。

[email protected]:~# cat /etc/ssh/sshd_config 
# Package generated configuration file 
# See the sshd_config(5) manpage for details 

# What ports, IPs and protocols we listen for 
Port 22 
# Use these options to restrict which interfaces/protocols sshd will bind to 
#ListenAddress :: 
#ListenAddress 0.0.0.0 
Protocol 2 
# HostKeys for protocol version 2 
HostKey /etc/ssh/ssh_host_rsa_key 
HostKey /etc/ssh/ssh_host_dsa_key 
HostKey /etc/ssh/ssh_host_ecdsa_key 
HostKey /etc/ssh/ssh_host_ed25519_key 
#Privilege Separation is turned on for security 
UsePrivilegeSeparation yes 

# Lifetime and size of ephemeral version 1 server key 
KeyRegenerationInterval 3600 
ServerKeyBits 1024 

# Logging 
SyslogFacility AUTH 
LogLevel INFO 

# Authentication: 
LoginGraceTime 120 
PermitRootLogin yes 
StrictModes yes 

RSAAuthentication yes 
PubkeyAuthentication yes 
#AuthorizedKeysFile  %h/.ssh/authorized_keys 

# Don't read the user's ~/.rhosts and ~/.shosts files 
IgnoreRhosts yes 
# For this to work you will also need host keys in /etc/ssh_known_hosts 
RhostsRSAAuthentication no 
# similar for protocol version 2 
HostbasedAuthentication no 
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication 
#IgnoreUserKnownHosts yes 

# To enable empty passwords, change to yes (NOT RECOMMENDED) 
PermitEmptyPasswords no 

# Change to yes to enable challenge-response passwords (beware issues with 
# some PAM modules and threads) 
ChallengeResponseAuthentication no 

# Change to no to disable tunnelled clear text passwords 
#PasswordAuthentication yes 

X11Forwarding yes 
X11DisplayOffset 10 
PrintMotd no 
PrintLastLog yes 
TCPKeepAlive yes 
#UseLogin no 

# Allow client to pass locale environment variables 
AcceptEnv LANG LC_* 

Subsystem sftp /usr/lib/openssh/sftp-server 
UsePAM yes 

2つ目:

[email protected]:~# cat /etc/ssh/ssh_config 

Host * 
SendEnv LANG LC_* 
HashKnownHosts yes 
GSSAPIAuthentication yes 
GSSAPIDelegateCredentials no 

は最後に、-Lフラグに私は、無駄にまったくをlocalhost[::1]10.1.1.6(ルーティング可能なIP)、127.0.0.1を使用していました。

+0

これは、 ":"の先頭に ":"を追加した場合にのみ機能しますので、次のようになります:me @ myHost:〜$ ssh -L:12345:localhost:22 10.1.1.6 – valentt

答えて

0

問題を解決しました。それは私自身のせいで、ローカルポートフォワーディング-Lとリモートポートフォワーディング-Rを完全に混同していました。したがって、最初は何の問題もありませんでした。

私が書くときにことを考え出し:

[email protected]:~$ ssh -L 12345:localhost:22 10.1.1.6 

をそれは10.1.1.6を転送し、そこからリモートホストが10.1.1.6:22に転送しますmyHostのローカルポート12345です。

したがって、[email protected]:~$ ssh localhost -p 12345を入力すると、明らかに何もしませんが、myHost:12345が最終的remoteHost:22に転送されるよう[email protected]:~$ ssh localhost -p 12345を入力すると、ssh接続を開始します。

+0

あなたのコマンドは次のようになります:me @ myHost:〜$ ssh -L:12345:localhost:22 10.1.1.6 – valentt

関連する問題