• Теперь это норма для фриланса?

    syschel
    @syschel
    freelance/python/django/backend
    Начнём с того, что Вы видать сами не поняли. MVP это считайте прототип, а дословно "minimum viable product — минимально жизнеспособный продукт — простейший работающий прототип продукта". То есть тут не требуется высококлассный законченный продукт. Уже есть почти на любом языке фреймворки/программы, которые позволяют создать на своём языке приложение, а потом нажать "сгенерировать под андроит, иос и т.д.". Да, работать они будут хуже чем писалось бы на нативных языках, особенно с логикой. Но ведь тут просят MVP.

    Клиентов которые НЕ программисты, тоже полно. Они могут шапочно знать какие-то "страшные слова", но сами не являясь специалистами в НАШЕЙ сфере, не понимают что пишут. Так же наверно и на медицинском форуме, народ обсуждает "клиентов", которые "пьют слабительное вместе со снотворным, перепутав рецепты". Часто видел клиентов, которые просто по незнанию написали "бред". Либо задачу ставил HR, вообще далёкий от темы и тупо скопировавший "похожие" объявления.

    Ну а клиентов которые хотят всё и сразу, при том за копейки (второй фейсбук за 100 долларов! сам бы сделал, да времени нет, делов на пару вечером), полно. При том за мои ~15 лет фриланса/офиса, это было постоянно. Уже даже не обращаю внимания на них, как на рекламные баннеры взгляд перестал цепляться. По этому ваше "удивление" мне не понятно. Такое было всегда, везде и будет так же всегда и везде. Просто отсеивайте.
    Ответ написан
    2 комментария
  • Куда подевалось дисковое пространство в zfs?

    Jump
    @Jump Куратор тега Системное администрирование
    Системный администратор со стажем.
    Пробовали
    zfs list -t snapshot ?
    Ответ написан
    1 комментарий
  • Поможете выбрать ssd?

    Jump
    @Jump Куратор тега Твердотельные накопители
    Системный администратор со стажем.
    Для таких задач если честно без разницы - вы просто ее не заметите.
    Хотя Kingston SHFS37A/120G пошустрее будет.
    Ответ написан
    Комментировать
  • На сколько безопасно располагать 1000 виртуальных машин в одном сегменте сети и какие есть риски?

    @id2669099
    из минусов, наверное, это броадкаст...
    его будет заметно больше чем, к примеру, в 24 сетке
    Ответ написан
    Комментировать
  • Единый сервер доступа ssh, возможно ли?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    э... а чего ssh ключи не подходят?
    Ответ написан
    Комментировать
  • Дальнейшее развитие для новичка при отсутствии вакансий в городе?

    @Neonoviiwolf
    Flutter developer
    Ну вариант простой, думаю найдётся N количество ваших знакомых, которые за спасибо+печеньки через вас воплотят свои корыстные хотелки сайтов. Так же можно пройтись по салонам красоты, мелким мебельным магазинам и т.п. у многих нету странички в интернете - это надобно исправить, объясняете всё как есть "Не умею, но хочу найчится, вам "ничего" стоить не будет, передам бесплатно, если понравится - буду поддерживать ваш сайт о ценике договоримся.
    п.с. просто как-то меня попросили сделать простой сайтик знакомые, с нуля на джумле за неделю наковырял, даж денег дали и по сей день (уже много времени прошло) поддерживаю этот сайт, работы на 5 часов в год, платят 2-3к в год - халява+опыт
    Ответ написан
    Комментировать
  • Где под защитой можно хранить пароли?

    @Sing303
    Лучший вариант, менеджеры паролей с открытыми исходниками
    Windows: KeePass Password Safe (+ все мобильные платформы)
    Unix, OS X: KeePassX (+ все мобильные платформы)
    Теория
    Практика
    Дополнительные возможности
    Тонкая настройка для повышенной безопасности

    Использование криптоконтейнеров, генераций паролей по своему алгоритму для каждого сайта не надёжно и не удобно.
    Ответ написан
    Комментировать
  • Как связать LAN и WAN на микротике?

    @NikiN
    сисадмин
    В данной ситуации out-interface=eth-WAN должно быть
    Ответ написан
    6 комментариев
  • Как вы защищаете сервер от взлома?

    Используйте контенеры. Создавайте отдельный контейнер со всем софтом для каждого сайта отдельно. В корневой системе оставьте только базовый софт и фаервол. Прокиньте внутрь только 80/443 порты. Ну и ссх по ключу в корневой. Даже если вам таки взломают один из сайтов - проникнуть в соседний контейнер будет проблематично. Что бы не настраивать каждый контейнер ручками - используйте chef/ansible или что угодно на ваш вкус. И каждый новый сайт - новый контейнер со своими mysqld/php/nginx и всем остальным. Даже если случайно установите что-то не защищенное из софта - получить к нему доступ их вне проблематично.
    Создайте отдельный контейнер с nginx на который фаервол перенаправит 80/443 порты. А он уже проксирует запросы в нужные контейнеры. В нем же храните и SSL сертификаты и ключи. Что б их не угнали при взломе.
    И конечно ossec или аналоги + оповещения от него. Расскажут вам о вторжении в тужу минуту. Ставить в каждый контейнер.
    Ответ написан
    Комментировать
  • Что посоветуете использовать: strongswan или openvpn, etc?

    @EckS
    Мне кажется за двумя nat корректнее будет работать OpenVPN, хотя стоит попробовать
    L2TP, теоретически тоже протолкнётся. Внутри L2TP поднять ipsec.
    Ответ написан
    Комментировать
  • Как построить такую сеть?

    anthtml
    @anthtml
    Системный администратор программист радиолюбитель
    Мда, с такими делами, да еще и названием свитчей сплитерами, вы будете крайне долго добиваться цели без нормального админа или хотя бы интегратора.
    Пока вопросы только следующие:
    1. Полная конфигурация железа и примерного списка задач на сервер 1
    2. модели всего имеющегося сетевого оборудования (свитчи, точки)
    3. Нормальную (полную) карту сети, не в паинте, а в visio, с указанием названий сетевого оборудования и куда подключен КАЖДЫЙ (а не n,m) компьютер
    4. для чего необходимо поддерживать связь с чужой сетью если к друг другу никто не ходит
    5. расшифровка типа и назначения беспроводного соединения, возможность замены на проводное
    6. Бюджет на реализацию проекта
    7. Полная характеристика интернет канала: тип соединения, upstream, downstream, возможность резервации, перспективы перехода / улучшения
    Ответ написан
    Комментировать
  • Как правильно расположить IP адрес?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    /20 - не адрес, а сеть, имеющая 4096 потенциальных адресов (-2 для сети и броадкаста). Начнём выделять адреса для подсетей, предварительно отсортировав их по убыванию количества компьютеров. Подсети будем выбирать так, чтобы их размер был на 4 больше, чем количество компьютеров (адрес самой сети, броадкаст, адреса для свитча и роутера):
    183.118.32.0/20 = 183.118.32.0-183.118.47.255
    A | 425 | 512 | /23 | 183.118.32.0/23 = 183.118.32.0-183.118.33.255
    E | 353 | 512 | /23 | 183.118.34.0/23 = 183.118.34.0-183.118.35.255
    C | 341 | 512 | /23 | 183.118.36.0/23 = 183.118.36.0-183.118.37.255
    H | 308 | 512 | /23 | 183.118.38.0/23 = 183.118.38.0-183.118.39.255
    G | 253 | 512 | /23 | 183.118.40.0/23 = 183.118.40.0-183.118.41.255
    D |  95 | 128 | /25 | 183.118.42.0/25 = 183.118.42.0-183.118.42.127
    F |  86 | 128 | /25 | 183.118.42.128/25 = 183.118.42.128-183.118.42.255
    B |  32 |  64 | /26 | 183.118.43.0/26 = 183.118.43.0-183.118.43.63

    Для связи роутеров можно добавить ещё одну подсеть /28 или 8 подсетей /30. Роутеры со свитчами объединяются транками и отдельных адресов для связи между собой не требуют.
    Ответ написан
    1 комментарий
  • Как создать образ системы с нужным софтом?

    @Keyfors
    Я думаю лучше решение использовать - WDS
    Ответ написан
    Комментировать
  • Перемещаемые профили в Active Directory?

    @gimntut
    Про windows 7 ни чего не скажу, но для xp нужно обязательно вынести папки "моя музыка" и "моё видео" за пределы папки "мои документы". Это делается через групповые политики. Для служебных видео (всякие промо-ролики предприятия, съёмка производственного брака и т.п.) должна быть отдельная сетевая папка. Так же через групповые политики нужно создать папку для личных файлов пользователей. А ярлык этой папки вывести на рабочий стол и в мои документы.
    Если музыка и видео попадает в мои документы - уничтожать безжалостно. При таких условиях синхронизация происходит достаточно быстро. При синхронизации по сети передаются только те файлы, которые поменялись.
    И обязательный инструктаж. Сначала каждому(!) пользователю нужно показать как это работает на собственном примере. В присутствии пользователя нужно войти на два компьютера со своим логином, показать, что "мои документы" и "рабочий стол" синхронизируется, а папка на диске c:, программы, музыка и видео - нет. Объяснить, что всё, что есть на рабочем столе и в моих документах сохраняется в бэкапах организации на всегда, и что для личных файлов есть своя отдельная папка, и что любую музыку которую они оставят в моих документах они гарантированно потеряют. Ещё нужно объяснить, что если что-то случится с компьютером, то личные данные они потеряют, пусть хранят их дома.

    Алгоритм получается такой
    1. Вынести "тяжелые" системные папки за пределы пользовательского профиля и создать папку для личных данных.
    2. Провести инструктаж, дать 3 дня на то, чтобы разложили файлы по своим местам.
    3. Включить перемещаемый профиль
    Если пользователь "случайно забыл", то получит долгое включение и выключение компьютера и потеряет "любимые песни Игоря Николаева".

    Внедрение лучше выполнять по отделам.
    Ответ написан
    4 комментария
  • В чем отличие команд "sudo -i" и "sudo su -"?

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    sudo su - полностью выполняется логин от имени рута.
    sudo -i логин эмулируется.

    Внешне разница выглядит как то так:
    [martin@martin ~]$ sudo -i
    [root@martin ~]# id
    uid=0(root) gid=0(root) группы=0(root)
    [root@martin ~]# export
    declare -x DISPLAY="localhost:10.0"
    declare -x HISTCONTROL="ignoredups"
    declare -x HISTSIZE="1000"
    declare -x HOME="/root"
    declare -x HOSTNAME="martin.office.lds.ua"
    declare -x KDEDIRS="/usr"
    declare -x LANG="ru_UA.UTF-8"
    declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
    declare -x LOGNAME="root"
    declare -x LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd                                                                       =40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=3                                                                       0;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:                                                                       *.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=0                                                                       1;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;                                                                       31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01                                                                       ;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ea                                                                       r=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31                                                                       :*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01                                                                       ;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.ti                                                                       f=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;3                                                                       5:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.og                                                                       m=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:                                                                       *.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01                                                                       ;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=                                                                       01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.                                                                       au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;                                                                       36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf                                                                       =01;36:"
    declare -x MAIL="/var/spool/mail/root"
    declare -x OLDPWD
    declare -x PATH="/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin"
    declare -x PWD="/root"
    declare -x QTDIR="/usr/lib64/qt-3.3"
    declare -x QT_GRAPHICSSYSTEM_CHECKED="1"
    declare -x QT_PLUGIN_PATH="/usr/lib64/kde4/plugins:/usr/lib/kde4/plugins"
    declare -x SHELL="/bin/bash"
    declare -x SHLVL="1"
    declare -x SSH_ASKPASS="/usr/libexec/openssh/gnome-ssh-askpass"
    declare -x SUDO_COMMAND="/bin/bash"
    declare -x SUDO_GID="1000"
    declare -x SUDO_UID="1000"
    declare -x SUDO_USER="martin"
    declare -x TERM="linux"
    declare -x USER="root"
    declare -x USERNAME="root"
    [root@martin ~]# logout
    [martin@martin ~]$ sudo su -
    Последний вход в систему:Срд Окт 28 18:58:48 MSK 2015на pts/1
    Последняя неудачная попытка входа в систему:Пнд Ноя  2 08:51:38 MSK 2015с 211.99                                                                       .249.89на ssh:notty
    Число неудачных попыток со времени последнего входа: 30.
    [root@martin ~]# export
    declare -x HISTCONTROL="ignoredups"
    declare -x HISTSIZE="1000"
    declare -x HOME="/root"
    declare -x HOSTNAME="martin.office.lds.ua"
    declare -x KDEDIRS="/usr"
    declare -x LANG="ru_UA.UTF-8"
    declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
    declare -x LOGNAME="root"
    declare -x LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd                                                                       =40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=3                                                                       0;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:                                                                       *.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=0                                                                       1;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;                                                                       31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01                                                                       ;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ea                                                                       r=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31                                                                       :*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01                                                                       ;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.ti                                                                       f=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;3                                                                       5:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.og                                                                       m=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:                                                                       *.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01                                                                       ;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=                                                                       01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.                                                                       au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;                                                                       36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf                                                                       =01;36:"
    declare -x MAIL="/var/spool/mail/root"
    declare -x OLDPWD
    declare -x PATH="/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin                                                                       :/usr/sbin:/usr/bin:/root/bin"
    declare -x PWD="/root"
    declare -x QTDIR="/usr/lib64/qt-3.3"
    declare -x QTINC="/usr/lib64/qt-3.3/include"
    declare -x QTLIB="/usr/lib64/qt-3.3/lib"
    declare -x QT_GRAPHICSSYSTEM_CHECKED="1"
    declare -x QT_PLUGIN_PATH="/usr/lib64/kde4/plugins:/usr/lib/kde4/plugins"
    declare -x SHELL="/bin/bash"
    declare -x SHLVL="1"
    declare -x SSH_ASKPASS="/usr/libexec/openssh/gnome-ssh-askpass"
    declare -x TERM="linux"
    declare -x USER="root"
    declare -x XDG_SESSION_ID="13889"
    [root@martin ~]# id
    uid=0(root) gid=0(root) группы=0(root)
    [root@martin ~]#


    как видно - при sudo su - выполнились все файлы инициализации рута, система вывела информацию о предыдущих логинах, при sudo -i - нет
    ну и environment не совпадают...
    Ответ написан
    Комментировать
  • Как подключить маршрутизатор?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    если нет DSL порта - никакой переходник не поможет, нужет тот самый модем, в нем будет DSL порт и LAN порт(ы), вот в те порты и воткнете WAN
    Ответ написан
    Комментировать
  • Как указать подсетям какой из внешних ip они должны использовать?

    martin74ua
    @martin74ua Куратор тега Компьютерные сети
    Linux administrator
    прописать нат нужных сетей от нужного адреса
    Ответ написан
    3 комментария
  • Бывает ли такой девайс?

    chupasaurus
    @chupasaurus
    Сею рефлекторное, злое, временное
    Powershell скрипт.
    Как писать в центр уведомлений (пример скрипта в конце).
    Ответ написан
    Комментировать
  • Частые ошибки записи, где искать проблему?

    @apreobr
    Я посмотрел бы ещё в сторону контроллера и обвязки/шлейфа до винта.
    Соответственно, проверил бы викторией на этом компе и на любом другом, заведомо рабочем. Если на целевом компе будут ошибки, а на контрольном - нет, а мемтест на целевом ошибок не покажет - значит контроллер/обвязка/шлейф
    Ответ написан
    Комментировать
  • На какие параметры смотреть при выборе сервера?

    gbg
    @gbg Куратор тега Linux
    Любые ответы на любые вопросы
    Взять пару - тройку одинаковых серверов, поднять на них любое решение по миграции/виртуализации, внутри решения насоздавать столько виртуалок, сколько сервисов вам нужно.

    Например, в случае DRBD - OCFS2 - PACEMAKER - KVM вы застрахованы от вырубания и выноса из серверной любого из серверов - DRBD обеспечит живую репликацию всех его дисков, а Pacemaker перезапустит виртуалки на оставшихся серверах.
    Ответ написан
    2 комментария