如何设置SSH客户端端口

时间:2020-05-25 08:42:03

标签: ssh

我的问题就像下面的

SSH session - fixed port on the client side

是否有tcp-client:1234 ------> tcp-server-ssh:22之类的可用解决方案

1 个答案:

答案 0 :(得分:0)

我已修复它可以编译openssh,我使用版本openssh-portable-V_8_3_P1

  1. 添加int options.bind_port

  2. 修复main()

char myaddress[100]={};
.....
    case 'b':
        sscanf(optarg,"%[^:]:%d",myaddress,&options.bind_port);         
        options.bind_address = myaddress;
        break;
  1. 在行sshconnect.c上固定430
    ((struct sockaddr_in*)&bindaddr)->sin_port= htons(options.bind_port);
    if (bind(sock, (struct sockaddr *)&bindaddr, bindaddrlen) != 0) {
        error("bind %s: %s", ntop, strerror(errno));
        goto fail;
    }
  1. ./ configure && make
  2. ln -s .ssh .myssh
  3. 尝试
./myssh  -b 192.168.1.153:5566  root@xxx.xyz
  1. 然后您可以看到
vmuser@ubuntu:~$ lsof | grep "myssh.*TCP"
myssh     110179                 vmuser    3u     IPv4            4018314      0t0        TCP ubuntu:5566->myother_ubuntu:ssh (ESTABLISHED)
myssh     110187                 vmuser    3u     IPv4            4017137      0t0        TCP ubuntu:5588->myother_ubuntu:ssh (ESTABLISHED)