SSH 账户配置与转发功能详解
1. 基于公钥的账户配置
在 SSH 中,基于公钥的配置能让我们根据客户端的密钥、主机名或 IP 地址来允许或限制连接,还能对客户端在账户中可运行的程序进行限制,同时禁用一些不必要的 SSH 功能。
1.1 环境选项的应用
可以为每个关键用户打印自定义欢迎消息、设置合适的 shell 提示符,还能调用自定义初始化脚本。例如:
echo 'Hello Jane!' set prompt = jane> ' source ~/.janerc breaksw endsw这里通过环境选项,为特定用户提供了便捷的通信通道。
在更高级的应用中,以使用 CVS 版本控制系统的团队为例。假设团队因资金问题,将 CVS 仓库放在成员 Benjamin 的账户中,其他开发者通过 Benjamin 的账户进行代码提交。但这样会导致 CVS 日志中所有提交者都显示为“benjamin”。解决办法是在 Benjamin 的文件中,为每个开发者的密钥添加环境选项,设置不同的LOGNAME值:
# OpenSSH environment="LOGNAME=dan" ...key... environment="LOGNAME=richard" ...key... ... # Tectia Key dan.pub Options environment="LOGNAME=dan" Key richard.pub Options environment="LOGNAME=richard" ...<