| SYSTEMD-SSH-PROXY(1) | systemd-ssh-proxy | SYSTEMD-SSH-PROXY(1) |
نام (NAME)
systemd-ssh-proxy - پروکسی اتصال SSH به ماشینهای مجازی و کانتینرهای محلی
خلاصه دستور (SYNOPSIS)
Host unix/* unix%* vsock/* vsock%* vsock-mux/* vsock-mux%*
ProxyCommand /usr/lib/systemd/systemd-ssh-proxy %h %p
ProxyUseFdpass yes
/usr/lib/systemd/systemd-ssh-proxy [ADDRESS] [PORT]
توضیحات (DESCRIPTION)
systemd-ssh-proxy یک افزونه «پروکسی» کوچک برای ابزار ssh(1) است که امکان اتصال به سوکتهای AF_UNIX و AF_VSOCK را فراهم میکند. این ابزار رابط تعریفشده توسط گزینه پیکربندی ProxyCommand در ssh را پیادهسازی میکند. این ابزار قرار است با یک قطعهپیکربندی در ssh_config(5) مانند زیر استفاده شود:
Host unix/* unix%* vsock/* vsock%* vsock-mux/* vsock-mux%*
ProxyCommand /usr/lib/systemd/systemd-ssh-proxy %h %p
ProxyUseFdpass yes
CheckHostIP no
Host .host
ProxyCommand /usr/lib/systemd/systemd-ssh-proxy unix/run/ssh-unix-local/socket %p
ProxyUseFdpass yes
CheckHostIP no
یک قطعهپیکربندی مشابه این موارد بهطور پیشفرض در /etc/ssh/ssh_config.d/20-systemd-ssh-proxy.conf نصب میشود.
با اعمال این تنظیمات، اتصالات SSH به رشته میزبان "unix/" که پس از آن یک مسیر مطلق فایلسیستم AF_UNIX به یک سوکت آمده باشد، به سوکت مشخصشده هدایت خواهند شد؛ این سوکت باید از نوع SOCK_STREAM باشد. بهطور مشابه، اتصالات SSH به "vsock/" که پس از آن یک CID مربوط به AF_VSOCK آمده باشد، منجر به برقراری اتصال SSH به آن CID خواهد شد. "vsock-mux/" به همراه یک مسیر مطلق فایلسیستم AF_UNIX به یک سوکت نیز مشابه است اما برای cloud-hypervisor/firecracker کاربرد دارد که اجازه ارتباط مستقیم AF_VSOCK بین میزبان و مهمانها را نمیدهند و مالتیپلکسر اختصاصی خود را روی سوکتهای AF_UNIX فراهم میکنند. نگاه کنید به پشتیبانی VSOCK در cloud-hypervisor[1] و استفاده از دستگاه Virtio-vsock در Firecracker[2]. توجه داشته باشید که میتوان از "%" بهعنوان جداکننده بهجای "/" استفاده کرد تا با ابزارهایی مانند "scp" و "rsync" سازگار باشد.
علاوه بر این، اتصال به ".host" بدون درگیر کردن شبکه، از طریق SSH به میزبان محلی متصل میشود.
این ابزار قرار است همراه با systemd-ssh-generator(8) استفاده شود که هنگام اجرا در داخل یک ماشین مجازی (VM) یا کانتینر، SSH را به نشانیهای مناسب متصل (bind) میکند. systemd-ssh-generator باید در کانتینر یا مهمان VM اجرا شود و systemd-ssh-proxy روی میزبان اجرا میشود تا به کانتینر یا مهمان VM متصل شود.
کدهای خروج (EXIT STATUS)
در صورت موفقیت، 0 برگردانده میشود؛ در غیر این صورت یک کد خطای غیر صفر برگردانده خواهد شد.
مثالها (EXAMPLES)
مثال 1. ارتباط با یک ماشین مجازی محلی با CID 4711
ssh vsock/4711
مثال 2. ارتباط با یک ماشین مجازی مهمان میزبانیشده با cloud-hypervisor/firecracker
ssh vsock-mux/run/vm-1234.sock
مثال 3. ارتباط با میزبان محلی از طریق ssh
ssh .host
یا معادل آن:
ssh unix/run/ssh-unix-local/socket
مثال 4. کپی کردن فایل محلی 'foo' به یک ماشین مجازی محلی با CID 1348
scp foo vsock%1348:
همچنین ببینید (SEE ALSO)
systemd(1), systemd-ssh-generator(8), vsock(7), unix(7), ssh(1), sshd(8)
نکات (NOTES)
- 1.
- پشتیبانی VSOCK در cloud-hypervisor (cloud-hypervisor VSOCK support)
- 2.
- استفاده از دستگاه Virtio-vsock در Firecracker (Using the Firecracker Virtio-vsock Device)
| systemd 261.2 |