Skip to main content

Warning: count(): Parameter must be an array or an object that implements Countable in C:\home\site\wwwroot\gs\plugins\i18n_navigation\frontend.class.php on line 219

Autologin σε ιδιωτικούς trackers

Φτιάχνουμε στο /home/username ένα αρχείο και του δίνουμε το όνομα π.χ. grtlogin.sh Μέσα σε αυτό το αρχείο γράφουμε

#!/bin/sh
curl -b /tmp/cookies.txt --user-agent Mozilla/4.0 http://www.thegt.net/login.php -c /tmp/cookies.txt -d "username=<μαντέψτε τι μπαίνει εδώ>&password=<μαντέψτε τι μπαίνει εδώ>&take_login=1"  http://www.thegt.net/browse.php -vL > /dev/null

Στη συνέχεια το κάνουμε εκτελέσιμο

chmod +x /home/username/grtlogin.sh

Παρατηρήσεις:

  1. Εκεί που γράφω <μαντέψτε τι μπαίνει εδώ> μαντέψτε τι μπαίνει και αντικαταστήστε το.
  2. Το παραπάνω, χωρίς το #!/bin/sh μπορείτε να το βάλετε απευθείας στην γραμμή εντολών και να δείτε τι κατεβάζει το πρόγραμμα.
  3. Αν μάλιστα βγάλετε και το "> /dev/null" θα δείτε στην οθόνη και των πηγαίο κώδικα από τις σελίδες που κατεβάζει.
  4. Η παραπάνω γραμμή χρησιμοποιεί το curl να κάνει login στην σελίδα login.php και μετά κατεβάζει την σελίδα browse.php.

Αφού έχουμε βεβαιωθεί ότι το σκριπτακι μας δουλεύει πάμε να φτιάξουμε ένα cron job για να τρέχει σε τακτικά διαστήματα.

  1. Γράφουμε την κονσόλα μας: crontab -e
  2. και κάτω από την τελευταία γραμμή γράφουμε
    */15 * * * * /home/username/grtlogin.sh
  3. Πατάμε Ctrl+Ο και μετά Enter για να το σώσουμε και Ctrl+X για να βγούμε.

Αυτή η γραμμή τρέχει το σκριπτάκι μας κάθε 15 λεπτά οπότε κάνουμε log in στο thegt.net κάθε 15 λεπτά.
Αν θέλετε μπορείτε να αλλάξετε το 15 για να αλλάξετε το ανά πόσα λεπτά θέλετε να τρέξει. Λιγότερο από 15 λεπτά το θεωρώ χαζό και αυξάνει το φόρτο στο server χωρίς λόγο. Ίσως να ήταν καλύτερα μεγαλύτερες τιμές αλλά δεν ξέρω τι γίνεται αν αλλάξει η IP πριν ξανακάνουμε log in.

Σημείωση: To cron αν η εντολή που τρέχει παράγει οποιαδήποτε έξοδο στην κονσόλα, την στέλνει με mail στον ιδιοκτήτη των εργασιών. Αν γράψετε mail θα δείτε τα mail που σας έχει στείλει. Η γραμμή που βάλαμε στο grtlogin.sh βγάζει έξοδο στην οθόνη οπότε κάθε 15 λεπτά θα παίρνετε mail, πράγμα που καταντά βαρετό. Καλύτερα να χρησιμοποιείσετε την παρακάτω γραμμή

curl -b /tmp/cookies.txt --user-agent Mozilla/4.0 http://www.thegt.net/login.php -c /tmp/cookies.txt -d "username=<μαντέψτε τι μπαίνει εδώ>&password=<μαντέψτε τι μπαίνει εδω>&take_login=1"  http://www.thegt.net/browse.php -SsL > /dev/null

Έτσι το curl θα δείξει κάτι στην οθόνη και κατά συνέπεια στο mail μόνο αν συμβεί κάποιο σφάλμα. π.χ. δεν βρήκε τον server. Δυστυχώς αποτυχημένα log in δεν καταγράφονται με αυτό τον τρόπο.