Volando come un Rasteriz

"Un colore unico: impossibile da dipingere" – Luca "masterix" Longo
  • rss
  • Homepage
  • Cose varie
  • Howto & Tips
    • jQuery
    • PHP
  • Lyrics
  • Software
  • Contattami
  • Registrati
  • Collegati

[TIP] /tmp non eseguibile su linux

Luca Longo | 22 gennaio 2010

Chiunque utilizzi un server web sotto linux, si sarà reso conto che buona parte delle cose temporanee vanno a finire nella cartella /tmp.

Tale cartella, essendo un punto di riferimento noto, spesso viene utilizzata negli script di default delle configurazioni. Questo comporta però che anche gli upload effettuati, ad esempio, tramite PHP vadano a finire qui: questo causa spesso “l’apertura” del sistema all’esecuzione di exploit, specie se si usano in esso piattaforme opensource come Joomla, Wordpress, Mambo, ecc.

Per risolvere, in parte, questo problema, possiamo rendere la directory /tmp non eseguibile. Per fare ciò, potremo sia modificare il file /etc/fstab aggiungendo noexec al mount della directory tmp, sia eseguire questo semplice comando:

# mount -o remount,noexec /tmp

Fate bene attenzione, però. La maggior parte degli script per la gestione dei pacchetti (come apt, yum, ecc), sfruttano questa dir per l’esecuzione di comandi temporanei, quindi, se rendete non eseguibile la directory, nessun file potrà essere eseguito.

Se avete comunque la necessità di eseguire qualcosa, potete temporaneamente lanciare il comando opposto a quello sopra:

# mount -o remount,exec /tmp

Una volta terminata l’installazione dei vostri pacchetti, potrete lanciare nuovamente il comando sopra con il noexec.

  • Google Reader
  • Twitter
  • Digg
  • Oknotizie
  • Yahoo Buzz
  • Reddit
  • Technorati Favorites
  • Ping
  • StumbleUpon
  • Facebook
  • Delicious
  • PrintFriendly
  • Condividi questo testo
Comments
Nessun Commento »
Categorie
Howto & Tips
Tags
exec, fstab, gentoo, joomla, mambo, mount, no exec, noexec, non eseguibile, remount, security, sicurezza, tmp, ubuntu, wordpress, wp, yum
Commenti RSS Commenti RSS
Trackback Trackback

Una richiesta cURL con PHP e agent personalizzato

Luca Longo | 15 gennaio 2010

Dopo una lunga sfilza di articoli su jQuery, il focus si sposta su PHP. Oggi realizzeremo una guida capace di spiegarci come poter interrogare delle pagine esterne (magari per scrivere uno spider) impostando un Agent personalizzato: tutto ciò grazie all’utilizzo della libreria cUrl offerta da PHP.

Sia se utilizzate wamp, sia se avete una configurazione LAMP, vi anticipo che c’è da includere la libreria sul PHP.INI.

Per capire se avete curl abilitato o meno, potete creare un file PHP e mettere al suo interno SOLO questo codice:

<? phpinfo(); ?>

Se avrete cUrl attivo, lo capirete da una riga simile a questa:

Bene… se questa è la vostra schermata, siamo sicuri che curl è installato e possiamo procedere con la lettura dell’howto. Diversamente vi consiglio di navigare su Google e cercare una guida per la sua installazione.

<?php

// Inizializziamo il riferimento alla risorsa cURL
$ch = curl_init();

// Impostiamo l'url sul quale bisogna fare la richiesta
curl_setopt($ch, CURLOPT_URL, "http://www.masterix.org");

// Eseguiamo la richiesta
$output = curl_exec($ch);

// Chiudiamo il riferimento alla risorsa cURL e liberiamo le risorse in memoria
curl_close($ch);

?>

Queste semplici righe di codice, ci permettono di interrogare una pagina web e mettere tutto il codice di risposta in una variabile php di nome $output. Tuttavia, per modificare l’agent con cui ci presentiamo al webserver, dobbiamo aggiungere una nuova riga di codice. Trasformiamo quindi il codice sopra, in questo modo:

<?php

// Inizializziamo il riferimento alla risorsa cURL
$ch = curl_init();

// Impostiamo l'url sul quale bisogna fare la richiesta
curl_setopt($ch, CURLOPT_URL, "http://www.masterix.org");

// Impostiamo l'user-agent con il quale bisogna fare la richiesta
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)");

// Eseguiamo la richiesta
$output = curl_exec($ch);

// Chiudiamo il riferimento alla risorsa cURL e liberiamo le risorse in memoria
curl_close($ch);

?>

E con questo abbiamo finito. Per dubbi, correzioni o suggerimenti, commentate :-P

  • Google Reader
  • Twitter
  • Digg
  • Oknotizie
  • Yahoo Buzz
  • Reddit
  • Technorati Favorites
  • Ping
  • StumbleUpon
  • Facebook
  • Delicious
  • PrintFriendly
  • Condividi questo testo
Comments
1 Commento »
Categorie
Howto & Tips, PHP
Tags
agent, curl, CURLOPT_URL, CURLOPT_USERAGENT, lamp, opensource, php, user, user-agent, wamp
Commenti RSS Commenti RSS
Trackback Trackback

Dalla tabella al datagrid secondo Ingrid… e jQuery!

Luca Longo | 12 gennaio 2010

Ho lavorato per diverso tempo con il framework .NET ed ho sempre trovato fantastici i controlli offerti: primo su tutti il datagrid. Su Internet esistono diverse alternative e quasi tutte o promettono tanto (dando nulla) oppure sono a pagamento. Finalmente, però, sono riuscito a trovare un datagrid dal funzionamento simile, senza particolari compromessi: Ingrid.

Sul sito ufficiale possiamo trovare alcuni esempi e una spiegazione (molto semplice) che ci permetterà di integrarlo velocemente nei nostri progetti. Degna di nota è la possibilità di integrarsi a tabelle già esistenti: fattore che lo rende immediatamente utilizzabile anche in progetti già esistenti.

Sito ufficiale: http://www.reconstrukt.com/ingrid/

  • Google Reader
  • Twitter
  • Digg
  • Oknotizie
  • Yahoo Buzz
  • Reddit
  • Technorati Favorites
  • Ping
  • StumbleUpon
  • Facebook
  • Delicious
  • PrintFriendly
  • Condividi questo testo
Comments
1 Commento »
Categorie
Howto & Tips, jQuery
Tags
.net, c#, datagrid, ingrid, javascript, jQuery, php, tabella esistente
Commenti RSS Commenti RSS
Trackback Trackback

Pagina 1 di 1312345»10...Ultima »

Cerca nel sito…

Info collegate all’articolo

I più votati

Get Adobe Flash playerPlugin by wpburn.com wordpress themes
rss Commenti RSS powered by Wordpress