Dre4m Shell
Server IP : 85.214.239.14  /  Your IP : 3.128.95.20
Web Server : Apache/2.4.61 (Debian)
System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.18
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /usr/share/doc/passwd/examples/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /usr/share/doc/passwd/examples/passwd.expire.cron
#!/usr/bin/perl
#
# passwd.expire.cron: sample expiry notification script for use as a cronjob
#
# Copyright 1999 by Ben Collins <bcollins@debian.org>, complete rights granted
# for use, distribution, modification, etc.
#
# Usage:
#	edit the listed options, including the actual email, then rename to
#	/etc/cron.daily/passwd
#
#	If your users don't have a valid login shell (ie. they are ftp or mail
#	users only), they will need some other way to change their password
#	(telnet will work since login will handle password aging, or a poppasswd
#	program, if they are mail users).

# <CONFIG> #

# should be same as /etc/adduser.conf
$LOW_UID=1000;
$HIGH_UID=29999;

# this let's the MTA handle the domain,
# set it manually if you want. Make sure
# you also add the @ like "\@domain.com"
$MAIL_DOM="";

# </CONFIG> #

# Set the current day reference
$curdays = int(time() / (60 * 60 * 24));

# Now go through the list

open(SH, "< /etc/shadow");
while (<SH>) {
    @shent = split(':', $_);
    @userent = getpwnam($shent[0]);
    if ($userent[2] >= $LOW_UID && $userent[2] <= $HIGH_UID) {
	if ($curdays > $shent[2] + $shent[4] - $shent[5] &&
		$shent[4] != -1 && $shent[4] != 0 &&
		$shent[5] != -1 && $shent[5] != 0) {
	    $daysleft = ($shent[2] + $shent[4]) - $curdays;
	    if ($daysleft == 1) { $days = "day"; } else {$days = "days"; }
            if ($daysleft < 0) { next; }
	    open (MAIL, "| mail -s '[WARNING] account will expire in $daysleft $days' $shent[0]${MAIL_DOM}");
	    print MAIL <<EOF;
Your account will expire in $daysleft $days. Please change your password before
then or your account will expire
EOF
	    close (MAIL);
	    # This makes sure we also get a list of almost expired users
	    print "$shent[0]'s account will expire in $daysleft days\n";
	}
    }
    @userent = getpwent();
}

Anon7 - 2022
AnonSec Team