گروه کاربران لینوکس دانشگاه شهید مدنی آذربایجان

لاگ دانشگاه آذربایجان :: Azarbaijan University Linux User Group

گروه کاربران لینوکس دانشگاه شهید مدنی آذربایجان

لاگ دانشگاه آذربایجان :: Azarbaijan University Linux User Group

یافتن افرادی که از فایلی در لینوکس استفاده میکنند

برای فهمیدن اینکه چه کسی از فایلی استفاده میکند میتوانیم از دستور lsof استفاده کنیم.این دستور در حافظه ی هسته فایل های باز را جستجو میکند و کمک میکند تمام فایلهای در حال اجرا را لیست کنید.

خروجی دستور lsof مالک و اطلاعات پردازش با استفاده از فایل،بصورت زیر خواهد بود

lsof/dev/null $



برای لیست کردن فایل های خاصی که توسط کاربر باز شده اند دستور زیر را با جایگزینی نام کاربر به جای user اجرا کنید.

lsof -u user $



استفاده مهم دیگر دستور lsof پیدا کردن روند پیروی در یک پورت خاص است.برای مثال با استفاده از دستور زیر میتوان فهمید کدام فرآیند از پورت 80 پیروی میکند.


sudo lsof -i  TCP:80 $



زمانی که دستور lsof حافظه هسته را در جستجوی خود میخواند،تغییرات سریع در حافظه هسته باعث خروجی های پیش بینی نشده میشود.این یکی از زیان های بزرگ استفاده از دستور lsof  است.


برای اطلاعات بیشتر از دستور man استفاده کنید.

man lsof $


منبع:https://www.tecmint.com/find-out-who-is-using-a-file-in-linux/

تهیه مطلب:سهیلا حسن پوری بقا (951830227)

مقایسه فایل های محلی و ریموت در لینوکس


در این مقاله می خواهیم نشان دهیم که چگونه تفاوت بین فایل‌های محلی (local) و ریموت (remote) در لینوکس را یافته یا مقایسه کنیم.


دستور diff  یک ابزار ساده می باشد که دو فایل متفاوت را تجزیه و تحلیل می‌کند و تفاوت‌های موجود در فایل‌ها را با مقایسه خط به خط به ما نشان می دهد . در صورتی که بخواهید دو فایل متفاوت از نظر محتوا یکسان شوند  دستور diff  یک سری دستورالعمل نیز برای یکسان سازی فایل  به شما نشان می دهد.


برای مقایسه یا یافتن تفاوت بین دو فایل در مکان های مختلف، فرمان زیر را اجرا کنید. به یاد داشته باشید که کاربر [user] و میزبان [remote-host] را با پارامترهای واقعی خود تعویض کنید .


$ ssh user@remote-host "cat /home/root/file_remote" | diff  - file_local 




توجه داشته باشید که همچنین می‌توان تفاوت بین دو فایل را در یک فایل مجزا، با استفاده از ویژگی تغییر مسیر خروجی ذخیره کرد . برای مثال :

$ ssh user@remote-host "cat /home/root/file_remote" | diff  -  file_local > diff_output.txt


سپس با دستور  cat  می توانید محتویات فایل diff را مشاهده کنید .

$ cat diff_output.txt

OR

$ bcat diff_output.txt


علاوه بر این ، همچنین می‌توانید تفاوت بین دو فایل را  که در دو سرور مجزا قرار دارند نیز مقایسه کنید ، مطابق دستور زیر  :

$ diff <(ssh user@remote-host1 'cat /path/to/file1') <(ssh user@remote-host2 'cat /path/to/file2')


برای کسب اطلاعات بیشتر، می توانید از دستور  man  استفاده کنید .

$ man diff


منبع :‌ 

https://www.tecmint.com/compare-local-and-remote-files-in-linux/


تهیه کننده :‌ امین طاهری  - ۹۵۱۸۳۰۲۴۶

