PDA

View Full Version : اتصال php به ssh



alireza.076
پنج شنبه 09 خرداد 1392, 12:00 عصر
سلام و خسته نباشید
میخواهم، از php به ssh n دسترسی پیدا کنم که هم ورودی و هم خروجی داشته باشه
امکانش هست راهنمایی بفرمایید؟
با تشکر

WOLF_MEHRDAD
پنج شنبه 09 خرداد 1392, 13:04 عصر
درود بر شما

برای اجرای کد های سیستم عامل باید دسترسی به root داشته باشید یا shell رو بتونید اجرا کنید

برای اجرا هم میتونید از توابع system و exec و ... استفاده کنید



http://php.net/manual/en/function.exec.php

موفق باشید

alireza.076
پنج شنبه 09 خرداد 1392, 14:05 عصر
درود بر شما

برای اجرای کد های سیستم عامل باید دسترسی به root داشته باشید یا shell رو بتونید اجرا کنید

برای اجرا هم میتونید از توابع system و exec و ... استفاده کنید



http://php.net/manual/en/function.exec.php

موفق باشید

چه جوری میتونم وصل بشم به ssh؟ که بخوام دستورات رو با تابع وارد کنم؟

engmmrj
پنج شنبه 09 خرداد 1392, 15:04 عصر
مثلا شما اگر کد زیر را run کنین در ویندوز کامپیوترتان ریستارت میشه :

shell_exec('shutdown/r');
در لینوکس هم با reboot
نتیجه : هر دستوری با قواعد ترمینال و CMD بنویسیم اجرا خواهد شد .

alireza.076
پنج شنبه 09 خرداد 1392, 15:21 عصر
مثلا شما اگر کد زیر را run کنین در ویندوز کامپیوترتان ریستارت میشه :

shell_exec('shutdown/r');
در لینوکس هم با reboot
نتیجه : هر دستوری با قواعد ترمینال و CMD بنویسیم اجرا خواهد شد .

سام با تشکر
اما منظورم این نیست
مثلا به کد زیر توجه کنید:

<?php
$test = ssh2_connect('169.254.178.4', 22);
ssh2_auth_password($test, 'root', 'ali1124A');
$raminfo = ssh2_exec($test, 'ls -al');
?>

این رو داخل یه فایل note با پسوند php ذخیره میکنم، وقتی که با کرورگر باز میکنم، هیچ اتفاقی نمیافته و صفحه سفید میاد
این رو لطفا راهنمایی کنید
(مشخصات لینوکس بر روی لوکال میباشد)

alireza.076
پنج شنبه 09 خرداد 1392, 18:15 عصر
شما الان اینجا چیزی رو echo نکردید...! فکر کنم متغیر raminfo بایستی چاپ بشه. و اینکه درنظر داشته باشید برای استفاده از توابع SSH 2 میبایست PECL ssh2 روی سرورتون نصب باشه.
-----------------------------
البته یک راه دیگه هم برای اتصال به SSH بصورت Remote وجود داره و اونم بوسیله Curl هست.

سیستم عامل سرور vmware هست که یه لینوکسه مستقله و نمیتوان چیزی نصب کرد
امکناش هست curl را ارائه دهید؟
با تشکر

alireza.076
پنج شنبه 09 خرداد 1392, 18:39 عصر
اگر سرور اختصاصی یا مجازی هست هیچ مشکلی ندارید و براحتی میتونید پکیج رو دانلود و نصب کنید.
----------------------------------
آپشن های Curl برای اتصال به SSH داریم ولی هنوز نفهمیدم چطور میشه Command ارسال کرد

بله سرور اختصاصی میباشد
اما ماژول هایی که برای مثلا ریبوت سرویس که آشنایی فکر میکنم داشته باشید قرار داده شده در بخش پشتیبانی سایت ها (whmcs) هیچ پکیجی نصب نمیشه بر روی سرور و php به صورت مستقیم به سرور متصل میشود
چند تا از این ماژول ها رو دارم اما باید دیکود بشه، اگر براتون مقدوره قرار بدم که ببینید؟

eshpilen
پنج شنبه 09 خرداد 1392, 21:42 عصر
تاجاییکه دیده بودم، کتابخانهء phpseclib هم امکاناتی برای کار با SSH داره.
برای پیدا کردنش در گوگل سرچ کنید.
منم بیش از این نمیدونم.

alireza.076
یک شنبه 12 خرداد 1392, 21:53 عصر
به روز سانی تاپیک

alireza.076
شنبه 18 خرداد 1392, 22:19 عصر
یعنی هیچ کس نمیتونه یه تابع بده که بشه به ssh وصل شد؟!!!