Как загрузить части псевдонима bash только при входе через ssh

339
jrmo14

Как гласит заголовок, возможно ли иметь псевдоним, загружаемый только при доступе к машине через ssh, или, еще лучше, только через определенный компьютер ssh?

5

2 ответа на вопрос

7
Jakuje

В .bashrc(или где вы определяете псевдонимы) вы можете сделать его условным на основе переменной SSH_CONNECTION, которая устанавливается только для соединений ssh. Например:

if [[ $SSH_CONNECTION == *"your-IP"* ]]; then alias ll="ls -l" # your other aliases fi 
Есть ли способ проверить MAC-адрес, а не IP? Или это плохая практика? jrmo14 6 лет назад 0
Нет, это невозможно, пока вы не настроите клиентов так, чтобы они тоже отправляли MAC. Идентификация по Mac не является хорошей идеей., Jakuje 6 лет назад 1
0
Nagaraj Nookala

Насколько я понимаю ваш вопрос, когда вы используете ssh для Linux с пользователем, отличным от пользователя root, вошедший в систему пользователь должен иметь только ограниченный доступ к командам, и вы также хотите иметь псевдонимы для этих команд. Возможное решение

  1. Создайте ограниченную оболочку, скопировав файл bash в каталог / bin cp / bin / bash / bin / rbash
  2. Измените пользовательский bash на ограниченный bash useradd -s / bin / rbash, в случае существующего пользователя usermod -s / bin / rbash. После этого пользователь сможет получить доступ только к своему домашнему каталогу.
  3. Создайте каталог под / home // командами
  4. Теперь, чтобы ограничить доступ к командам, добавьте следующие строки в файл /home//.bash_profile PATH = $ HOME / команды export PATH
  5. Создайте программные ссылки на команды в / home // папке команд, которые вы хотите предоставить пользователю, например: ln -s / bin / date / home // команды /
  6. Войдя в систему, пользователь может изменить файл /home//.bash_profile, чтобы сделать его неизменяемым, чтобы пользователь не мог получить к нему доступ. chattr + i /home//.bash_profile
Извините, я не хотел ограничивать права пользователя на использование псевдонима. Цель состояла в том, чтобы tmux -CC стал псевдонимом tmux при входе через ssh. Спасибо за ответ, я не знал, что это возможно. jrmo14 6 лет назад 0

Похожие вопросы