نصب نرم افزار های MicroSoftOffice در لینوکس

می دانیم که بعضی از نرم افزار هایی که امکان استفاده از آنها در ویندوز برایمان راحت است  ممکن است در لینوکس نتوانیم  به آنها دسترسی پیدا کنیم  .

یکی از این برنامه های کاربردی که ممکن است در حین استفاده از لینوکس به آنها نیاز پیدا کنیم نرم افزار هایی مثل  word / powerpoint / excel  و ... است .

 برای استفاده از آنها در لینوکس سه روش وجود دارد :

روش اول )   استفاده از این نرم افزار ها به صورت آنلاین

روش دوم )  نصب مایکرو سافت آفیس با استفاده از PlayOnLinux

روش سوم ) از Microsoft Office در یک ماشین مجازی ویندوز استفاده کنید


در این مطلب روش دوم را توضیح خواهیم داد :

شما می توانید مایکروسافت آفیس را با استفاده از Wine و PlayOnLinux نصب کنید.

*** دستورالعمل های زیر برای اوبونتو هستند ***


مراحل نصب:

با باز کردن یک پنجره ترمینال و وارد کردن شروع کنید:


wget -q "http://deb.playonlinux.com/public.gpg" -O- | sudo apt-key add -

بعد، کلید عمومی برای نرم افزار PlayOnLinux که در کنار wine اجرا می شود را اضافه کنید:


wget -q "http://deb.playonlinux.com/public.gpg" -O- | sudo apt-key add -


با اضافه کردن اطلاعات PPA به package manager، این را دنبال کنید:


sudo wget http://deb.playonlinux.com/playonlinux_precise.list -O /etc/apt/sources.list.d/playonlinux.list

در قدم بعدی بروزرسانی و نصب کنید:
sudo apt update
sudo apt install playonlinux


اکنون، تنها کاری  که باید انجام دهید این است که PlayOnLinux را ازMenu > Applications راه اندازی کنید. سپس، بر روی زبانه Office کلیک کنید، سپس گزینه Microsoft Office مناسب را انتخاب کنید.


حال تنها کاری که مانده نصب مایکروسافت آفیس است :

توجه کنید که با PlayOnLinux، شما محدود به مایکروسافت آفیس 2013 به عنوان آخرین نسخه (نسخه 32 بیتی، در بهترین حالت) هستید. اما بهتر است  از مایکروسافت آفیس 2010 استفاده کنید. برای این کار، شما باید دیسک (یا فایل ISO) و یک کلید واقعی(لایسنس) را داشته باشید.


شما دانلود رسمی را در آدرس microsoft.com/en-gb/software-download/office پیدا خواهید کرد، در آنجا قبل از اینکه بتوانید مجموعه را دانلود کنید، باید کلید محصول را وارد کنید(باید قبل از دانلود ، لایسنس مربوطه را که خریداری کرده اید وارد کنید)

PlayOnLinux از شما خواسته است که یک DVD-ROM یا یک فایل نصب را انتخاب کنید. با توجه به اینکه فایل نصب دارید یا میخواهید با استفاده از DVD-ROMنرم افزار را نصب کنید گزینه مناسب را انتخاب کنید.


با کلیک بر روی Next، نصب ادامه خواهد یافت و پس از انجام این کار، شما آماده استفاده از مایکروسافت آفیس 2010 خواهید بود. این آخرین نسخه است که می تواند باPlayOnLinux   در سیستم نصب شود، هرچند برای برنامه های مایکروسافت آفیس روی ویندوز نسخه های 2016 هم وجود دارد. .


اگر به دلایلی PlayOnLinux برای شما کار نمی کند، CrossOver را نیز در نظر بگیرید. این یک ابزار  است و می تواند نسخه های بعدی مایکروسافت آفیس را اجرا کند. اگر برنامه ها  توسط PlayOnLinux / Wine به طور کامل پشتیبانی نمی شد، می توانید در  CrossOver اجرا کنید.نصب CrossOver ساده تر ازPlayOnLinux است.


