首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用SSH和TMSH自动创建F5用户帐户

使用SSH和TMSH自动创建F5用户帐户
EN

Network Engineering用户
提问于 2018-05-15 02:49:01
回答 1查看 2.3K关注 0票数 3

我们有一些F5大IP设备,它们必须使用本地用户帐户。我们希望让用户通过和SSH密钥进行身份验证,然后可以使用这些密钥设置他们的帐户密码。我们如何通过SSH和交通管理壳牌(TMSH)来完成这一任务?

我们的设备正在使用以下版本:

代码语言:javascript
复制
username@(bigipwaf-vmss_0)(cfg-sync In Sync)(Active)(/Common)(tmos)# show sys version

Sys::Version
Main Package
  Product     BIG-IP
  Version     13.1.0.2
  Build       0.0.6
  Edition     Point Release 2
  Date        Tue Jan 16 08:46:28 PST 2018
EN

回答 1

Network Engineering用户

回答已采纳

发布于 2018-05-15 02:49:01

步骤1:启用要用于自动化的F5帐户上的SSH公钥身份验证

代码语言:javascript
复制
MY_KEY=$(cat ~/.ssh/id_rsa.pub)
WAF_IP=10.0.0.100
SSH_OPTIONS=' -p 50001 ' #Optional if you need to change the SSH port or other settings
#This will prompt for the admin password twice, after which the
ssh $SSH_OPTIONS admin@$WAF 'modify auth user admin shell bash'
ssh $SSH_OPTIONS admin@$WAF "echo '$MY_KEY' | sudo tee /home/admin/.ssh/authorized_keys"

步骤2:在设置了自动化帐户之后,可以使用以下方法创建新的本地F5帐户:

代码语言:javascript
复制
Users="user1 user2 user3"
declare -A sshkeys=()

sshkeys[user1]=$(cat /home/USERNAME/.ssh/id_rsa.pub) #Source from local home folder
sshkeys[user2]=$(curl -s https://github.com/torvalds.keys) #Source from public github
sshkeys[user3]=$(curl -sn "https://github-enterprise.private.com/api/v3/users/USERNAME/keys" | jq --raw-output '.[] | .key') #Setup ~/.netrc with a line like: machine github-enterprise.private.com login x-oauth-basic password INSERT_Personal_Access_Token_HERE

for SSHUser in $Users
    do
        echo -e "Adding WAF account for $SSHUser"
        ssh -p 50001 "admin@$WAF" "tmsh create auth user $SSHUser shell bash partition-access add { all-partitions { role admin } }"
        ssh -p 50001 "admin@$WAF" "sudo mkdir -p /home/$SSHUser/.ssh && echo '${sshkeys[$SSHUser]}' | sudo tee /home/$SSHUser/.ssh/authorized_keys"
        #Permissions don't seem to matter. all home files owned by root:webusers
    done
done

第三步:用户可以登录并为他们的帐户设置密码。

代码语言:javascript
复制
#Login using ssh key:
ssh user1@10.0.0.100 -p 50001
#change password on account:
passwd

然后,该密码将允许用户登录到门户网站。

票数 2
EN
页面原文内容由Network Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://networkengineering.stackexchange.com/questions/50521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档