سلام
psacct و acct دو تا برنامه متن باز تحت لینوکس هستند که به ما این قابلیت رو میدن که به راحتی و با چند تا دستور ساده میتونیم یوزر های ssh رو مانیتور بکنیم ، صد البته دستور ps و دستورات دیگری برای این کار وجود داره اما اینم یه نوعشه
این دستورات همونطور که مشاهده خواهید کرد اطلاعات خوبی از جمله میزان منابع مصرفی توسط یوزر ها یا مدت زمان کار با سیستم یا حتی دستوری که توسط یوزر در حال اجرا هست رو با جزئیات کامل در اختیار ما قرار میده .
- ac : این دستور اطلاعاتی در رابطه با ورود و خروج و مدت زمان اتصال یوزر رو در اختیار ادمین قرار میده.
- lastcomm : این دستور هم همونطور که از syntax اش معلومه اطلاعات مربوط به دستور قبلی که یوزر به اجرا درآورده رو میده.
- accton : برای بستن و باز کردن پروسه کار کاربر
- sa : اطلاعات کامل از دستورات قبلی که کاربر اجرا کرده
- last یا lastb : لیست یوزر هایی که لاگین کردن
خوب بریم سراغ نصب psacct و acct :
برای Centos و RHEL نرم افزار psacct رو داریم , برای Debian ، fedora ، Ubuntu و MINT هم نرم افزار acct رو داریم به راحتی هم با Yum و Apt-get قابل نصبه
#CentsOs and Rhel [root@seclinux ~]# yum install psacct # Ubuntu , Debian , Fedora [N3td3vil@seclinux ~]# sudo apt-get install acct OR [root@seclinux ~]# apt-get install acct
برای اجرای Deamon هم در RHEL/CentOS/Fedora باید به صورت دستی اجرا بشه
[root@seclinux ~]# /etc/init.d/psacct status Process accounting is disabled. [root@seclinux ~]# chkconfig psacct on [root@seclinux ~]# /etc/init.d/psacct start Starting process accounting: [ OK ] [root@seclinux ~]# /etc/init.d/psacct status Process accounting is enabled.
روی Ubuntu/Debian/Mint بعد از نصب به صورت اتوماتیک خود سرویس استارت میشه و نیاز نیست که مجدد استارت کنید.
خوب برای دیدن زمان کلی اتصال به سرور توسط همه یوزر ها بر حسب ساعت :
[root@seclinux ~]# ac total 653.38 [root@seclinux ~]#
دستور قبلی با سوئیچ -d بر اساس روز های گذشته :
[root@seclinux ~]# ac -d Jun 23 total 12.54 Jun 24 total 6.43 Jun 26 total 11.32 Jun 27 total 0.41 Jun 29 total 4.91 Jun 30 total 15.19 Jul 2 total 1.96 Jul 3 total 14.21 Jul 6 total 5.72 Jul 7 total 13.59 Jul 8 total 5.08 Jul 9 total 0.08 Jul 11 total 0.48 Jul 16 total 11.87 Jul 17 total 1.53 Jul 21 total 7.10 Jul 24 total 0.51 Jul 28 total 2.22 Aug 8 total 0.01 Aug 18 total 2.28 Aug 21 total 0.00 Sep 7 total 5.35 Sep 8 total 0.33 Sep 11 total 5.83 Sep 28 total 404.94 Sep 29 total 16.86 Sep 30 total 15.26 Oct 1 total 17.77 Today total 0.49 [root@seclinux ~]#
دستور قبلی با سوئیچ -p بر اساس یوزر :
[root@seclinux ~]# ac -p root 1645.18 N3td3vil 168.96 total 1814.14 [root@seclinux ~]#
برای دیدن connect Time یه یوزر خاص :
[root@seclinux ~]# ac root total 653.50 [root@seclinux ~]#
دستور بالا رو با سوئیچ -d برای یوزر بزنیم براساس روز فقط اطلاعات یوزر وارد شده رو میده
خوب دستور sa اطلاعات بهتری رو میده ، ببینید:
[root@seclinux ~]# sa 2 9.86re 0.00cp 2466k sshd* 8 1.05re 0.00cp 1064k man 2 10.08re 0.00cp 2562k sshd 12 0.00re 0.00cp 1298k psacct 2 0.00re 0.00cp 1575k troff 14 0.00re 0.00cp 503k ac 10 0.00re 0.00cp 1264k psacct* 10 0.00re 0.00cp 466k consoletype 9 0.00re 0.00cp 509k sa 8 0.02re 0.00cp 769k udisks-helper-a 6 0.00re 0.00cp 1057k touch 6 0.00re 0.00cp 592k gzip 6 0.00re 0.00cp 465k accton 4 1.05re 0.00cp 1264k sh* 4 0.00re 0.00cp 1264k nroff* 2 1.05re 0.00cp 1264k sh 2 1.05re 0.00cp 1120k less 2 0.00re 0.00cp 1346k groff 2 0.00re 0.00cp 1383k grotty 2 0.00re 0.00cp 1053k mktemp 2 0.00re 0.00cp 1030k iconv 2 0.00re 0.00cp 1023k rm 2 0.00re 0.00cp 1020k cat 2 0.00re 0.00cp 1018k locale 2 0.00re 0.00cp 802k gtbl
- 9.86re نشان دهنده real Time هست
- 0.01cp زمان استفاده شده از cpu بر اساس دقیقه
- میانگین استفاده از هسته cpu به تناسب میانگین استفاده
- sshd دستور اجرا شده
دستور بالا با سوئیچ -u اطلاعات فردی یوزر :
[root@seclinux ~]# sa -u root 0.00 cpu 465k mem accton root 0.00 cpu 1057k mem touch root 0.00 cpu 1298k mem psacct root 0.00 cpu 466k mem consoletype root 0.00 cpu 1264k mem psacct * root 0.00 cpu 1298k mem psacct root 0.00 cpu 466k mem consoletype root 0.00 cpu 1264k mem psacct * root 0.00 cpu 1298k mem psacct root 0.00 cpu 466k mem consoletype root 0.00 cpu 1264k mem psacct * root 0.00 cpu 465k mem accton root 0.00 cpu 1057k mem touch
خوب دستور بالا با سوئیچ -m برای دیدن تعداد Procces
[root@seclinux ~]# sa -m sshd 2 9.86re 0.00cp 2466k root 127 14.29re 0.00cp 909k
دستور sa با سوئیچ -c بر اساس درصد مرتب میشه
[root@seclinux ~]# sa -c 132 100.00% 24.16re 100.00% 0.01cp 100.00% 923k 2 1.52% 9.86re 40.83% 0.00cp 53.33% 2466k sshd* 8 6.06% 1.05re 4.34% 0.00cp 20.00% 1064k man 2 1.52% 10.08re 41.73% 0.00cp 13.33% 2562k sshd 12 9.09% 0.00re 0.01% 0.00cp 6.67% 1298k psacct 2 1.52% 0.00re 0.00% 0.00cp 6.67% 1575k troff 18 13.64% 0.00re 0.00% 0.00cp 0.00% 509k sa 14 10.61% 0.00re 0.00% 0.00cp 0.00% 503k ac 10 7.58% 0.00re 0.00% 0.00cp 0.00% 1264k psacct* 10 7.58% 0.00re 0.00% 0.00cp 0.00% 466k consoletype 8 6.06% 0.02re 0.07% 0.00cp 0.00% 769k udisks-helper-a 6 4.55% 0.00re 0.00% 0.00cp 0.00% 1057k touch 6 4.55% 0.00re 0.00% 0.00cp 0.00% 592k gzip 6 4.55% 0.00re 0.00% 0.00cp 0.00% 465k accton 4 3.03% 1.05re 4.34% 0.00cp 0.00% 1264k sh* 4 3.03% 0.00re 0.00% 0.00cp 0.00% 1264k nroff* 2 1.52% 1.05re 4.34% 0.00cp 0.00% 1264k sh 2 1.52% 1.05re 4.34% 0.00cp 0.00% 1120k less 2 1.52% 0.00re 0.00% 0.00cp 0.00% 1346k groff 2 1.52% 0.00re 0.00% 0.00cp 0.00% 1383k grotty 2 1.52% 0.00re 0.00% 0.00cp 0.00% 1053k mktemp
خوب رسیدیم به دستور lastcomm
برای دیدن دستوراتی که یوزر اجرا کرده
[root@seclinux ~]# lastcomm n3td3vil su tecmint pts/0 0.00 secs Wed Feb 13 15:56 ls tecmint pts/0 0.00 secs Wed Feb 13 15:56 ls tecmint pts/0 0.00 secs Wed Feb 13 15:56 ls tecmint pts/0 0.00 secs Wed Feb 13 15:56 bash F tecmint pts/0 0.00 secs Wed Feb 13 15:56 id tecmint pts/0 0.00 secs Wed Feb 13 15:56 grep tecmint pts/0 0.00 secs Wed Feb 13 15:56 grep tecmint pts/0 0.00 secs Wed Feb 13 15:56 bash F tecmint pts/0 0.00 secs Wed Feb 13 15:56 dircolors tecmint pts/0 0.00 secs Wed Feb 13 15:56 bash F tecmint pts/0 0.00 secs Wed Feb 13 15:56 tput tecmint pts/0 0.00 secs Wed Feb 13 15:56 tty tecmint pts/0 0.00 secs Wed Feb 13 15:56 bash F tecmint pts/0 0.00 secs Wed Feb 13 15:56 id tecmint pts/0 0.00 secs Wed Feb 13 15:56 bash F tecmint pts/0 0.00 secs Wed Feb 13 15:56 id tecmint pts/0 0.00 secs Wed Feb 13 15:56
برای دیدن یوزر هایی که یک کامند خاص رو اجرا کردن
[root@seclinux ~]# lastcomm ls ls tecmint pts/0 0.00 secs Wed Feb 13 15:56 ls tecmint pts/0 0.00 secs Wed Feb 13 15:56 ls tecmint pts/0 0.00 secs Wed Feb 13 15:56
خوب امیدوارم که مطلب فوق براتون مفید واقع شده باشه
پیروز باشید
N3td3v!l