These days, we are witnessing that numerous machine-type devices are connected to the internet. Massive connectivity is one of the most important requirements for the next generation 5G networks. Since the complicated scheduling process of current 4G systems causes heavy load and large latency in supporting a large number of devices, the grant-free communication becomes viable option in massive machine type communication (mMTC) systems. In this paper, we propose a joint active user detection (AUD) and channel estimation (CE) technique for grant-free mMTC systems. The proposed algorithm consists of AUD, time-domain channel estimation, and identified user cancellation. Specifically, once an active device is identified, the channel for this device is estimated. Using the active user and channel information, the received signal is refined for the next iteration of AUD process. We show that the proposed iterative AUD and CE algorithm achieves substantial performance gain over the conventional AUD in realistic uplink grant-free mMTC environments.