داشتن نرم افزار ویندوز روی سیستم عامل  لینوکس روی کامپیوتر شما بسیار شگفت انگیز است. شما خواهید دید که PlayOnLinux می تواند چندین برنامه دیگر و همچنین بسیاری از بازی های ویندوز را پشتیبانی کند.



تهیه و تنظیم مطلب : 

ریحانه علیزاده باغبانان (شماره دانشجویی:951830253)

منبع:

/https://www.makeuseof.com/tag/install-use-microsoft-office-linux



نحوه ی نصب کردن Elasticsearch در centos7


Elasticsearch یک پایگاه داده ی No SQL است و به خاطر اینکه تعداد این پایگاه داده ها زیاد است ابتدا به توصیف آن می پردازیم.



مقدمه ای بر Elasticsearch

Elasticsearch یک پایگاه داده No SQL ،  real time ،document based  ،distributed  ،

full text based search engine، power full analytics engine  و REST محور می باشد.



ابتدا open JDK 8 را نصب میکنیم:


تایید کردن نصب Java با دستور java version :


خروجی به شکل زیر خواهد بود:


وارد کردن کلید GPG ریپازیتوری با دستور زیر:


ویرایشگر متن خود را باز کرده و ریپازیتوری زیر را ایجاد کنید


موارد زیر را درون فایل ذخیره کنید


حال به دانلود package می پردازیم

فعال کردن سرویس

شما می توانید برنامه در حال اجرا را با ارسا در خواست http به پورت9200 در لوکال هاست با دستور curl  زیر تایید کنید

که خروجی به شکل زیر خواهد بود

که ممکن است بین 10 تا 15 ثانیه وقت بگیرد که برای دیدن پیام های لاگ شده توسط سرویس elastic search میتوانید از دستور زیر استفاده کنید

که با اعمال این دستورات برنامه در حال اجرا قرار می گیرد.


کانفیگ کردن


برای اجازه ی دسترسی به elastic search از سرور های دیگر باید ابتدا کانفیگ های مورد نیاز را انجام بدهید که در

زیر به شرح آهن میپردازیم


دستور زیر را برای اجازه دسترسی خارجی به سرور از طریق سرور های قابل اعتماد در پورت 9200 وارد کنید

که اگر در ادامه خواستید به سرور های دیگ هم اجازه دهید دستور زیر را وارد کنید

بعد از کانفیگ کردن فایر وال نوبت به کانفیگ های مربوط به elastic search می رسد که برای آن فایل elasticsearch.yml را باز کنید

سپس دنبال خطی که شامل network.host است بگردید و مقادی آن را به0.0.0.0 تبدیل کنید


در نهایت با دستور زیر ریستارت کنید تا دستورات آخر اعمال شوند


منبع: https://linuxize.com/post/how-to-install-elasticsearch-on-centos-7/


تهیه کننده: ارشیا نظرلطفی/951830277


چهار روش برای غیر فعال کردن حساب ریشه (root ) در لینوکس


چهار روش برای غیر فعال کردن حساب ریشه در لینوکس


حساب ریشه ، یک حساب نهایی در لینوکس و سایر سیستم عامل های مشابه یونیکس است. این حساب به تمامی دستورات و فایل ها در یک سیستم با مجوز کامل خواندن، نوشتن و اجرا، دسترسی دارد. برای انجام هر کاری در یک سیستم استفاده می شود؛ برای ایجاد، به روز رسانی، دسترسی، حذف حساب های کاربران دیگر، نصب، حذف، ارتقاء بسته های نرم افزاری و خیلی موارد بیشتر. 


