Is it possible to give the permissions to a file based on from which machine (IP address) [the user is] logged in?
Нет, это невозможно. Традиционная структура доступа Linux использует DAC (Дискреционный контроль доступа )на основе пользователей и групп. На этом основаны даже списки ACL, которые допускают более детализированные -разрешения. Итак, (IIRC )являются PAM.
Теоретически вы могли бы найти политику SElinux, которая делает что-то похожее на то, что вы хотите, но это очень -плохое решение.
Похоже, используемый вами сервер плохо администрируется. Если у вас у всех одинаковая учетная запись, то нет отдельных людей, есть только один "пользователь". Вместо этого вы должны попросить системного администратора создать отдельные учетные записи Linux для вас и ваших коллег, а затем продолжить.
othPort=XXXX
shCommand="ssh -p $othPort"
cmdline=(rsync -e "$shCommand" etc etc)
"${cmdline[@]}"
othPort=XXXX
shCommand="ssh -p $othPort"
cmdline="rsync -e \"$shCommand\" etc etc"
eval "$cmdline"