半醉残影 - linux
type: channel
link: https://mars.dengyb.com/tag/linux/
items: ubuntu下允许root用户ssh远程登录
items: 使用Python五分钟搭建100台服务器squid环境
items: pip 镜像源加速
items: gxx 4.9、5.2安装升级
items: SSH常用命令

ubuntu下允许root用户ssh远程登录
type: item
date: 2022-06-28T14:55:00+08:00
description: 允许root用户登录$ sudo vi /etc/ssh/sshd_config 找到PermitRootLogin 一行，改为PermitRootLogin yes，即允许root用户以任何认证方式登录 PermitRootLogin yes # 允许root用户以任何认证方式登录 PermitRootLogin without-password # 只允许root用public key认证方式登录 PermitRootLogin no #不允许root用户以任何认证方式登录设置root用户密码# 如果已有root密码 忽略此步 sudo passwd root重启ssh服务sudo service ssh restart

使用Python五分钟搭建100台服务器squid环境
type: item
date: 2021-06-03T21:56:00+08:00
description: 使用Python五分钟搭建100台服务器squid环境前言在日常工作中，我们要搭建linux环境，要么自己登陆服务器输入命令安装，要么使用docker安装。但这种方式对于有大量机器时候就显得力不从心了。所以，这篇文章要讲的就是以squid为例子使用python批量部署服务器环境。准备首先你要有台开机的服务器，为避免冲突，最好是新的vps没有安装任何服务。拥有root账户，因为很多服务的安装都需要管理员权限。正本squidsquid是一个linux代理服务软件，提供简单的代理服务，可以用在简单的代理场景，生产中常设置IP白名单限制滥用，也可以使用密码授权。建议开启Https防止裸奔。搭建今天出场的猪脚就是著名的 Paramiko，ssh是一个协议，OpenSSH是其中一个开源实现，paramiko是Python的一个库，实现了ssh v2 协议(底层使用cryptography)。有了Paramiko以后，我们就可以在Python代码中直接使用SSH协议对远程服务器执行操作，而不是通过ssh命令对远程服务器进行操作。paramiko 用户ssh连接threading 用户批量操作机器想必看到这里你已经懂了，就是利用多线程和paramiko批量操作服务器用到的库先导入import paramiko import random import string import threading import logging初始化日志，方便调试mlog = logging.getLogger("ssh") fmt = '%(asctime)s|%(levelname)s|%(filename)s:%(lineno)d|%(message)s' mlog.setLevel(logging.DEBUG) formatter = logging.Formatter(fmt) console = logging.StreamHandler() console.setLevel(logging.DEBUG) console.setFormatter(formatter) mlog.addHandler(console)下面来定义工作线程 class ParamikoThreading(threading.Thread): def __init__(self, hostname, port, username,password): threading.Thread.__init__(self) self.hostname = hostname self.port = port self.username = username self.password = password #创建一个ssh的客户端，用来连接服务器 self.ssh = paramiko.SSHClient() #创建一个ssh的白名单 know_host = paramiko.AutoAddPolicy() #加载创建的白名单 self.ssh.set_missing_host_key_policy(know_host) self.ssh.connect( hostname = hostname, port = port, username = username, password = password ) self.get_random_user()为了系统的安全性，我们随机密码，这里你也可以利用自己的方式随机密码，或固定设置 def get_random_user(self): # 生成用户名密码 a=string.ascii_letters+string.digits key=random.sample(a,6) self.proxy_user= "user" + "".join(key) self.proxy_user = self.proxy_user.lower() a=string.ascii_letters+string.digits key=random.sample(a,6) self.proxy_passwd= "pass" + "".join(key) self.proxy_passwd = self.proxy_passwd.lower() 安装 squid服务并设置开启自启，这里我已经把配置文件统一写好了，使用时候直接上传就好了，简化了部署的流程/mnt/sda/work/project/proxy_account/squid.conf简单来说，下面的代码就是把安装环境手动敲击的命令，使用程序连续输入 def config_env(self): #执行命令 cmds = ["yum -y install squid", "systemctl enable …

pip 镜像源加速
type: item
date: 2019-05-10T21:41:00+08:00
description: 前言在使用python包管理安装模块的时候有时候速度很慢，可以尝试使用第三方镜像源正文地址清华：https://pypi.tuna.tsinghua.edu.cn/simple阿里云：http://mirrors.aliyun.com/pypi/simple/[...]

gxx 4.9、5.2安装升级
type: item
date: 2018-10-30T16:35:29+08:00
description: 4.9：yum install centos-release-scl -yyum install devtoolset-3-toolchain -yscl enable devtoolset-3 bash5.2:yum install centos-release-scl -yyum install devtoolset-4-toolchain -yscl enable devtoolset-4 bash

SSH常用命令
type: item
date: 2018-08-28T10:00:00+08:00
description: SSH常用命令ssh免密码登录ssh免密码登录就是生成密匙对代替密码，在Host注册公私的情况下，只要client有私匙就可以免密码登录。1.生成密匙对$ ssh-keygen -t rsa一路回车就可以啦注册$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.123这里想用哪个账户免密码登录，最后就写哪个（username@host）[...]