Quiero colocar un archivo de script en la raíz de otra máquina. aquí está mi comando de terminal
scp /var/www/html/script.sh [email protected]:script.sh
pide contraseña de root. Ingreso la contraseña de root correcta pero dice
Permission denied, please try again.
¿Alguien puede ayudar?
Respuesta1
De forma predeterminada, openssh denegará cualquier intento de inicio de sesión como root. Sin embargo, esto se puede permitir modificando /etc/ssh/sshd_config
en el lado del servidor.
Asegúrese de que esta línea esté configurada como sí y no comentada:
PermitRootLogin yes
Y luego recarga tu sshd.
Sin embargo, la configuración anterior no es una buena práctica de seguridad. En su lugar, utilice el inicio de sesión con clave pública.
la línea de configuración debería ser:
PermitRootLogin without-password
.
En la máquina de origen para generar la clave, siga el asistente:
ssh-keygen -t rsa
El comando anterior creará
.ssh/id_rsa.pub
y.ssh/id_rsa
contendrá un par de claves públicas y privadas. Debe copiar.ssh/id_rsa.pub
el contenido en la máquina de destino/root/.ssh/authorized_keys
. Cree el directorio y el archivo si no existen y asegúrese de que la propiedad de las claves_autorizadas sea600
.Ahora intente con scp, le pedirá la contraseña que ingresó en el paso 1.
Respuesta2
Suponiendo que tiene acceso sudo sin contraseña, lo siguiente debería funcionar:
$ echo "My test file" > test
$ scp test [email protected]:/tmp/
test
$ ssh [email protected] "sudo mv /tmp/test /"
$ ssh [email protected] "cat /test"
My test file
- Cree un archivo de prueba.
- Copie el archivo al directorio temporal.
- Mueva el archivo al directorio raíz.
- Pruebe que el archivo esté en el directorio raíz.