bbrodriges: переводы
SSH. The secure shell: The Definitive Guide / SSH. Безопасная оболочка: Окончательное Руководство
→Suppose you are a system administrator who needs to run the same command on many computers.
You'd like to view the active processes for each user on four different computers—grape, lemon,
kiwi, and melon—on a local area network using the Unix command /usr/ucb/w. Traditionally, one
could use rsh, assuming that the rsh daemon, rshd, is configured properly on the remote
computers:
You'd like to view the active processes for each user on four different computers—grape, lemon,
kiwi, and melon—on a local area network using the Unix command /usr/ucb/w. Traditionally, one
could use rsh, assuming that the rsh daemon, rshd, is configured properly on the remote
computers:
0 Предположим, что вы - системный администратор, которому необходимо выполнить одну команду на нескольких компьютерах. Вы бы хотели просмотреть все активные процессы каждого пользователя на четырех разных компьютерах - grape, lemon, kiwi, и melon - в локальной сети используя команду UNIX /usr/ucb/w. В основном используется rsh, при условии, что rsh демон (rshd) на удаленных компьютерах настроен верно:
→The syntax is nearly identical, and the visible output is identical, but under the hood, the command
and its results are encrypted as they travel across the network, and strong authentication
techniques may be used when connecting to the remote machines.
and its results are encrypted as they travel across the network, and strong authentication
techniques may be used when connecting to the remote machines.
0 Синтаксис практически идентичен, как и выводимая информация, однако внутри команда и ее результаты надежно зашифрованы, и может быть использована мощная аутентификация для соединения с удаленной машиной.
→Although this method works, it's insecure. The results of /usr/ucb/w are transmitted as plaintext
across the network; if you consider this information sensitive, the risk might be unacceptable.
Worse, the rsh authentication mechanism is extremely insecure and easily subverted. Using the
ssh command instead, you have:
across the network; if you consider this information sensitive, the risk might be unacceptable.
Worse, the rsh authentication mechanism is extremely insecure and easily subverted. Using the
ssh command instead, you have:
0 Не смотря на то, что данный метод работает, он - небезопасен. Результат выполнения /usr/ucb/w передается в открытом виде по сети; если данная информация важна, то риск может быть неприемлем. Хуже того, механизм аутентификации rsh весьма небезопасен и легко обходятся. Используя взамен команду ssh мы получим следующее:
→#!/bin/sh
for machine in grape lemon kiwi melon
do
ssh $machine /usr/ucb/w #Note "ssh" instead of "rsh"
done
for machine in grape lemon kiwi melon
do
ssh $machine /usr/ucb/w #Note "ssh" instead of "rsh"
done
0 #!/bin/sh
for machine in grape lemon kiwi melon
do
ssh $machine /usr/ucb/w #Заметьте, что здесь используется "ssh" вместо "rsh".
done
for machine in grape lemon kiwi melon
do
ssh $machine /usr/ucb/w #Заметьте, что здесь используется "ssh" вместо "rsh".
done
0 #!/bin/sh
for machine in grape lemon kiwi melon
do
rsh $machine /usr/ucb/w
done
for machine in grape lemon kiwi melon
do
rsh $machine /usr/ucb/w
done
→Terminology: Networking
Local computer ( local host, local machine)
A computer on which you are logged in and, typically, running an SSH client.
Remote computer (remote host, remote machine)
A second computer you contact from your local computer. Typically, the
remote computer is running an SSH server and is contacted via an SSH client.
As a degenerate case, the local and remote computers can be the same machine.
Local user
A user logged into a local computer.
Remote user
A user logged into a remote computer.
Server
An SSH server program.
Server machine
A computer running an SSH server program. We will sometimes simply write
"server" for the server machine when the context makes clear (or irrelevant) the
distinction between the running SSH server program and its host machine.
Client
An SSH client program.
Client machine
A computer running an SSH client. As with the server terminology, we will
simply write "client" when the context makes the meaning clear.
~ or $HOME
A user's home directory on a Unix machine, particularly when used in a file
path such as ~/filename. Most shells recognize ~ as a user's home directory,
with the notable exception of Bourne shell. $HOME is recognized by all shells.
Local computer ( local host, local machine)
A computer on which you are logged in and, typically, running an SSH client.
Remote computer (remote host, remote machine)
A second computer you contact from your local computer. Typically, the
remote computer is running an SSH server and is contacted via an SSH client.
As a degenerate case, the local and remote computers can be the same machine.
Local user
A user logged into a local computer.
Remote user
A user logged into a remote computer.
Server
An SSH server program.
Server machine
A computer running an SSH server program. We will sometimes simply write
"server" for the server machine when the context makes clear (or irrelevant) the
distinction between the running SSH server program and its host machine.
Client
An SSH client program.
Client machine
A computer running an SSH client. As with the server terminology, we will
simply write "client" when the context makes the meaning clear.
~ or $HOME
A user's home directory on a Unix machine, particularly when used in a file
path such as ~/filename. Most shells recognize ~ as a user's home directory,
with the notable exception of Bourne shell. $HOME is recognized by all shells.
0 Терминология: Работа в сети
Локальный компьютер (локальный хост, локальная машина)
Компьютер в котором вы работаете и, в основном, запускаете SSH-клиент.
Удаленный компьютер(удаленный хост, удаленная машина)
Второй компьютер, с которым вы соединяетесь с локального. В основном на нем запущен SSH-сервер и связан посредством SSH-клиента. В некоторых случаях локальный и удаленный компьютеры могут быть одной и той же машиной.
Локальный пользователь
Пользователь, работающий с локальным компьютером.
Удаленный пользователь
Пользователь, работающий с удаленным компьютером.
Сервер
Серверная часть SSH программы.
Серверная машина
Компьютер, на котором запущен сервер SSH. Иногда мы будем сокращать его до "сервер", когда это будет ясно из контекста.
Клиент
Клиентская часть SSH программы.
Клиентская машина
Компьютер, на котором запущен SSH-клиент. Также как и серверной терминологией мы будем сокращать его до "клиент", когда контекст позволяет это.
~ или $HOME
Домашний каталог пользователя в системе UNIX, часто используйется в путях к файлам (~/filename). Большенство оболочек, за исключением Bourne shell, опознают ~ как домашний каталог пользователя. $HOMEопознается всеми оболочками.
Локальный компьютер (локальный хост, локальная машина)
Компьютер в котором вы работаете и, в основном, запускаете SSH-клиент.
Удаленный компьютер(удаленный хост, удаленная машина)
Второй компьютер, с которым вы соединяетесь с локального. В основном на нем запущен SSH-сервер и связан посредством SSH-клиента. В некоторых случаях локальный и удаленный компьютеры могут быть одной и той же машиной.
Локальный пользователь
Пользователь, работающий с локальным компьютером.
Удаленный пользователь
Пользователь, работающий с удаленным компьютером.
Сервер
Серверная часть SSH программы.
Серверная машина
Компьютер, на котором запущен сервер SSH. Иногда мы будем сокращать его до "сервер", когда это будет ясно из контекста.
Клиент
Клиентская часть SSH программы.
Клиентская машина
Компьютер, на котором запущен SSH-клиент. Также как и серверной терминологией мы будем сокращать его до "клиент", когда контекст позволяет это.
~ или $HOME
Домашний каталог пользователя в системе UNIX, часто используйется в путях к файлам (~/filename). Большенство оболочек, за исключением Bourne shell, опознают ~ как домашний каталог пользователя. $HOMEопознается всеми оболочками.
→The client authenticates you to the remote computer's SSH server using an encrypted connection,
meaning that your username and password are encrypted before they leave the local machine. The
SSH server then logs you in, and your entire login session is encrypted as it travels between client
and server. Because the encryption is transparent, you won't notice any differences between telnet
and the telnet-like SSH client.
meaning that your username and password are encrypted before they leave the local machine. The
SSH server then logs you in, and your entire login session is encrypted as it travels between client
and server. Because the encryption is transparent, you won't notice any differences between telnet
and the telnet-like SSH client.
0 Клиент аутентифицирует вас на SSH-сервере удаленного компьютера используя зашифрованное соединение, что означает, что ваши логин и пароль были зашифрованы до того, как они покинули локальный компьютер. Затем сервер SSH разрешает вам вход, и вся ваша сессия оказывается зашифрованой на пути между клиентом и сервером. Поскольку шифрование прозрачно, вы не почувствуете никакой разницы между telnet и telnet-подобным SSH-клиентом.
→SSH completely avoids these problems. Rather than running the insecure telnet program, you run
the SSH client program ssh. To log into an account with the username smith on the remote
computer host.example.com, use this command:
$ ssh -l smith host.example.com
the SSH client program ssh. To log into an account with the username smith on the remote
computer host.example.com, use this command:
$ ssh -l smith host.example.com
0 SSH полностью устраняет эти проблемы. Вместо того, чтобы использовать незащищенный telnet, используйте клиент SSH - ssh. Для входа в учетную запись на удаленном компьютере host.example.com с именем пользователя smith используйте данную команду:
$ ssh -l smith host.example.com
$ ssh -l smith host.example.com
→[3]
This is true of standard Telnet, but some implementations add security features.
This is true of standard Telnet, but some implementations add security features.
0 <sup>[3]</sup> Это верно для стандартного telnet, однако некоторые дополнения добавляют функции безопасности.
→Suppose you have accounts on several computers on the Internet. Typically, you connect from a
home PC to your ISP, and then use a telnet program to log into your accounts on other computers.
Unfortunately, telnet transmits your username and password in plaintext over the Internet, where a
malicious third party can intercept them.[3] Additionally, your entire telnet session is readable by a
network snooper.
home PC to your ISP, and then use a telnet program to log into your accounts on other computers.
Unfortunately, telnet transmits your username and password in plaintext over the Internet, where a
malicious third party can intercept them.[3] Additionally, your entire telnet session is readable by a
network snooper.
0 Предположим у вас есть учетные записи на нескольких компьютерах в Интернете. В основном вы поключаетесь с домашнего компьютера к вашему Интернет-провайдеру, а затем используете telnet для входа в вашу учетную запись на других компьютерах. К сожалению telnet передает ваши логин и пароль через Интернет в виде текста, где кто-либо может перехватить их.<sup>[3]</sup> Также, все ваше соединение по telnet легко читаемо сетевыми шпионами (network snooper).
→At this point, you have an ssh-agent program running on your local machine, holding your secret
keys in memory. You're now done. You have password-less access to all your remote accounts
that contain your public key files. Say goodbye to the tedium of retyping passwords! The setup
lasts until you log out from the local machine or terminate ssh-agent.
keys in memory. You're now done. You have password-less access to all your remote accounts
that contain your public key files. Say goodbye to the tedium of retyping passwords! The setup
lasts until you log out from the local machine or terminate ssh-agent.
0 В этом случае вы получаете запущеную программу ssh-agent, работающую на вашем локальном компьютере и содержащую в себе все ваши секретные ключи. Дело сделано. Теперь у вас есть беспарольный доступ ко всем вашим удаленным учетным записям, которые содержат публичные ключи. Скажите "Прощай!" утомительному вводу паролей! Данные настройки остаются в силе до тех пор, пока вы не выйдете из локального компьютера или пока вы не завершите ssh-agent.
→Using keys, together with a program called an authentication agent, SSH can authenticate you to
all your computer accounts securely without requiring you to memorize many passwords or enter
them repeatedly. It works like this:
1. In advance (and only once), place special files called public key files into your remote
computer accounts. These enable your SSH clients (ssh, scp) to access your remote
accounts.
2. On your local machine, invoke the ssh-agent program, which runs in the background.
3. Choose the key (or keys) you will need during your login session.
4. Load the keys into the agent with the ssh-add program. This requires knowledge of each
key's secret passphrase.
all your computer accounts securely without requiring you to memorize many passwords or enter
them repeatedly. It works like this:
1. In advance (and only once), place special files called public key files into your remote
computer accounts. These enable your SSH clients (ssh, scp) to access your remote
accounts.
2. On your local machine, invoke the ssh-agent program, which runs in the background.
3. Choose the key (or keys) you will need during your login session.
4. Load the keys into the agent with the ssh-add program. This requires knowledge of each
key's secret passphrase.
0 Используя ключи с программой, именуемой аутентификационным агентом, SSH может безопасно аутентифицировать вас во всех учетных записях на компьютерах без необходимости помнить множество паролей или их повторного ввода. Это работает примерно так:
1. Поочередно (и только один раз), поместите специальные файлы, называемые публичными ключами, во все ваши учетные записи. Затем запустите заши SSH-клиенты (ssh, scp) для того, чтобы иметь доступ к вашим удаленным учетным записям.
2. На вашем локальном компьютере запустите программу ssh-agent, которая будет запущена в фоне.
3. Выберите ключ (или ключи), которые понадобятся вам в течении вашего соединения.
4. Загрузите ключи в агента с помощью программы ssh-add. Для этого вам необходимо знать секретную фразу для каждого ключа.
1. Поочередно (и только один раз), поместите специальные файлы, называемые публичными ключами, во все ваши учетные записи. Затем запустите заши SSH-клиенты (ssh, scp) для того, чтобы иметь доступ к вашим удаленным учетным записям.
2. На вашем локальном компьютере запустите программу ssh-agent, которая будет запущена в фоне.
3. Выберите ключ (или ключи), которые понадобятся вам в течении вашего соединения.
4. Загрузите ключи в агента с помощью программы ssh-add. Для этого вам необходимо знать секретную фразу для каждого ключа.
→Suppose you have accounts on many computers on a network. For security reasons, you prefer
different passwords on all accounts; but remembering so many passwords is difficult. It's also a
security problem in itself. The more often you type a password, the more likely you'll mistakenly
type it in the wrong place. (Have you ever accidently typed your password instead of your
username, visible to the world? Ouch! And on many systems, such mistakes are recorded in a
system log file, revealing your password in plaintext.) Wouldn't it be great to identify yourself
only once and get secure access to all the accounts without continually typing passwords?
different passwords on all accounts; but remembering so many passwords is difficult. It's also a
security problem in itself. The more often you type a password, the more likely you'll mistakenly
type it in the wrong place. (Have you ever accidently typed your password instead of your
username, visible to the world? Ouch! And on many systems, such mistakes are recorded in a
system log file, revealing your password in plaintext.) Wouldn't it be great to identify yourself
only once and get secure access to all the accounts without continually typing passwords?
0 Предположим, что у вас есть учетные записи на множестве компьютеров в сети. Из соображений безопасности вы используете различные пароли для всех учетных запей, но запомнить такое количество паролей очень тяжело. В этом подходе также кроется проблема. Чем чаще вы вводите пароль, тем больше вероятность того, что вы напечаете его не туда. (Как часто вы нечаяно вводили пароль в строку логина, которая видна всем? Ой! А в большенстве систем такие ошибки записываются в системный журнал, открывая ваш пароль.) Насколько было бы замечательно идентифицировать себя лишь раз и получать защищенный доступ ко всем учетным записям без постоянного ввода паролей?
→SSH has various authentication mechanisms, and the most secure is based on keys rather than
passwords. Keys are discussed in great detail in Chapter 6, but for now we define a key as a small
blob of bits that uniquely identifies an SSH user. For security, a key is kept encrypted; it may be
used only after entering a secret passphrase to decrypt it.
passwords. Keys are discussed in great detail in Chapter 6, but for now we define a key as a small
blob of bits that uniquely identifies an SSH user. For security, a key is kept encrypted; it may be
used only after entering a secret passphrase to decrypt it.
0 У SSH есть несколько механизмов аутентификации, и самый безопасный основан на использовании ключей. Ключи подробнее рассматриваются в Главе 6, а сейчас мы рассмотрим ключ как небольшой набор битов, который однозначно определяет пользователя. Для обеспечения безопасности ключ содержится в зашифрованном виде, и может быть расшифрован только после ввода секретной фразы.
→SSH is a powerful, convenient approach to protecting communications on a computer network.
Through secure authentication and encryption technologies, SSH supports secure remote logins,
secure remote command execution, secure file transfers, access control, TCP/IP port forwarding,
and other important features.
Through secure authentication and encryption technologies, SSH supports secure remote logins,
secure remote command execution, secure file transfers, access control, TCP/IP port forwarding,
and other important features.
0 SSH - мощный и удобный подход к проблеме защиты соединений в компьютерных сетях. С помощью надежной аутентификации и технологий шифрования, SSH поддерживает удаленные входы в систему, безопасные удаленные выполнения команд, защищенную передачу файлов, переадресацию TCP/IP портов и другие важные возможности.
→Suppose you have accounts on two Internet computers, me@firstaccount.com and
metoo@secondaccount.com, and you want to transfer a file from the first to the second account.
The file contains trade secrets about your business, however, that must be kept from prying eyes.
A traditional file-transfer program, such as ftp, rcp, or even email, doesn't provide a secure
solution. A third party can intercept and read the packets as they travel over the network. To get
around this problem, you can encrypt the file on firstaccount.com with a program such as Pretty
Good Privacy (PGP), transfer it via traditional means, and decrypt the file on secondaccount.com,
but such a process is tedious and nontransparent to the user.
metoo@secondaccount.com, and you want to transfer a file from the first to the second account.
The file contains trade secrets about your business, however, that must be kept from prying eyes.
A traditional file-transfer program, such as ftp, rcp, or even email, doesn't provide a secure
solution. A third party can intercept and read the packets as they travel over the network. To get
around this problem, you can encrypt the file on firstaccount.com with a program such as Pretty
Good Privacy (PGP), transfer it via traditional means, and decrypt the file on secondaccount.com,
but such a process is tedious and nontransparent to the user.
0 Предположим, что вы имеете учетные записи на двух компьютерах, подключенных к Интернету: me@firstaccount.com и metoo@secondaccount.com, и вы хотите передать файл с первой записи на вторую. Файл содержит внутреннюю информацию о вашем бизнесе, и это должно быть скрыто от посторонних глаз. Традиционные программы для передачи файлов, такие как ftp, rcp или даже электронная почта, не предоставляют защиты. Посторонний человек может перехватить и прочитать пакеты, по пути их следования в сети. Чтобы избежать этой проблемы вы можете зашифровать файл на firstaccount.com, на пример с помощью программы Pretty Good Privacy (PGP), отправить его традиционным путем и расшифровать его на secondaccount.com, но данный путь утомителен и непрозрачен для пользователя.
→Using SSH, the file can be transferred securely between machines with a single secure copy
command. If the file were named myfile, the command executed on firstaccount.com might be:
$ scp myfile metoo@secondaccount.com:
command. If the file were named myfile, the command executed on firstaccount.com might be:
$ scp myfile metoo@secondaccount.com:
0 Используя SSH файл может быть безопасно передан между машинами с помощью одной единственной команды безопасного копирования. Предположим, что файл называется myfile, то команда, выполняемая на первой машине будет такова:
$ scp myfile metoo@secondaccount.com:
$ scp myfile metoo@secondaccount.com:
→When transmitted by scp, the file is automatically encrypted as it leaves firstaccount.com and
decrypted as it arrives on secondaccount.com.
decrypted as it arrives on secondaccount.com.
0 Будучи передаваемым с помощью команды scp файл автоматически шифруется и расшифровывается по достижении secondaccount.com
→Suppose you want to permit another person to use your computer account, but only for certain
purposes. For example, while you're out of town you'd like your secretary to read your email but
not to do anything else in your account. With SSH, you can give your secretary access to your
account without revealing or changing your password, and with only the ability to run the email
program. No system-administrator privileges are required to set up this restricted access. (This
topic is the focus of Chapter 8.)
purposes. For example, while you're out of town you'd like your secretary to read your email but
not to do anything else in your account. With SSH, you can give your secretary access to your
account without revealing or changing your password, and with only the ability to run the email
program. No system-administrator privileges are required to set up this restricted access. (This
topic is the focus of Chapter 8.)
0 Предположим вы хотите разрешить другому человеку использовать вашу учетную запись, но только для определенных целей. К примеру, во время вашей командировки вы бы хотели, чтобы ваш секретарь читал вашу почту, но не более того. С помощью SSH вы можете давать вашему секретарю доступ к вашей учетной записи без необходимости открытия или смены пароля, и только с возможностью открывать почтовое приложение. Для создания таких правил администраторские привилегии не обязательны. (Это - тема Главы 8.)
→SSH is popular and convenient, but we certainly don't claim it is the ultimate security solution for
all networks. Authentication, encryption, and network security originated long before SSH and
have been incorporated into many other systems. Let's survey a few representative systems.
all networks. Authentication, encryption, and network security originated long before SSH and
have been incorporated into many other systems. Let's survey a few representative systems.
0 SSH популярен и удобен, однако мы не утверждаем, что это несомненно наилучшее решение для всех сетей. Аутентификация, шифрование и сетевая безопасность возникли задолго до SSH и были включены во множество других систем. Давайте взглянем на некоторые типичные системы.
Резюме
- Пол:
- мужчина
- Родной язык:
- русский
- С нами:
-
с 15 декабря 2008 г.
(6516 дней)
Не является членом клуба. - Деятельность:
-
218 версий перевода
с общим рейтингом 0
4 комментария
Карма: 1 (оценок: 1)