از آنجا که کاربر ریشه دارای قدرت مطلق است، هر گونه فعالیتی که وی انجام می دهد در یک سیستم حیاتی است. در این راستا، هر گونه خطا توسط کاربر ریشه ممکن است پیامدهای بزرگی در عملکرد عادی یک سیستم داشته باشد. علاوه بر این، این حساب نیز ممکن است با استفاده نامناسب از آن یا به طور تصادفی و یا از طریق نادیده انگاشتن سیاست ها مورد سوء استفاده قرار گیرد. بنابراین، بهتر است دسترسی ریشه در سرور لینوکس خود را غیر فعال کنید، در عوض، یک حساب مدیریتی ایجاد کرده و برای به دست آوردن امتیازات ریشه با استفاده از دستور sudo، برای انجام وظایف مهم در سرور، حساب مورد نظر را پیکربندی کنید.


در این مقاله، ما چهار راه برای غیر فعال کردن ورود به حساب کاربریroot در لینوکس را توضیح خواهیم داد.


توجه: قبل از اینکه شما دسترسی به حساب ریشه را مسدود کنید، مطمئن شوید که یک حساب کاربری ایجاد کرده اید، دستور useradd، به استفاده از دستور sudoبرای به دست آوردن امتیازات کاربر ریشه کمک میکند و یک رمز عبور قوی برای حساب کاربری ارائه می دهد. پرچم m به معنی ایجاد دایرکتوری خانگی کاربر است و c اجازه می دهد تا یک نظر را مشخص کند:

# useradd –m –c "Admin User" admin

# passwd  admin


سپس، این کاربر را به گروه مناسب از مدیران سیستم با استفاده از دستور usermod  اضافه کنید، جایی که سوئیچ -a،  به معنی اضافه کردن حساب کاربری است و -G ، یک گروه را برای اضافه کردن کاربر (wheel or sudo) در توزیع لینوکس شما مشخص می کند:

# usermod     -aG    wheel   admin              #Centos

# usermod    -aG      sudo    admin               #Debian


هنگامی که یک کاربر را با امتیازات مدیریتی ایجاد کرده اید، برای مسدود کردن دسترسی ریشه، به این حساب بروید.


#  su  admin

 

1) تغییر ریشه کاربر Change root User’s Shell)  Shell ) 


ساده ترین روش برای غیرفعال کردن ورود کاربر root این است که پوسته خود را از/bin/bash  (یا هر پوسته دیگری که اجازه ورود کاربر را دارد) به /sbin/nologin درفایل /etc/passwd تغییردهید.


$   sudo    vim  /etc/passwd

تغییر خط:



root:x:0:0:root:/root:/bin/bash

to

root:x:0:0:root:/root:/sbin/nologin


درانتها فایل را ذخیره کرده و ببندید.


ازاین پس، هنگامی که کاربر ریشه وارد سیستم می شود، پیامی دریافت می کند: "این حساب در حال حاضر در دسترس نیست." این پیام پیش فرض است، اما شما می توانید آن را تغییر دهید و یک پیام سفارشی در فایل /etc/nologin.txt تنظیم کنید. این روش تنها برای برنامه هایی که نیاز به پوسته برای ورود به سیستم دارند موثر است، در غیر این صورت، سرورهای sudo، ftp و ایمیل می توانند به حساب root دسترسی پیدا کنند.


