This paper proposes an improved free-roaming mobile agent security protocol. The scheme uses "one hop backwards and two hops forwards" chain relation as the protocol core to implement the generally accepted mobile agent security properties. This scheme defends most known attacks, especially colluded truncation attacks and several special cases.