How to pass password to scp? (without root) - ssh

I need to download a file over SSH (scp) from Ubuntu machine A to ubuntu machine B.
I don't have a root access on the machine from I am downloading the file (machine B), so I cannot install anything like sshpass etc...Just clear Ubuntu.
I need to use password authentication because the command will be called inside TeamCity plugin which does not support downloading over SSH (just uploading) or plain bash. I don't have priviledge to read SSH private keys from command line.

Finally, I found that Docker is a solution for it. I was lucky that docker is installed on this machine and I can install anything (including scp) inside docker even if I am not root on the host machine.

Related

Ubuntu WSL2 could not resolve hostname for GIT clone

I have gitlab local repository and VPN to connect with it. I already installed WSL and it worked well before with clone repository (I've done add ssh pub). After updating kernel from WSL and change to WSL2. I cannot clone repository anymore and it returns:
ssh: Could not resolve hostname gitlab.local.id: Name or service not
known
I've done creating /etc/wsl.conf file
[network]
generateResolvConf = true
and /etc/resolv.conf file
nameserver 8.8.8.8
NOTE:
I can clone repo through GIT Bash
Restart the WSL, terminal and even reboot laptop. But still cannot clone the repository through SSH. I followed others suggestion but still no luck. Maybe your suggestion may help. many thanks!
It took me almost 3 days to try others workaround to solve it and it's just solved by re-installed the updated distro. I have no clue why origin resolv.conf (generated by WSL) before was gone after updated to WSL2 and suddenly does not resolve any hostname.
After re-install distro and re-added new SSH key to gitlab, WSL generate new resolv.conf file and git back to works again.
UPDATE:
As per request from #Philippe, The new resolve.conf:
# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to /etc/wsl.conf:
# [network]
# generateResolvConf = false
nameserver 172.19.144.1
This configuration comes automatically and without wsl.conf at /etc/ directory.
NOTES:
Please make sure you working on the right WSL version before you doing something on your distro or you will probably ended up with the same problem above.
Comment form #torek above was right. Git has nothing to do with the problem, but the problem causing git and other servername does not resolve. My problem begun with updating the kernel then change the wsl version in the middle of working on current distro.

Cannot connect to Node Express server

So I created an Express server with express generator. When I run the server on my laptop's Ubuntu for Windows, it starts up fine. Now when I run curl localhost:3000 in a separate terminal, I get the message curl: (7) Failed to connect to host localhost port 3000: Connection refused.
The strange thing is that when I take that exact same server and run it on my Desktop's Ubuntu for Windows, running the curl command above works fine.
Here is where it gets even stranger, when I run the server on git bash on my laptop, the curl command also works fine. Note, the curl command will work fine in either git bash or WSL if the server is running on git bash.
I have no clue why the server will not work properly on my laptop's Ubuntu for Windows. I thought WSL just uses Window's network, so why would running the server on git bash work properly, but not on WSL?
Googling this has not given me much help. I have uninstalled WSL and reinstalled. I have also tried running all the commands with sudo. None of that worked.

dpkg sent over SSH on Mac App not working

So I am facing a very strange peculiarity. I am trying to run dpkg on a remote server via SSH. My code works perfectly if I click Run through Xcode, but if I click Build > Archive then Export as a Mac Application, all SSH commands sent to the server work, other than "dpkg". Any ideas why this might happen?
Apparently, after many days of facing that issue, I tried installing via dpkg a Deb that was already located on my server and it worked. What's even more strange is that while scp would transfer the file, dpkg would just not use it! What made the trick was getting the file via curl and then running dpkg normally. No idea why that's the case though, as both Deb files had the same owner, group and permissions. And both were running by root, so it wasn't a permission error.

Boot2Docker start up fails in windows

I am trying to start docker from winodws7 enterprise edition.
boot2docker start
results
Waiting for VM and Docker daemon to start...
..........................................................................oooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
Started.
Trying to get Docker socket one more time
Error requesting socket: exec: "ssh": executable file not found in %PATH%
Docker client does not run on Windows for now. Please use
"boot2docker" ssh
to SSH into the VM instead.
I tried this link. But All answers doesn't help me. I have re-installed the boot2docker and powered off boot2docker-vm in Virtual machine and restarted. Virtualisation is enabled in my bios. My Sys has better capabilities.
Using 1.4.1 version.
Please Some Suggestions?
As boot2docker complained, you don't have ssh in your path. Please add ssh.exe into Windows path (it might not be visible, but boot2docker installation includes msys-git installation which includes ssh.exe, so you need to add Git installation directory in path, e.g.
c:\Program Files (x86)\Git\bin

Access Virtual Machine via PuTTY Using Built-in Command "vagrant ssh"

I have installed Vagrant, PuTTY, PuTTYgen and Virtual Box and I now want to
open a SSH connection to my virtual machine with the windows command prompt.
Every time I want to open the connection with the vagrant sshcommand I get this error:
vagrant ssh
`ssh` executable not found in any directories in the %PATH% variable. Is an
SSH client installed? Try installing Cygwin, MinGW or Git, all of which
contain an SSH client. Or use the PuTTY SSH client with the following
authentication information shown below:
I already know about the possibility to install "Git" to solve this problem!
I was wondering if its possible to use PuTTY in combination with the command vagrant ssh instead of OpenSSH!
For example:
With a batch file or something to ajust the syntaxes.
There is an official thread for Vagrant here which ended in no result AFAIR. But when googling for "vagrant putty" there seem to exist many plugins for Vagrant bringing that functionality, maybe through "hacks".
For reference: vagrant-multi-putty. Worked for me too on Windows after two simple commands: vagrant plugin install vagrant-multi-putty and vagrant putty (only for Vagrant 1.1 and newer),