我一直在尝试使用ssh密钥,以便能够通过使用在同一台Linux机器/服务器上从一个用户切换到另一个用户sudo su - username.
我想要做的是:我在一台服务器上有几个帐户.我想passwd -l username通过在同一台机器上从一个用户转到另一个用户来锁定这些帐户,并且只允许使用SSH密钥进行访问,例如: [user1@server]$ ssh user2@server
我这样做是通过将公钥复制user1到authorized_keys文件中user2而且工作正常.
但是,我想也是这样做的另一件事,是要能够sudo su - user2从user1通过使用SSH密钥,这样我就可以避开密码提示.
例如, [user1@server]$ sudo su - user2
我修改了sshd_config文件,并取消注释字段:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no
Run Code Online (Sandbox Code Playgroud)
但我仍然无法做到这一点.
我也试过我在互联网上发现的有关代理转发的内容,但没有.
谁能帮助我如何做到这一点或指向正确的方向?
我正在尝试使用postgresql数据库而不是Rancher数据库运行Rancher作为容器.在文档(http://docs.rancher.com/rancher/installing-rancher/installing-server/)中写道,您可以使用外部数据库,但它只提到了mysql.我想知道是否可以使用像postgresql这样的另一个外部数据库.因此,我尝试使用以下命令启动容器,将其指向与容器在同一主机上运行的postgresql数据库:
docker run -d --restart=always -p 8080:8080 -e CATTLE_DB_CATTLE_MYSQL_HOST=127.0.0.1 -e CATTLE_DB_CATTLE_MYSQL_PORT=5432 -e CATTLE_DB_CATTLE_MYSQL_NAME=db_name -e CATTLE_DB_CATTLE_USERNAME=db_user -e CATTLE_DB_CATTLE_PASSWORD=some_password rancher/server
Run Code Online (Sandbox Code Playgroud)
上面的结果是容器启动但没有使用我告诉它使用的postgresql数据库.它使用Rancher数据库代替.
尝试以下但仍然相同的结果:
docker run -d --restart=always -p 8080:8080 -e CATTLE_DB_CATTLE_HOST=127.0.0.1 -e CATTLE_DB_CATTLE_PORT=5432 -e CATTLE_DB_CATTLE_NAME=db_name -e CATTLE_DB_CATTLE_USERNAME=db_user -e CATTLE_DB_CATTLE_PASSWORD=some_password rancher/server
Run Code Online (Sandbox Code Playgroud)
我认为我传递的参数是错误的,或者Rancher仅支持mysql作为外部数据库.
有什么想法/建议吗?
谢谢,