Puncte:0

înlocuirea comenzii nu funcționează când este emisă din ssh

drapel km

Am un vps Ubuntu la care mă conectez de pe laptopul meu care rulează și Ubuntu.

Când fac ssh root@server pe serverul meu, pot rula cu succes următoarea comandă:

root@server:~# wg set wg0 peer $(cat /etc/wireguard/clients/guard001_pub) elimina

dar când nu vreau să mă autent și vreau doar să rulez comanda de la distanță, primesc o eroare de refuzare a permisiunii, care nu înțeleg de ce. Deoarece fișierul este deținut de root și are toate permisiunile rwx.

username@mymachine:~$ ssh root@server "wg set wg0 peer $(cat /etc/wireguard/clients/guard001_pub) remove"

da urmatoarea eroare:

cat: /etc/wireguard/clients/guard001_pub: Permisiune refuzată
Cheia nu are lungimea sau formatul corect: „elimină”

Poate cineva să spună de ce se întâmplă acest lucru și care este cea mai bună soluție?

Puncte:0
drapel hr

Pentru că ați înconjurat comanda cu ghilimele duble, $(cat /etc/wireguard/clients/guard001_pub) este evaluat de dvs local coajă, înainte de ssh comanda este rulată.

De la local cat /etc/wireguard/clients/guard001_pub eșuează, înlocuirea comenzii locale are ca rezultat un șir gol și comanda de la distanță devine

wg set wg0 peer remove

astfel încât elimina este trecut ca cheie.

În schimb, utilizați ghilimele simple:

ssh root@server „wg set wg0 peer $(cat /etc/wireguard/clients/guard001_pub) remove”

sau poate mai bine

ssh root@server 'wg set wg0 peer "$(cat /etc/wireguard/clients/guard001_pub)" remove'

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.