2) غیرفعال کردن ورود کاربر root از طریق کنسول ((Disable root Login via Console Device (TTY)


روش دوم از یک ماژول PAM به نام pam_securetty استفاده می کند که اجازه دسترسی به ریشه را فقط در صورتی که کاربر در   TTY "امن" وارد شده باشد، می دهد. همانطور که در فهرست etc / securetty تعریف شده است. فایل فوق به شما اجازه می دهد که مشخص کنید کدام دستگاه های TTY کاربر ریشه، مجاز به ورود به سیستم است، تخلیه این فایل از ورود ریشه در هر دستگاه متصل به سیستم کامپیوتری جلوگیری می کند.


$  sudo mv /etc/securetty /etc/securetty.orig

$  sudo touch /etc/securetty

$  sudo chmod  600 /etc/securetty


این روش دارای برخی محدودیت هاست و تنها بر روی برنامه هایی نظیر ورود به سیستم، مدیران نمایش (i.e gdm، kdm و  ( xdm و سایر سرویس های شبکه ای که TTY را راه اندازی می کنند، تاثیر می گذارد. برنامه هایی مانند su، sudo، ssh و سایر ابزارهای باز شده به حساب root دسترسی خواهند داشت.


3) غیر فعال کردن ریشه ورود به سیستم SSH (Disable SSH Root Login)


رایج ترین راه برای دسترسی به سرورهای از راه دور و یا VPS ها از طریق SSH است و برای مسدود کردن ورود کاربر ریشه تحت آن، شما باید فایل /etc / ssh / sshd_config را ویرایش کنید.


 $ sudo vim /etc/ssh/sshd_config


سپس دستورPermitRootLogin  مطابق شکل زیر اجراکرده و مقدار آن را به no  تغییر دهید.



پس از پایان کار، فایل را ذخیره کرده و ببندید. سپس سرویس sshd را مجددا راه اندازی کنید تا تغییرات اخیر در تنظیمات اعمال شود.


  $ sudo systemctl restart sshd

 or

$  sudo service sshd restart


این روش فقط بر روی مجموعه ابزار openssh تاثیر می گذارد؛ برنامه هایی مانند ssh، scp، sftp از دسترسی به حساب root رد می شوند. 


4) دسترسی ریشه به خدمات را از طریق PAM محدود کنید (Restrict root Acess to Services Via PAM)


ماژول های تأیید هویت انطباق پذیر (PAM در کوتاه مدت) یک روش متمرکز، پلاگین، انعطاف پذیر برای احراز هویت در سیستم های لینوکس است.  PAM از طریق ماژولlib/security/pam_listfile.so / به انعطاف پذیری زیاد در محدود کردن امتیازات حساب های خاص اجازه می دهد. ماژول بالا می تواند برای ارجاع به یک لیست از کاربران که مجاز به ورود از طریق برخی از خدمات هدف مانند ورود به سیستم، SSH و هر برنامه آگاه از PAM  نیستند، استفاده شود.


در این مورد، ما می خواهیم  دسترسی ریشه به یک سیستم را با محدود کردن دسترسی به ورود و سرویس های sshd غیرفعال کنیم. ابتدا فایل را برای سرویس هدف در دایرکتوری  /etc/pam.d/باز کرده و ویرایش کنید.



$  sudo vim /etc/pam.d/login

or

sudo vim /etc/pam.d/sshd

بعد، پیکربندی زیر را در هر دو فایل اضافه کنید.


auth    required       pam_listfile.so \

onerr=succeed  item=user  sense=deny  file=/etc/ssh/deniedusers


هرفایل را ذخیره کرده و ببندید.سپس فایل ساده / etc / ssh / deniedusers را ایجاد کنید که باید حاوی یک مورد در هر خط باشد. نام ریشه را در آن اضافه کنید، سپس آن را ذخیره کرده و آن را ببندید.


$  sudo vim /etc/ssh/deniedusers

همچنین مجوزهای مورد نیاز در این را تنظیم کنید.


$  sudo chmod 600 /etc/ssh/deniedusers


این روش تنها بر برنامه ها و سرویس هایی که PAM آگاه هستند، تاثیر می گذارد. شما می توانید دسترسی ریشه به سیستم را از طریق FTP و ایمیل مشتریان و غیره مسدود کنید. برای اطلاعات بیشتر، به صفحات مربوط بهman  مراجعه کنید.


$  man pam_securetty

 $ man sshd_config

 $ man pam


در این مقاله، ما چهار راه را برای غیر فعال کردن حساب ریشه (root) در لینوکس توضیح دادیم.امیدوارم مطالب این بخش ازلینوکس برای شما مفید باشد.



منبع : https://www.tecmint.com/disable-root-login-in-linux/


تهیه کننده : رضا لطیفی 951830260