logout خودکار کاربران غیرفعال در لینوکس

#سوال: چگونه می توان کاربری که بیشتر از مدت معینی در وضعیت idle قرار دارد را مجبور به logout کرد؟

روش اول: برای logout خودکار کاربران(در صورت عدم فعالیت) می توان از متغیر TMOUT استفاده کرد. برای مثال با تنظیم این متغیر به عدد 5، کاربر oracle بعد از مدت پنج ثانیه از سیستم خارج خواهد شد البته در صورت عدم فعالیت!:

[oracle@myhost ~]$ export TMOUT=5

[oracle@myhost ~]$ timed out waiting for input: auto-logout

برای تنظیم پایدار این متغیر، می توانیم از فایلهایی چون bashrc. و bash_profile. کمک بگیریم.

[oracle@myhost ~]$ vi .bash_profile

export TMOUT=5

با این روش، فردی که با این متغیر آشنا باشد، می تواند بعد از لاگین به سیستم، آن را تغییر دهد. برای انکه متغیر TMOUT برای همه کاربران اعمال شود و همچنین برای کاربران غیرادمین غیرقابل تغییر باشد، می توان این متغیر را read only کرد:

[root@myhost ~]# vi /etc/profile.d/myscript.sh

export TMOUT=50

readonly TMOUT  

[root@ myhost ~]# chmod 777 /etc/profile.d/myscript.sh

با این تنظیمات، کاربر oracle نخواهد توانست متغیر TMOUT را تغییر دهد:

[oracle@myhost ~]$ echo $TMOUT

50

[oracle@myhost ~]$ export TMOUT=60

-bash: TMOUT: readonly variable

روش دوم: برای logout خودکار افراد غیرفعالی که با سرویس sshd به سیستم لاگین کرده اند، می توان دو متغیر زیر را در فایل پیکربندی sshd تنظیم کرد:

[root@myhost ~]# vi /etc/ssh/sshd_config

ClientAliveInterval 50

ClientAliveCountMax 0

با این تنظیم و با اتصال از طریق سرویس sshd به سیستم، بعد از 50 ثانیه عدم فعالیت، پیام زیر را دریافت خواهیم کرد:

[root@other ~]# ssh 192.168.1.20

[root@other ~]# Connection to 192.168.1.20 closed by remote host.

Connection to 192.168.1.20 closed.

ارائه خدمات مشاوره ، پشتیبانی و نصب و راه اندازی پایگاه داده اوراکل در سراسر کشور...................... تلفن: 09128110897 ایمیل:vahidusefzadeh@gmail.com

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *