ubuntu 加 ssh 多用户开发环境搭建

前言

记录使用 ubuntu + ssh 多用户开发环境搭建的过程

摘要

开发 wifi 的过程中需要用到 linux 的开发环境
首次使用 cygwin 和 wsl2 开发,发现编译速度很慢,影响开发效率
为了提高编译效率改用了使用虚拟机(vmware)+ubuntu 的开发环境,但是需要其他人协同开发的时候别人还要安装相同的一套环境不方便
后面就重新搞了台电脑安装 ubuntu 系统,使用 ssh 远程连接。这样开发环境只用装一次,有其他人要一起开发的时候再给他创建一个账号就可以了,注意不要轻易给新创建的用户管理员权限(管理员可以删除创建用户,获取 root 权限,增删改查所有文件的权限,防止新用户误操作)

必要工具

  • u 盘(我做完用了 4.68G,越大越保险)
  • ubuntu 系统 22.04.4
  • 支持 ssh 的工具,在你 windows 电脑使用(putty,等)

电脑安装 ubuntu 系统

大部分电脑是固态硬盘 + 机械硬盘,可以参考链接 来分区
注意: 我安装时屏幕太小下面显示不完全,可以用 tab 键选择,enter 键确认

搭建 SSH 环境

安装 ssh server

sudo apt install openssh-server

在这里插入图片描述
注意: 如果防火墙是打开的将 ssh 加入防火墙过滤名单

查看防火墙状态命令

sudo ufw status verbose

如果需要防火墙开启配置防火墙允许 ssh

sudo ufw allow ssh

配置连接 ssh

  • 打开配置文件

vim /etc/ssh/sshd_config

  • 我登录没遇到什么问题,这里仅仅介绍常遇到问题如何修改,记录一下
  1. root 用户无法登录
  2. port 端口冲突
    在这里插入图片描述
  • 重启 ssh

sudo systemctl restart ssh

  • 查询 ip 地址
    注意如果下面命令无法使用根据提示安装,我这里安装过了

ifconfig

在这里插入图片描述

  • windows 使用 putty 连接 ubuntu ssh server

在这里插入图片描述
在这里插入图片描述

  • windows 使用 vscode 连接 ubuntu ssh server
    因为使用 vscode 连接查看代码比较方便,这里介绍下使用 vscode 插件连接
  1. 安装插件
    在这里插入图片描述
  2. 连接
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

创建用户

我是在 ubuntu 上直接创建用户比较方便,注意这样的方法创建的用户的用户名和组名是一样的
注意: 下图仅仅是说明在哪里新建用户(在 ubuntu 系统截图不方便,用虚拟机截的图)
不要创建管理员
在这里插入图片描述
在这里插入图片描述

后面有需要再研究命令行创建[TODO]

非管理员用户无法使用 sudo 处理方法

创建这个用户后发现远程登录无法使用 sudo 操作,但是给了管理员权限后,这个用户可以进入 root 模式,对 ubuntu 的这台电脑有绝对的操作
在这里插入图片描述

注意: 下面的 test 都是用户名

  • 解决方法 1
    临时给 test 用户这个权限,此时 test 用户可以使用 sudo 操作
    注意注意注意:非必要不允许 test 用户是用 sudo su 进入 root (全靠自觉)

adduser test sudo


操作完成后关闭 test 用户权限
注意: 关闭这个权限后下次登录生效

sudo gpasswd -d test sudo
在这里插入图片描述

  • 解决方法2
    管理员帮忙处理 test 用户需要的 todo 操作

  • 解决方法 3
    欢迎各位道友给出更好的方法

每个用户独立创建 samba 共享文件夹

  • 如果需要防火墙安装 samba 后参考下面命令
/* 安装防火墙 */  
sudo apt install ufw	
/* 查看防火墙状态 */    
sudo ufw status verbose			
/* 开启防火墙 */  
sudo ufw enable  
/* 关闭防火墙 */    
sudo ufw disable 	
    
/* 防火墙允许 ssh/samba */    
sudo ufw allow ssh	    
sudo ufw allow samba

/* 删除防火墙规则 */    
sudo ufw status numbered	/* 显示规则编号 */
sudo ufw delete 1			/* 根据编号删除规则 */	
  • samba 操作
/* 安装 samba */
sudo apt-get install samba
/* 查看 samba 版本 */    
samba --version
/* 创建共享文件夹 username 是你的账户的用户名 */
sudo mkdir /home/username/share
/* 配置创建的共享目录为最高权限 */
sudo chmod 777 /home/username/share

/* 添加 samba 用户账号密码 注意:username 一定要是 ubuntu 存在的用户 后面会要求输入两次密码 */
sudo smbpasswd -a username

/* 修改 samba 服务器配置文件,注意自己先备份一份 */    
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup

sudo vim /etc/samba/smb.conf
    
/* 一般增加以下内容即可,注意 username 替换成你的用户名 
   多个用户复制粘贴一份修改下名称 [share]  path 和 username 即可 */
[share]
        Comment = share folder
        path = /home/username/share
        create mask = 0700
        directory mask = 0700
        valid users = username
        force user = username
        force group = username
        public = yes
        guest ok = yes
        read only = no
        browseable = yes
    
/* 重启 samba 服务器 */
sudo service smbd restart
   
/* 进入共享文件夹,注意要替换下面的 ip 地址 */
\\192.168.1.123\share

在这里插入图片描述
在这里插入图片描述

代码提交

用户登录会在自己的用户目录下生成 .ssh/ 不用担心影响别的用户

  • 生成 key 仅仅举例用

ssh-keygen -t ed25519 -C “”
ssh-keygen -t rsa -b 2048 -C “”

  • 将 ssh 密匙添加到自己的仓库(github/gitlab 等等)
  • 设置身份

git config --global user.email “you@example.com”
git config --global user.name “Your Name”

  • git 常用命令记录(后续慢慢完善)
/* 查看远程分支 */
git branch -a

/* 切换分支 */
git checkout 分支名

/* 在当前分支上创建新分支 */
git checkout -b 分支名

/* 删除本地分支 */
git branch -d 分支名

/* 删除远程分支 */
git push origin --delete 分支名

/* 查看提交记录 */
git log

/* 查看修改了什么 */
git status

/* 查看详细的改动点 */
git diff    

/* 选择要提交的文件名 */
git add 文件名

/* 提交 */    
git commit -m "改了什么巴拉巴拉"   

/* 上传到远程仓库 */
git push

其他

  • python3 软链接到 python
    无法下载 python 只能下载 python3 但是 python 命令无法使用

sudo ln -s /usr/bin/python3 /usr/bin/python

  • 新用户没有 .bashrc 文件
    /etc/skel 是 ubuntu 各种配置文件存放目录
    拷贝一个到本地目录

cp /etc/skel/.bashrc ~/

  • 25
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值