Хоча це може бути приємно мати доступ до вашої системи з довільних локацій в Інтернеті, є автоматизовані системи атаки паролем, які зафіксуються на відкритому порту ssh і застосовують різні атаки акаунта і словникові атаки проти вашої системи. Це може бути сукупним для читання у вашому резюме нічного журналу і є марною трафіком вашої пропускної здатності.
Якщо у вас є веб-сервер у тій же системі, ви можете використовувати обгортки php та tcp, щоб обмежити вхідний трафік ssh до відомих систем, а також надати ключ задньої двері, щоб дозволити собі доступ з довільних систем в Інтернеті.
Ось як це зробити:
заборонити всі ssh-з'єднання в /etc/hosts.deny:
# /etc/hosts.deny fragment
sshd: all
Дозволити відомі системи через IP в /etc/hosts.allow, а також додати файл для тимчасового доступу:
# /etc/hosts.allow fragment
sshd: 10.0.10.2 # some system
sshd: 172.99.99.99 # some other system
sshd: /etc/hosts.allow.temporary-sshd-access
Створіть php-файл на своєму веб-сервері та дайте йому таке очевидне ім’я, як my-sshd-access.php:
<?php
function get_ip()
{
return getenv("REMOTE_ADDR");
}
?>
<?php
$out='/etc/hosts.allow.temporary-sshd-access';
$log='/var/log/sshd-access-addition-log';
print "Was:";
readfile($out);
print "<br>";
$ip=get_ip();
$fp=fopen($out,"w");
fputs($fp,$ip);
fclose($fp);
$lfp=fopen($log,"a");
fputs($lfp,$ip);
fputs($lfp,"n");
fclose($lfp);
print "Wrote: ";
readfile($out);
?>
Пробачте, PHP-код - я перемістив його з іншого місця, так що він, ймовірно, міг очистити цілу купу. Все, що потрібно зробити - це додати IP-адресу системи, що отримує доступ до неї, до файла /etc/hosts.allow.temporary-sshd-access, який зчитується sshd (завдяки включенню /etc/hosts.allow) під час підключення .
Тепер, коли ви перебуваєте в якійсь довільній системі в Інтернеті і хочете перейти на цю систему, спочатку скористайтеся веб-браузером і натисніть цей файл (або скористайтеся wget або equivilent):
$ wget http://your.system.name/my-sshd-access.php
Тепер ви маєте змогу ввійти до своєї системи. Якщо це десь, напевно, ви будете часто зникати, буде тривіально читати вміст файлу /etc/hosts.allow.temporary-sshd-access і постійно додавати IP-адресу до / etc / hosts. дозволяють.