Puncte:0

Înțelegerea rezultatelor lui Cron

drapel us

Am probleme în a înțelege rezultatul cron. Să presupunem că am un cronjob care rulează la fiecare cinci minute:

*/5 * * * * root /home/user/Desktop/shell.sh

coajă.sh are urmatorul continut:

#!/bin/bash
ecou "bună ziua"
bash -i

Am urmatoarele intrebari:

  1. Unde se desfășoară treaba? De exemplu. este început un nou proces TTY în care este rulat scriptul shell?

  2. Unde se trimite ieșirea? Am citit că rezultatul este trimis la e-mailul proprietarului. Înseamnă asta că root primește un e-mail cu ecou afirmație?

  3. Dar despre bash comanda? Pornește scriptul un proces bash în sesiunea terminală de control care rămâne în rulare până la sfârșitul sesiunii terminale (la sfârșitul scriptului?)?

  4. Să presupunem că am inversat codul shell în scriptul bash de mai sus și rulez a nc ascultător pe computerul meu. Va însemna asta că la fiecare 5 minute voi primi o conexiune care se închide imediat ce scriptul se termină de rulat?

Scuze pentru numeroasele întrebări. Sunt nou în chestiile astea. Mulțumiri.

Puncte:0
drapel de
ob2

crontab nu funcționează exact ca un shell clasic.

  1. Lucrarea este rulată ca root, dar fără niciun TTY. Comanda este rulată într-un mediu non-interactiv, deci bash -i probabil returnează o eroare sau doar se închide odată ce a fost executat.

  2. Ieșirea este de obicei trimisă prin poștă. Ubuntu este de obicei livrat cu un sistem de e-mail foarte minim numit exim4. Uită-te dacă fișier /var/mail/<numele dvs. de utilizator> există. Puteți încerca să citiți e-mailurile cu:

    mail -u <numele dvs. de utilizator>
    
  3. Pentru că scenariul tău începe cu #!/bin/bash, bash va fi folosit, dar acesta nu este rulat în niciun terminal. Cu excepția cazului în care scriptul dvs. conține o buclă, procesul se termină la sfârșitul scriptului.

  4. Nu sunt sigur că înțeleg cazul de utilizare cu nc, dar dacă fugi nc din crontab pentru a vă conecta și a trimite un mesaj la computer, nc și bash se va încheia imediat ce comanda este executată.

Jhon Doe avatar
drapel us
Bună ziua pentru Q.3 Mă refeream la comanda bash -i. Pentru Q.4 nu rulez un ascultător în cron. Numai shell-ul invers rulează în cron
drapel de
ob2
De ce nu ai descris ceea ce încerci să obții. Căutați o modalitate de a prelua controlul asupra serverului cu comanda nc? Q3) bash -i nu va mai avea efect, așa cum sa explicat, iar cron nu este rulat sub shell interactiv. Î4) Am înțeles că ascultătorul este rulat pe computerul dvs. și comanda nc rulează un client și se conectează la computer la fiecare 5 minute.
Jhon Doe avatar
drapel us
Multumesc pentru raspuns. Deci am nc -lvnp 8000 care rulează pe computerul A și să presupunem că pe computerul B am un job cron care se execută cu root. Dacă introduc un cod shell invers în jobul cron, voi avea o conexiune shell inversă la fiecare 5 minute care se termină de fiecare dată când scriptul se termină de rulat?
drapel de
ob2
Nu sunt sigur cum ar trebui să funcționeze codul reverse shell, ați făcut-o deja fără cron rulând comenzile manual?
Jhon Doe avatar
drapel us
Hei, e bine. M-am hotărât să pun o întrebare mai specifică despre schimbul de stive de securitate a informațiilor. Dar oricum multumesc pentru raspuns.

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.